Google Cloud Build 部署到 Firebase 托管时出现意外错误

Unexpected Error on Google Cloud Build Deploy to Firebase Hosting

我之前曾设法通过 google 云构建将小型项目部署到 firebase 托管。我当前的项目包含函数,但我的部署脚本是 --only:hosting

我知道这与这些帖子类似:stackoeverflow1 Whosebug2 and - 但我使用的是函数和 kms 而不是机密,并且我已经登录到 firebase ci 以获取我的令牌。到目前为止,我所看到的一切都不够清楚!

我正在使用 google kms 加密并且我的所有权限都已正确设置。正确的帐户具有 Firebase 管理员权限。触发器变量定义正确。

我的 .env 文件包含一个参数 FIREBASE_TOKEN 是我通过 firebase login:ci

得到的

这是我的 cloudbuild.yaml

steps:
    # Install
    - name: 'gcr.io/cloud-builders/npm'
      args: ['install']
    # Build
    - name: 'gcr.io/cloud-builders/npm'
      args: ['run', 'build']
    #Decrypt
    - name: 'gcr.io/cloud-builders/gcloud'
      args: ['kms', 'decrypt', '--ciphertext-file=.env.enc', '--plaintext-file=.env', '--location=global', '--keyring=$_KEY_RING', '--key=$_KEY']
    # Deploy
    - name: 'gcr.io/$_PROJECT_ENV/firebase'
      args: ['deploy', '--debug', '--token=$FIREBASE_TOKEN', '--only=hosting:$_DEPLOY_TO', '--project', '$_PROJECT_ENV']

它运行良好,直到最后,当它给出这些消息时:

Step #3: === Deploying to 'dev-xxxxx'...
Step #3: 
Step #3: i  deploying hosting 
Step #3: 
Step #3: ✔  Deploy complete! 
Step #3: 
Step #3: Project Console: https://console.firebase.google.com/project/dev-xxxxx/overview
Step #3: [2020-09-27T15:51:57.341Z] TypeError: Cannot read property 'deploys' of undefined
Step #3:     at /usr/local/lib/node_modules/firebase-tools/lib/deploy/index.js:85:36
Step #3:     at processTicksAndRejections (internal/process/task_queues.js:93:5)
Step #3: 
Step #3: Error: An unexpected error has occurred.

费尽心机试图找出可能的问题?没有得到任何权限错误和 firebase 图像是最新的并且构建良好?有什么建议吗?

对于没有在 firebase.json 文件中定义的 target 键和值的部署,以及具有不正确的 target 值的部署,可能会产生此错误消息。

根据 Firebase documentation:

In your firebase.json file, reference the associated target name when you're configuring the settings for each resource or group of resources.