-
-
Notifications
You must be signed in to change notification settings - Fork 658
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
chore: Optimize docker build oss #3951
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎ 2 Ignored Deployments
|
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 think the comments from Sonatype here make sense. We should probably join the three yarn runs here in a &&
pipeline. To avoid three temporary images.
platforms: linux/amd64,linux/arm64 | ||
push: true | ||
push: ${{ github.event_name != 'workflow_dispatch' }} |
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 enables us to run tests on this workflow without pushing the image
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.
Nice!
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.
LGTM. I like the opening for running it without pushing to dockerhub
About the changes
Reduce the build time of OSS docker image from ~30m to under 15m
frontend/build
to be copied to the image by removing this from.dockerignore
--ignore-scripts
to avoid building the frontend on theprepare
script, but this requires us to run all the prepare scripts manually (except the frontend build).Note: we need to build frontend in the
prepare
script to be able to have source code dependenciesManual Testing
Manually downloaded from https://hub.docker.com/r/unleashorg/unleash-server/tags?page=1 and compared both
unleash
folders from main and the version built with the new process https://github.com/Unleash/unleash/actions/runs/5223078089/jobs/9429430190#step:5:48No major difference was spotted (only expected changes due to development done in main)
Command used to extract the contents: