无法使用 github 操作将 React Web 应用程序部署到 Firebase 项目

Posted

技术标签:

【中文标题】无法使用 github 操作将 React Web 应用程序部署到 Firebase 项目【英文标题】:can not deploy react web app to firebase project using github action 【发布时间】:2020-01-30 12:51:51 【问题描述】:

当我尝试使用 GitHub 操作 部署 firebase 项目时出现错误

我的 ci.yaml 文件是:

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

jobs:
  build:
    name: 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: dist
          path: dist
  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: dist
      - name: Deploy to Firebase
        uses: w9jds/firebase-action@master
        with:
          args: deploy --only hosting:prod
        env:
          FIREBASE_TOKEN: $ secrets.FIREBASE_TOKEN 

我的项目基于 react web 应用程序,当我将 repo 推送到使用 GitHub 操作构建并将项目部署到 firebase 的 GitHub 时。

dist 是将生产代码部署到 firebase 的公共目录

【问题讨论】:

由于在使用w9jds/firebase-action 3rd 方操作时会发生错误,因此最好在该存储库中创建问题。动作作者也许可以帮助您。 github.com/w9jds/firebase-action 【参考方案1】:

我认为以下问题/答案可能是您的问题的解决方案。

How to add working directory to deployment in GitHub actions

您现在可以使用 PROJECT_PATH 设置 firebase.json 的路径。尝试将您的操作设置更改为以下内容。

      - name: Deploy to Firebase
        uses: w9jds/firebase-action@master
        with:
          args: deploy --only hosting:prod
        env:
          FIREBASE_TOKEN: $ secrets.FIREBASE_TOKEN 
          PROJECT_PATH: ./dist

【讨论】:

【参考方案2】:

我没有使用任何环境,例如用于这个 firebase 项目的分期和生产或其他别名。

更多信息Deploy to multiple environments with Firebase Hosting

所以只需要deploy --only hosting

- name: Deploy to Firebase
        uses: w9jds/firebase-action@master
        with:
          args: deploy --only hosting
        env:
          FIREBASE_TOKEN: $ secrets.FIREBASE_TOKEN 
          PROJECT_PATH: ./dist

【讨论】:

【参考方案3】:

更改所有要构建的dist 它适用于我的情况

【讨论】:

请详细说明

以上是关于无法使用 github 操作将 React Web 应用程序部署到 Firebase 项目的主要内容,如果未能解决你的问题,请参考以下文章

无法从 Github 发布 npm 包?

React Native教程 - 调用Web API

Github页面和React App不管使用什么方法都无法工作

react-native-web将RN项目转为web app

React Router v4:无法在 GitHub 页面上加载页面

react-native-video解决安卓无法全屏