Skip to content

yml

yml #27

Workflow file for this run

name: Deploy React App with GitHub Pages
on:
push:
branches: ["main"]
workflow_dispatch:
permissions:
contents: write
pages: write
id-token: write
concurrency:
group: "pages"
cancel-in-progress: false
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: '20'
- name: Install dependencies
run: npm install
- name: Build React app
run: npm run build:react
- name: Bundle the app with Webpack
run: npm run build:bundle
- name: List files in the build directory
run: ls -l ./build
- name: Upload artifact
uses: actions/upload-pages-artifact@v2
with:
name: github-pages
path: ./build
deploy:
needs: build
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Download artifact
uses: actions/download-artifact@v2
with:
name: github-pages
- name: List files after download
run: ls -l
- name: Deploy to GitHub Pages
uses: actions/deploy-pages@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}