[minor] optimize docker pulls when action is executed#74
Merged
Conversation
c79bcf3 to
1657eb8
Compare
5dd11a6 to
db4b5cb
Compare
25d4404 to
03fc449
Compare
joemiller
commented
Oct 9, 2024
| push: | ||
| branches: | ||
| - "*" | ||
| - '**' |
Member
Author
There was a problem hiding this comment.
TIL - * will run on all branches not containing /, and ** will run on all branches
https://stackoverflow.com/a/57903434/886537
70bafd6 to
77fdcaf
Compare
787cebe to
14d24cd
Compare
14d24cd to
b2ce8ff
Compare
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
When a docker-based github-action is run in a workflow, github pulls the repo and then builds an image from the
Dockerfileevery time. In our case this involves downloading and installing some apk packages. We can pre-bake this image and save some bandwidth and time.releasejob out of theci.yamlworkflow and into a newrelease.yamlGHA workflow. Release runs only on main merges.Dockerfile.basecontains all of the apk dependencies. It creates the runtime imageDockerfile.baseand pushes toghcr.io/planetscale/ghcommit-action:v${new_version}. autotag is still used to calculate the $new_version.Dockerfileand commits back to the main branch.The runtime
Dockerfileis now a 1-liner referencingghcr.io/planetscale/ghcommit-action:v${new_version}'