There are many answers to this question already, but they no longer work here in January 2021. All those answers come in 3 flavors:
- Set local machine timeout with something like
gcloud config set app/cloud_build_timeout 1600then deploy withgcloud app deploy ... - Use a
cloudbuild.yamlfile instead withtimeout: 1600sbits in thegcloud app deploybuildstep and the global configuration, then deploy withgcloud builds submit ... - Per google's own docs, don't set
timeout: 1600sin the cloudbuild file, but rather do a mashup of the previous 2 flavors with a build step includingargs: ['-c', 'gcloud config set app/cloud_build_timeout 1600 && gcloud app deploy']
None of them have any impact on the app deploy build - it's stuck at 10mins. When using gcloud builds submit, it results in 2 Cloud Builds being kicked off: one for the cloudbuild.yaml, and one for the app engine deployment using buildpack. The above solutions can impact the first build, but once that first build kicks off the second build (gcloud app deploy, you can see at https://console.cloud.google.com/cloud-build in the Execution Details tab that the Timeout is still 10m.
IMO, solutions 2-3 are hacks since 1 doesn't work, but now that 2-3 don't work either, I'm looking for another hack. Does anyone have a solution which works in 2021? Since my app is using GAE Standard Environment, I can't prebuild an image - I'm stuck with Buildpack building my ruby app and pulling all the Gems every time, and this runs out the seemingly immutable 10m clock.