-
Notifications
You must be signed in to change notification settings - Fork 91
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
Consider building with Cloud Build #103
Comments
Yeah, this would be great. Also related to #14 |
Seeing how slow builds are on Cloud Shell, I really wonder if they wouldn't be faster on Cloud Build |
I don't think we've benchmarked this, but I have a gut feeling like images that require more CPU and/or network bandwidth (to pull/push the img) will most likely perform better on Cloud Build. If someone does that, we can switch to Cloud Build, should be fairly easy. However, right now it's one fewer API we need to enable. |
There is a few factors to this to think about:
Now for some numbers for https://github.com/jamesward/kotlin-cloud-android with buildpacks: Non-Boosted Cloud Shell: Boosted Cloud Shell: Boosted Cloud Shell 2nd run: Local machine: Local machine 2nd run: |
@jamesward Great insights. Thanks for measuring. I'd say most of the users probably won't use |
Here is another one with a Cloud Build: Non-Boosted Cloud Shell: Boosted Cloud Shell: |
Thanks for testing again. Makes sense. It's a consistent n1-standard-1 VM that the build runs in after all.
Any other solution like asking Cloud Shell team to boost the shell for our image will likely result in longer loading times. |
Yeah, I'm kinda leaning towards trying to improve things with Cloud Shell, and work on #75 for helping the user setup Cloud Build as a CI/CD next step perhaps with Cloud Run's CI/CD stuff. I also realized that our Jib support is not easily portable to Cloud Build. I'll reach out to the Cloud Shell team to see what we can do. |
Today, we build locally in Cloud Shell and then push to GCR.
It is not clear if this is fastest than building remotely in Cloud Build, have you performed benchmarks?
It also seems that the push stage takes a lot of time in Cloud Shell, while it is likely faster in Cloud Build.
Maybe it's a good opportunity to implement both, collect metrics and A/B test.
Note that Cloud Build can be used for Docker builds, but also for buildpack based builds with a custom cloudbuild.yaml
The text was updated successfully, but these errors were encountered: