github actions firebase 没有项目活动,但项目别名可用

Posted

技术标签:

【中文标题】github actions firebase 没有项目活动,但项目别名可用【英文标题】:github actions firebase No project active, but project aliases are available 【发布时间】:2021-08-05 04:21:48 【问题描述】:

我创建了一个工作流来构建反应应用到生产环境。

name: Build and Deploy
on:
  push:
    branches:
      - main

jobs:
  build:
    name: Build
    env:
      REACT_APP_ENV: live build
    runs-on: ubuntu-latest
    steps:
      - name: Checkout Repo
        uses: actions/checkout@master
      - name: Install Dependencies
        run: npm install
      - name: Build
        run: npm run build
      - name: Archive Production Artifact
        uses: actions/upload-artifact@master
        with:
          name: build
          path: build
  deploy:
    name: Deploy
    needs: build
    runs-on: ubuntu-latest
    steps:
      - name: Checkout Repo
        uses: actions/checkout@master
      - name: Download Artifact
        uses: actions/download-artifact@master
        with:
          name: build
          path: build
      - name: Deploy to Firebase
        uses: w9jds/firebase-action@master
        with:
          args: deploy --only hosting:production
        env:
          FIREBASE_TOKEN: $ secrets.FIREBASE_TOKEN 

构建作业正在正确运行。但是对于部署,我得到了这个错误

错误:没有活动项目,但项目别名可用。

使用以下选项之一运行 firebase 使用:

我的.firebaserc 文件


  "projects": 
    "production": "gottamenu-admin",
    "development":"gotta-menu-ap"
  

我按照 Firebase 存储库中的说明进行 GitHub 操作

如果您有多个托管环境,您可以在 args 行中指定哪一个。例如args: deploy --only hosting:[环境名称]

这就是为什么我把args: deploy --only hosting:production

如何在 GitHub 操作中修复此错误?

【问题讨论】:

【参考方案1】:

如果您想在同一个 firebase-project 上部署不同的站点(目标),请使用 deploy --only hosting:production

你的.firebaserc 应该是这样的


  "projects": 
    "default": "gottamenu-admin"
  ,
  "targets": 
    "gottamenu-admin": 
      "hosting": 
        "production": [
          "gottamenu-admin",
        ],
        "development": [
          "gotta-menu-ap"
        ]
      
    
  

如果您想部署到不同的 firebase-projects 那么您的.firebaserc 文件是正确的,但是 你应该使用deploy -P productiondeploy --project production

【讨论】:

以上是关于github actions firebase 没有项目活动,但项目别名可用的主要内容,如果未能解决你的问题,请参考以下文章

使用 Github Actions 部署 Firebase Cloud 函数时的环境变量

github actions firebase 没有项目活动,但项目别名可用

未找到具有提供的路径的文件:build.不会上传任何工件。 - 将 React App 部署到 Firebase 的 Github Action

带有 Github Actions 的 env 文件

Github Actions - 如何使我的 env 变量(存储在 .env 文件中)在我的工作流程中可用

Firebase FCM通知click_action有效内容