Ensure that nginx test waits properly to reduce flakiness #818
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.
Nginx container tests have been surprisingly flaky for a while, so I had a look into it.
It turns out that the
WaitStrategy
in the test has actually been skipping for some time with the warningNo exposed ports or mapped ports - cannot wait for status
.I found that the
getLivenessCheckPorts
method inNginxContainer
is implemented incorrectly - rather than producing a HashSet with the liveness check port number as a single member, it produces a HashSet of capacity equal to the port number. This is obviously silly 😂This change fixes that behaviour, and also switches
SimpleNginxTest
to use the non-deprecatedHttpWaitStrategy
class.