-
Notifications
You must be signed in to change notification settings - Fork 619
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Solve unordered container dependency problem #2615
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we add a test to cover this specific case?
(I could approve if you wanted to break such a test into a separate PR)
40e802d
to
441bb4d
Compare
Added integration test |
441bb4d
to
7daa534
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks good. Thanks for adding the test here.
Summary
This PR solves a problem of container ordering feature not working as expected when a container has multiple dependencies. This issue is mentioned in #2579 .
Implementation details
With unordered multiple dependencies - stuck as PENDING ❌
With logically ordered multiple dependencies - task STOPPED as expected ✅
This problem was happening because whenever a container was waiting on a dependency to resolve, instead of continuing to check for other dependencies, it would just return with error as dependency not resolved. This PR returns this error at the end of checking all dependencies. If we can fail faster, we will be able to do so after this fix.
Testing
Tested that the above mentioned tasks behaved as expected and both transitioned to STOPPED status
Description for the changelog
Bug: Fix the container ordering bug where the agent did not iterate through all the dependencies of a particular container
Licensing
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.