Skip to content

Feature 39 setup build and publish image #44

Feature 39 setup build and publish image

Feature 39 setup build and publish image #44

name: Build and deploy frontend
on:
pull_request:
push:
branches:
- main
jobs:
# Build Job
build:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v3
- name: Install Node
uses: actions/setup-node@v3
with:
node-version: 20
- name: Install Dependencies
run: cd power-pay-frontend && npm ci
- name: Build Project
run: cd power-pay-frontend && npm run build-for-gh
- name: Upload artifact to enable deployment
uses: actions/upload-artifact@v4
with:
name: production-files
path: power-pay-frontend/dist
# Deploy Job
deploy:
permissions:
pages: write
contents: write
# Add a dependency to the build job
needs: build
# Specify runner + deployment step
runs-on: ubuntu-latest
steps:
- name: Download artifact
uses: actions/download-artifact@v4
with:
name: production-files
path: dist
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
if: github.ref == 'refs/heads/main'
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: dist