Repository navigation
Support Firebase SDK auto-initialization for Cloud Run services #11208
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
Merged
Merged
Changes from all commits
Commits
Show all changes
282 commits
Select commit
Hold shift + click to select a range
9fc0e9d
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 4ee2069
Use Object.prototype.hasOwnProperty.call when checking autoinitVars keys
falahat 26f92e5
Ensure runtime service account has roles/firebase.sdkAdminServiceAgen…
falahat beea973
Use ternary instead of numeric length in object spreads
falahat 46a8aea
Add defensive optional chaining in run.ts and runv2.ts
falahat 697a3f1
Merge branch 'bapi_gcp_and_shared' into bapi_experiment
falahat ed37ac2
Merge branch 'bapi_experiment' into bapi_init_run
falahat 601d6b9
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat bfb2b1b
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat 67c2c7c
Merge branch 'bapi_services_update' into bapi_local_builds
falahat da303af
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat 6fe8427
Remove unused Deployable predeploy/postdeploy from RunSingle
falahat 22aea66
Merge branch 'bapi_firebase_json' into bapi_gcp_and_shared
falahat 5632a25
Merge branch 'bapi_gcp_and_shared' into bapi_experiment
falahat efd2f58
Merge branch 'bapi_experiment' into bapi_init_run
falahat cc1ed57
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat 2c28eef
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat 79e1d02
Merge branch 'bapi_services_update' into bapi_local_builds
falahat c33e6e4
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat 7524ef3
Merge branch 'main' into bapi_firebase_json
falahat 5b2495f
Merge branch 'bapi_firebase_json' into bapi_gcp_and_shared
falahat 339f5f3
Merge branch 'bapi_gcp_and_shared' into bapi_experiment
falahat 699cf07
Merge branch 'bapi_experiment' into bapi_init_run
falahat 3ba264a
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat 1608f73
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat ea0afd4
Merge branch 'bapi_services_update' into bapi_local_builds
falahat a25fd1f
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat eaaffe1
Create a basic, initial schema for firebase.json
falahat 03f1e55
improve testing
falahat a729087
Require region, remove serviceAccount, and register run in Config.KNO…
falahat ee94ae4
Remove unused Deployable predeploy/postdeploy from RunSingle
falahat 5b7a7a6
Update shared GCP clients (runv2, run, artifactregistry)
falahat c0bbf78
Add direct_cloud_run experiment flag
falahat 466f1a5
Add defensive optional chaining in run.ts and runv2.ts
falahat e338677
Rename direct_cloud_run experiment to directcloudrun
falahat 789bf04
Add firebase init run interactive setup
falahat 4a26461
Use directcloudrun experiment and validate rootDir is a directory
falahat dcd5eaf
Trim baseImage input in init run
falahat 195aa47
Add firebase deploy --only run for remote Cloud Build source deploys
falahat 2fa39f7
Clean up temporary source archive, guard release URI, and use directc…
falahat 69ca644
Avoid empty template.annotations when deploy message is unset
falahat 1086ebe
Simplify template.annotations cleanup when deploy message is unset
falahat bc390c7
Add firebase run:services:update command
falahat 9a8b7ca
Validate service region and check all matching configs in updateService
falahat 113c80b
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 04723bf
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat 76388ef
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat 47e179b
Merge branch 'main' into bapi_gcp_and_shared
falahat 9702b99
Merge branch 'bapi_gcp_and_shared' into bapi_experiment
falahat bd8fa33
Merge branch 'bapi_experiment' into bapi_init_run
falahat 9491467
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat b0b3e6f
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 879df20
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat 95442b6
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat f0b1a7b
Rename masterTimeout option to pollTimeoutMs in runv2
falahat 682c0fd
Merge branch 'bapi_gcp_and_shared' into bapi_experiment
falahat 9079261
Merge branch 'bapi_experiment' into bapi_init_run
falahat 51e7568
Use pollTimeoutMs option when creating and updating Cloud Run services
falahat 506c7ab
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat 87edcae
Merge branch 'bapi_services_update' into bapi_local_builds
falahat e47a2d7
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat 6a3ec2d
Make updateMask fallback in updateService more readable
falahat 67f2201
Merge branch 'bapi_gcp_and_shared' into bapi_experiment
falahat 33ee8f8
Merge branch 'bapi_experiment' into bapi_init_run
falahat 6014ef9
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat c3abacd
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat 36a7b1d
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 1a31af6
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat fbbcb6f
Add comment explaining default updateMask calculation in updateService
falahat d184a26
Merge branch 'bapi_gcp_and_shared' into bapi_experiment
falahat 4d8e032
Merge branch 'bapi_experiment' into bapi_init_run
falahat da255cb
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat c1173dc
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat db9edb6
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 290bb10
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat 9c7fa98
Type Service.ingress as IngressTraffic union in runv2
falahat 2dede4d
Merge branch 'bapi_gcp_and_shared' into bapi_experiment
falahat 5a9f1f9
Merge branch 'bapi_experiment' into bapi_init_run
falahat eb2ba81
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat 0c5de81
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat f59829a
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 149ee84
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat dd2973e
Merge branch 'bapi_experiment' into bapi_init_run
falahat e83b309
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat 6a79374
Format updateMask call with Prettier and guard template literal in runv2
falahat b9938fd
Merge branch 'bapi_gcp_and_shared' into bapi_experiment
falahat 0b89918
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat 5ad1cbf
Merge branch 'bapi_services_update' into bapi_local_builds
falahat b6ae2f2
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat d3d1f3a
Fix Policy stub type in prepare.spec.ts
falahat a4430ad
Improve readability of firebase init run and remove mainContainer
falahat 26f8593
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat 6c8fe1b
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat 1b46515
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 8c86fe6
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat 2915dea
Remove sidecar container from deploy.spec.ts
falahat ba8bfb3
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat dcd78b8
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 18d7e3b
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat a621639
Use dirExistsSync from fsutils in init run promptRootDir
falahat 527c4a7
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat a31877e
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat e7f9781
Merge branch 'bapi_services_update' into bapi_local_builds
falahat e46f48d
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat 2736051
Make Cloud Run temp-file cleanup best-effort
falahat 8609bf1
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat c319224
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 1bf57bd
Make local build scratch dir cleanup best-effort
falahat 16e92c2
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat d122b9e
Fail clearly when SDK autoinit can't be set up, and simplify it
falahat 512f9f2
Always refresh FIREBASE_CONFIG from the linked app
falahat f5ba7ec
Always rebuild in run:services:update, even if nothing changes
falahat 17c4029
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 5922308
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat f0427c9
Always rebuild for --app and --clear-app too
falahat c3427e8
Don't default to a base image in init run
falahat bb72584
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat 2d44f6d
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat 6007416
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 4c2b0a4
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat b03b4c6
Merge remote-tracking branch 'upstream/main' into bapi_gcp_and_shared
falahat 2be84ca
Merge branch 'bapi_gcp_and_shared' into bapi_experiment
falahat c66847b
Merge branch 'bapi_experiment' into bapi_init_run
falahat 8a6685f
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat a606029
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat 11191df
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 40df479
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat 0dca8f4
Merge remote-tracking branch 'upstream/main' into bapi_gcp_and_shared
falahat e1dae66
Merge branch 'bapi_gcp_and_shared' into bapi_experiment
falahat 4ad29e0
Merge branch 'bapi_experiment' into bapi_init_run
falahat 1405979
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat 8298790
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat fb1a25f
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 15df5a6
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat 11f67e1
Add firebase init run interactive setup
falahat 2c9c06e
Use directcloudrun experiment and validate rootDir is a directory
falahat bd2ff06
Trim baseImage input in init run
falahat 51cca8b
Improve readability of firebase init run and remove mainContainer
falahat 1ca1eb3
Use dirExistsSync from fsutils in init run promptRootDir
falahat 84f2bba
Don't default to a base image in init run
falahat 74f23b7
Make upsertRunConfig easier to read
falahat 250a602
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat 19a3714
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat 625247c
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 740a142
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat ada86a4
Make upsertRunConfig easier to read
falahat 292331f
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat fdf61f9
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat 6d20249
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 18b92a7
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat 54e9f05
Don't add an ignore list to an existing service in init run
falahat 5167ae7
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat cb5ec4b
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat 9a9613f
Merge branch 'bapi_services_update' into bapi_local_builds
falahat e03ec89
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat 4a117cb
Default init run's root directory to the saved one, matching by servi…
falahat 249478b
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat 9ce5cf5
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat 58bbeff
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 5ee1358
Default init run's build location to the saved localBuild setting
falahat 13b7684
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat 136598a
Only deploy the service init set up, not same-ID services in other re…
falahat 40958c9
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat eeac006
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 8a4199a
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat c4a99e1
Write firebase.json once, from init, instead of also from init run's …
falahat 5794e91
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat ae700c3
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat 4501ba7
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 7a7a91a
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat ee2298f
Merge remote-tracking branch 'upstream/main' into bapi_init_run
falahat 4e07d95
Merge branch 'bapi_init_run' into bapi_deploy_run
falahat e4ed51b
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat fbd2a8f
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 8df8747
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat d46821e
Remove the Cloud Run deploy E2E suite
falahat bbdc425
Merge remote-tracking branch 'upstream/main' into bapi_deploy_run
falahat bfec6c1
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat 6bfd112
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 712c8e2
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat f2df542
Let --only run:<serviceId>:<region> pick one Cloud Run service
falahat 89c4216
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat 4037b81
Make run:services:update change exactly one service
falahat 5924af4
Merge branch 'bapi_services_update' into bapi_local_builds
falahat dd4d1cc
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat 83e319f
Make the Cloud Run deploy code and tests easier to read
falahat e9ddc33
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat 272a9e2
Merge branch 'bapi_services_update' into bapi_local_builds
falahat fc83bab
Merge branch 'bapi_local_builds' into bapi_sdk_autoinit
falahat 84494af
Make run:services:update easier to read
falahat ca5c791
Merge branch 'bapi_services_update' into bapi_local_builds
falahat ac7deb7
Move build env to its own PR
falahat 276b076
Make local builds easier to read
falahat fd2a3de
Keep localBuild's options on one line
falahat e39e372
Support build-time env vars and secrets for Cloud Run
falahat d575126
Merge branch 'bapi_build_env' into bapi_sdk_autoinit
falahat 6666aa1
Make the build env tests easier to read
falahat f9b0ab7
Make the local build tests easier to read
falahat 663a82a
Merge branch 'bapi_local_builds' into bapi_build_env
falahat 0a39c64
Make the SDK auto-init tests easier to read
falahat 4d1a888
Merge branch 'bapi_build_env' into bapi_sdk_autoinit
falahat 716c4fd
Address review comments on the Cloud Run deploy
falahat fb87b8f
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat 5f410b5
Merge branch 'bapi_services_update' into bapi_local_builds
falahat e83ea5c
Merge branch 'bapi_local_builds' into bapi_build_env
falahat 80dd07d
Merge branch 'bapi_build_env' into bapi_sdk_autoinit
falahat e00f403
Merge remote-tracking branch 'upstream/main' into bapi_deploy_run
falahat 5423457
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat 67bf761
Merge branch 'bapi_services_update' into bapi_local_builds
falahat b014a4f
Merge branch 'bapi_local_builds' into bapi_build_env
falahat f597da1
Merge branch 'bapi_build_env' into bapi_sdk_autoinit
falahat 1e3accb
Split run:services:update's service name into serviceId and region
falahat f0c99c0
Merge branch 'bapi_services_update' into bapi_local_builds
falahat 99519f9
Merge branch 'bapi_local_builds' into bapi_build_env
falahat 3433888
Merge branch 'bapi_build_env' into bapi_sdk_autoinit
falahat 675082b
Say which deploy step sets each ServiceDeploy field
falahat fe7831e
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat c379f76
Merge branch 'bapi_services_update' into bapi_local_builds
falahat f7b5a17
Split Cloud Run deploys into remote and local build paths
falahat a292c19
Merge branch 'bapi_local_builds' into bapi_build_env
falahat cca27d7
Merge branch 'bapi_build_env' into bapi_sdk_autoinit
falahat de55cf2
Merge branch 'bapi_local_builds' into bapi_build_env
falahat d14bf85
Merge branch 'bapi_build_env' into bapi_sdk_autoinit
falahat da44ccb
Let a local build's env vars replace the service's values
falahat cea325c
Use App Hosting's secret format for build secrets
falahat efdf790
Merge branch 'bapi_build_env' into bapi_sdk_autoinit
falahat 24171b5
Rename plainValues to nonSecretValues
falahat 8eeabfa
Merge branch 'bapi_build_env' into bapi_sdk_autoinit
falahat 6084c5c
Merge remote-tracking branch 'upstream/main' into bapi_deploy_run
falahat 8684afe
Merge branch 'bapi_deploy_run' into bapi_services_update
falahat 0b740f7
Merge branch 'bapi_services_update' into bapi_local_builds
falahat fa68a23
Merge branch 'bapi_local_builds' into bapi_build_env
falahat 6b149f3
Merge branch 'bapi_build_env' into bapi_sdk_autoinit
falahat c84fca1
Accept numbers and booleans in the build env annotation, like apphost…
falahat 3eaaf14
Merge branch 'bapi_build_env' into bapi_sdk_autoinit
falahat b4b4cb3
Check for secrets with isSecretRef instead of typeof string
falahat 1c96a48
Merge branch 'bapi_build_env' into bapi_sdk_autoinit
falahat 881e106
Merge remote-tracking branch 'upstream/main' into bapi_sdk_autoinit
falahat 67a028a
Make the FIREBASE_CONFIG and annotation logic in deploy easier to follow
falahat 8443369
Rename serviceAnnotations to serviceAnnotationsToDeploy
falahat d1257fa
Fail the deploy if the linked Firebase Web App doesn't exist
falahat 29234ba
Group the linked app's ID and config into ServiceDeploy.autoInit
falahat 0944242
init run: ask which web app to link, and create a new one only in act…
falahat cfd8c7c
Stop granting roles/firebase.sdkAdminServiceAgent; print the grant co…
falahat a2910d8
init run: fail instead of deploying unlinked when the web app can't b…
falahat 32b86e7
Add a TODO for handing runtime FIREBASE_CONFIG to Cloud Run
falahat f357f9d
Shorten the runtime FIREBASE_CONFIG TODO
falahat 59332d4
Reword the FIREBASE_CONFIG TODO to match the agreed behavior
falahat 880c458
Always use the linked app's config at build time too
falahat 859f133
Merge remote-tracking branch 'upstream/main' into bapi_sdk_autoinit
falahat File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
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
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
Oops, something went wrong.
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.