Github Actions Firebase error "команда требует областей действия" - PullRequest
0 голосов
/ 14 апреля 2020

Я перевожу свой CI / CD на Github Actions и заметил, что мои предыдущие сценарии для развертывания Firebase не работают.

Когда я пытаюсь переключать проекты через firebase use staging --debug, он выдает ошибку:

[2020-04-14T12:51:59.154Z] > command requires scopes: 
["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]

Если я использую firebase use --debug, чтобы увидеть, какой проект активен, я получаю

Error: No active project

Эти скрипты работают без сбоев на CircleCI, поэтому я не понимаю, почему они ломаются на Github Actions. Они также отлично работают в моей местной среде.

Я пробовал разные версии узла и устанавливал инструменты firebase, однако все они приводят к одной и той же ошибке. Я сгенерировал новый токен, сгенерированный с помощью firebase login:ci.

Вот пример моего рабочего процесса Github Actions:

deploy_staging:
    name: Deploy to staging
    needs: eslint_test_build
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - uses: actions/setup-node@v1
        with:
          node-version: "10.x"
      ...
      - name: Deploy to Firebase
        run: |
          npm install -g firebase-tools
          firebase -V # this will work
          firebase use staging # this will fail
          firebase functions:config:set sentry.dsn=$DSN
          firebase deploy --only hosting:admin --token "$TOKEN" --non-interactive
        env:
          TOKEN: ${{ secrets.firebase_token }}

- обновление

Когда я просто использую развертывание, оно работает. Является ли команда deploy Firebase CLI единственной допустимой для Github Actions?

Это работает:

- name: Deploy to Firebase
  run: |
    npm install -g firebase-tools
    firebase deploy --only hosting:admin --project=staging --token "$TOKEN" --non-interactive
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...