-
Notifications
You must be signed in to change notification settings - Fork 28
Build docker images through CI #207
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
Merged
Merged
Changes from all commits
Commits
Show all changes
17 commits
Select commit
Hold shift + click to select a range
00dc610
define `ENTRYPOINT` in containers
antondlr 83b5c2f
attempt at mvp
antondlr 6ebc278
bump ubuntu version
antondlr ad2cbfb
strip it down
antondlr 382da8f
nit: JSON arguments for `ENTRYPOINT`
antondlr 445b5a6
modernise `apt` phrasing
antondlr b9d3950
bump rust for no reason
antondlr cbbd7e8
bump rust forreal now,
antondlr 300d879
fix?
antondlr a055123
try different multiarch approach
antondlr d681c03
exit the matrix
antondlr b254868
fixes
antondlr 512798d
multiarch take two
antondlr 33edec0
cleanup
antondlr f66eb9c
only build x86; fix building multiarch manifest
antondlr 0d317b2
cleanup branch triggers
antondlr 65c2f75
auto-build `interop1` branch
antondlr File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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.
Uh oh!
There was an error while loading. Please reload this page.
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.
I'm pretty sure
crossdoes this already -crossusesbuildxinternally.You can try pulling the manifest from any of the images from https://hub.docker.com/repository/docker/magick93/anchor.
So I'm not sure if
docker-multiarch-manifestis needed.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.
yeah it is, cross does indeed publish with a manifest but we want the regular (no arch defined) image tag to contain both architectures eventually.
in this stripped down, x86_only version we can skip it indeed and just add the tag. but this works for multiarch, just needs some commenting out.
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.
ah or do you mean you can push to the same tag and it will append instead of replace, if it's a different arch?
I'll play with it a bit, would be good to get rid of it.
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.
tested it out; it overwrites the tag altogether.
so for multiarch there are two valid approaches:
with: platforms: linux/arm64,linux/amd64). this slows everything down even more though as both will be built on the same runner instance.So yeah we can get rid of it, at a cost for actual multiarch builds.
I'm fine with both, do we aim for simplicity or speed?
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.
If "simplicity" means 3hr builds, i'd vote for speed, at least for now :)
Uh oh!
There was an error while loading. Please reload this page.
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.
@dknopik
If we consider purely from speed, for now, would the following be an improvement?
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.
@antondlr - It looks like I'm mistaken. The manifest is not implicitly appended. I've been experimenting on
eleelusingbakewhich is basically a wrapper aroundbuildxand depending on which iteration on the matrix finishes last is what is written (overwritten) in the manifest. So I think explicitly updating or appending the manifest would be the reliable way to go.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.
yeah this is exactly what I found in testing, too.
also no appropriate config in
docker/build-push-actionto amend instead of replace :/luckily it's a pretty fast task to execute!