t: Prevent use of occupied port in all full-stack/scalability tests #3134
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.
Sporadically tests can fail with "Connection refused" when already
occupied ports have been selected for services in tests as we only
looked for a single free port and tried to use the ports next to it
without checking if they are actually free.
This commit is inspired from the idea in the scalability test extended
to all services and used in all relevant full-stack and scalability
tests. By mocking the function "service_port" from OpenQA::Utils
whenever the new function "mock_service_ports" is called we can provide
a consistent but dynamically defined set of ports that should all be
free to use during the course of each test.
Related progress issue: https://progress.opensuse.org/issues/59043