J'essaie de déployer mon projet sur Firebase Hosting en utilisant l'action suivante :
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
deploy_to_firebase_hosting:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@master
- name: Install Dependencies
run: npm install
- name: Build for production
run: npm run build-prod
- name: Deploy to Firebase
uses: w9jds/firebase-action@master
with:
args: deploy --only hosting
env:
FIREBASE_TOKEN: ${{ secrets.FIREBASE_TOKEN }}
Les actions échouent dans les cas suivants Construire pour la production pas. Mon build-prod
script fait webpack -p --mode production
.
Il s'agit du message d'erreur correspondant à cet échec :
> project-name@1.0.0 build-prod /home/runner/work/project-name/project-name
> webpack -p --mode production
/home/runner/work/project-name/project-name/node_modules/webpack-cli/bin/cli.js:93
throw err;
^
TypeError: Cannot convert undefined or null to object
at Function.keys (<anonymous>)
...
J'ai fait des recherches sur cette erreur et j'ai découvert que les gens la résolvent en supprimant les éléments suivants node_modules
avant de lancer la construction. J'ai donc lancé une autre action, sans l'option npm install
partie.
Il échoue à nouveau le Construire pour la production mais avec une erreur différente et beaucoup plus raisonnable :
> webpack -p --mode production
webpack not installed
Install webpack to start bundling:
$ npm install --save-dev webpack
npm ERR! code ELIFECYCLE
npm ERR! errno 1
Quelle est la bonne façon de construire un bundle de production dans Github Actions ?
Gracias.