-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
test: allow testing frontends from different version #5594
base: master
Are you sure you want to change the base?
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.
Copilot reviewed 1 out of 6 changed files in this pull request and generated no comments.
Files not reviewed (5)
- docker-bake.hcl: Language not supported
- frontend/dockerfile/cmd/dockerfile-frontend/hack/release: Language not supported
- hack/images: Language not supported
- hack/test: Language not supported
- hack/util: Language not supported
ee0c989
to
1f94cab
Compare
if [ -n "$TEST_SUITE_CONTEXT" ]; then | ||
export TEST_BINARIES_CONTEXT=$currentcontext | ||
# FIXME: something breaks with the syntax when using the context | ||
export BUILDKIT_SYNTAX="docker/dockerfile:1.10.0" |
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.
this is fixed by #5596
This allows running Dockerfile tests so that the Dockerfile version and the BuildKit version are from different commits so that we can test that old Dockerfile releases remain compatible with the latest BuildKit. The tests are based on the commit of the Dockerfile frontend as we can't expect that new test would work on old frontends. In future we might consider doing it the other way as well but then we need a way to mark tests that can be ignored if they are not expected to pass because of a new feature dependency. Signed-off-by: Tonis Tiigi <[email protected]>
1f94cab
to
69034c3
Compare
I will look at this, we might need something similar to |
I think we should first get the version where we test the specific version of buildkit against release versions of Dockerfile running continuously. Then we can look at what the test results look like for different combinations. It isn't as easy as |
Initial summary for test matrix at https://github.com/moby/buildkit/actions/runs/12385930256 (against current master)
I think the failures are worth debugging but probably not extremely critical. We do need some solution for exceptions though and can't expect everything to be green. Maybe instead of managing patches it just makes sense to create extra branches for old releases where the test fixes can be applied and test these branches instead. Eg. there we can pin None of this should be a blocker to getting this PR in.
|
This allows running Dockerfile tests so that the Dockerfile version and the BuildKit version are from different commits so that we can test that old Dockerfile releases remain compatible with the latest BuildKit.
The tests are based on the commit of the Dockerfile frontend as we can't expect that new test would work on old frontends. In future we might consider doing it the other way as well but then we need a way to mark tests that can be ignored if they are not expected to pass because of a new feature dependency.
Example:
This doesn't update Github workflows to trigger tests like this yet. We wouldn't do this for PRs but in follow up we should set up a matrix that can be run manually or via cron. cc @crazy-max . Atm. I have not run through the full test suites yet for previous release versions, so not sure if we will find some issues.