Skip to content
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

Update release.py to support arch-specific executor images #6299

Merged
merged 2 commits into from
Apr 5, 2024

Conversation

bduffany
Copy link
Member

@bduffany bduffany commented Apr 4, 2024

This PR adds support for (1) decoupling the docker image pushes from release.py, allowing the version tagging and docker image pushes to run in separate jobs (we need separate jobs because they will execute on different runner architectures), and (2) tagging the executor docker image with a suffix based on CPU arch. These changes are all behind flags, so it should not affect our release workflow until we are ready to add the arm64 executor image.

With this support, we can refactor the release.py job into a job graph like:

  • job1 just bump the version tag
  • job2 matrix=[arm64, amd64] update docker images, just the executor image if on arm64
  • job3 create a multi-platform docker manifest for the executor, which references the platform-specific images we pushed earlier. This can just be a few bash commands in a run script, like docker manifest create ..., docker manifest annotate ..., docker manifest push ....

Related issues: N/A

Copy link
Contributor

@iain-macdonald iain-macdonald left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, Approval

release.py Outdated Show resolved Hide resolved
release.py Outdated Show resolved Hide resolved
@bduffany bduffany merged commit bda6ac5 into master Apr 5, 2024
17 of 19 checks passed
@bduffany bduffany deleted the release-arm64-support branch April 5, 2024 17:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants