问题
I cannot find way how to deploy firebase project (functions) on behalf of service account.
Nothing is said both on documentation page and also I found nothing related in their bug tracker.
As described, I run firebase login:ci command but then I need to login myself - and I want login as service account.
Such feature is available using gcloud tool, but, as stated in docs,
Cloud Functions written using the Firebase SDK for Cloud Functions can't be deployed using the gcloud command-line tool, and vice-versa.
回答1:
firebaser here
To use the Firebase CLI/tools you need to be signed in as an actual user. There is no way to run the Firebase CLI as a service account.
It's been noted as a valid and interesting feature request though! Some work that might help towards this feature is being done in this PR. As usual: no commits on if/when/how this may land. Keep an eye on the release notes for the latest updates.
回答2:
You can actually use the refresh token of a Google account (service account or otherwise) that has access to Firebase roles, and set it to the FIREBASE_TOKEN environment variable.
For example I use Cloud Build (which has an associated service account that is already logged into gcloud) and then set FIREBASE_TOKEN to the output of
gcloud auth application-default print-access-token.
来源:https://stackoverflow.com/questions/45437286/firebase-tools-login-as-service-account