-
Notifications
You must be signed in to change notification settings - Fork 232
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
remove docker build in pre-merge [skip ci] #1877
Conversation
build |
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.
Looks good to me
Looks good to me, dev team please help to check
this could save around 10 - 15 mins for each run, but it will not do docker build even we have a change to the ubuntu Dockerfile (nightly test will help detect if any issue) what we can do to improve for this PR is that if the PR include Dockerfile change, then we enable the docker build.
But changes to dockerfile is not that frequent, so to add extra steps to check and cleanup maybe not worthy for the 10 - 15 mins time saving, we may just keep what we are doing right now (docker build for every run). Please kindly share your thoughts about this, thanks! |
IMO 10-15 minutes is a nice win on a build, and this win is for almost every premerge CI run. In terms of CI resource minutes saved per typical development day where there are many premerge CI runs, that's a sizeable savings overall. I'm not a Jenkins/Blossom expert, but it seems like we could solve the need-to-build-Docker-sometimes problem by parameterizing the core premerge CI job with the Docker tag to use and then running the premerge flow like this:
There's minimal additional complexity for the core premerge job where there's more churn than the Docker image contents. Thoughts? I'm totally fine if we want to hold off merging this change until the Dockerfile-modified logic is implemented so the premerge features remain intact and we don't temporarily lose the ability to check PRs that modify the Dockerfile. |
sounds OK. The reason we have complicated step for this is because its running on kubernetes, so we have to build the image in docker-in-docker container, and push the image to registry, then pull the image and start a new pod here for test running (we cannot just run the newly built image within the parent docker), at last we have to remove the temp image from registry to save space, but this is totally achievable. I will try to add the Dockerfile-modified logic for this one later. Thanks! |
Signed-off-by: Peixin Li <pxli@nyu.edu>
This reverts commit bbc9c5d.
bbc9c5d
to
6e1417c
Compare
build |
build |
build |
Please let me merge this one and do a following verify PR to double check later, thanks! |
* remove docker build in pre-merge Signed-off-by: Peixin Li <pxli@nyu.edu> * Revert "remove docker build in pre-merge" This reverts commit bbc9c5d. * add dockerfile-modified logic * make dockerfile location a var * use var in docker build
* remove docker build in pre-merge Signed-off-by: Peixin Li <pxli@nyu.edu> * Revert "remove docker build in pre-merge" This reverts commit bbc9c5d. * add dockerfile-modified logic * make dockerfile location a var * use var in docker build
Signed-off-by: Peixin Li pxli@nyu.edu
Move image build work to an independent image manage service, save some time for each build.
Tested in my forked repo. I will submit a verify PR against our repo after this one get merged.