End to End Integ Test
webern opened this issue · comments
Create an end-to-end integ test that, with minimal human intervention. General requirements:
- Use a pre-existing ECS cluster.
- Detect pre-existing instances in the cluster and abort with error informing the user that the cluster should be empty.
- Create multiple nodes taking a Bottlerocket AMI (version < latest), or getting it from SSM.
- Create a workload service and run it on the nodes.
- Assert health of the workload throughout test?
- Containerize and deploy the local changeset version of bottlerocket-update-operator to an ECR repo.
- Run the updater in a Fargate task.
- Assert the nodes do update.
- Cleanup.
In PR-68 and PR-69 we added Cloudformation stacks to create an ECS cluster and added script that allows us to create an ECS cluster, start updater on it and clean-up the resources. For now we are relying on manual validation of logs and Bottlerocket OS version. An issue #76 is created to track automated integration tests.