[英]Login to firebase using gcloud service account
我已將功能部署到 gcloud 功能,我想配置 CI/CD 以從 gitlab 部署此功能。 要從 gitlab 執行任何操作,我需要獲取 firebase 身份驗證令牌
firebase login:ci
命令。
問題是我需要使用 gcloud 服務帳戶獲取此令牌,該帳戶在我運行時未顯示在瀏覽器中
firebase login:ci
我有這個服務帳戶數據( project_id
、 private_key
、 private_key_id
等)
我應該如何授權使用這個acc?
如果您將名為GOOGLE_APPLICATION_CREDENTIALS
的環境變量設置為指向您的服務帳戶 JSON 文件的路徑,Firebase CLI 將自動選擇並使用它來授權命令。 在這種情況下,您無需登錄或提供--token
參數。
如果有人發現了這一點並且想知道如何在 CircleCI 上做到這一點,這對我有用。
GSA_KEY
echo echo $GSA_KEY > "$HOME"/gcloud.json
firebase deploy
命令,首先將路徑設置為GOOGLE_APPLICATION_CREDENTIALS
部署運行如下所示:
steps:
- checkout
- run:
name: Create SA key JSON
command: echo $GSA_KEY > "$HOME"/gcloud.json
- run:
name: Deploy to Firebase
command:
GOOGLE_APPLICATION_CREDENTIALS="$HOME"/gcloud.json firebase deploy [project specific stuff]
使用命令:
gcloud auth activate-service-account xyz@project-id.iam.gserviceaccount.com --key-file=/path/to/file.json --project=project-id
export GOOGLE_APPLICATION_CREDENTIALS="/path/to/file.json"
在 Bash
按順序運行以下命令1和2
"/path/to/file.json" -- 保存服務帳戶 json 文件的文件位置。
部署時不要忘記使用正確的項目,例如 firebase 使用 dev 或 firebase 使用 qa
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.