Fix flakey TestManifestPulledDoesNotDependOnContainerOrdering integration test #4303
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Fix flakey
TestManifestPulledDoesNotDependOnContainerOrdering
integration test.The test runs a task with two containers and asserts that the first container is in the
RUNNING
state. Occasionally, the first container exits and enters theSTOPPED
state before the assertion is made, so the test fails.amazon-ecs-agent/agent/engine/engine_integ_test.go
Lines 622 to 623 in 6e5e459
The container appears to run for 60 seconds, but it actually dies almost immediately after starting because it's using our
netkitten
image, which does not acceptsh -c "sleep 60"
as its command.Reproducing this locally yields
Implementation details
Change the container command to
-loop=true
, which will keep the container running indefinitely until it's told to stop.amazon-ecs-agent/agent/engine/common_unix_integ_testutil.go
Lines 35 to 39 in 6e5e459
Testing
Ran the flakey test 50 times and it completed successfully.
New tests cover the changes: no
Licensing
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.