Skip to content

[DRAFT] Automated Preprod Deploy workflow #1412

[DRAFT] Automated Preprod Deploy workflow

[DRAFT] Automated Preprod Deploy workflow #1412

Workflow file for this run

name: "Bundlewatch Github Action"
on:
push:
# Required so that baseline for comparison is pushed to bundlewatch service.
branches:
- edge
paths:
- .github/workflows/bundlewatch.yml
- client-admin/**
- client-participation/**
- client-report/**
pull_request:
types: ["opened", "reopened", "synchronize"]
paths:
- .github/workflows/bundlewatch.yml
- client-admin/**
- client-participation/**
- client-report/**
jobs:
bundlewatch:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
# Client components all use this version
- name: Use Node version for app builds
uses: actions/setup-node@v4
with:
node-version: 18
- name: Get npm cache directory
id: npm-cache
run: |
echo "dir=$(npm config get cache)" >> $GITHUB_OUTPUT
- name: Restore npm cache directory
uses: actions/cache@v4
with:
path: ${{ steps.npm-cache.outputs.dir }}
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
- name: "Install & Build: client-admin"
working-directory: client-admin
run: |
npm install
npm run build:prod
- name: "Install & Build: client-participation"
working-directory: client-participation
run: |
npm install
npm run build:prod
- name: "Install & Build: client-report"
working-directory: client-report
run: |
npm install
npm run build:prod
- name: Install Bundlewatch
run: npm install -g [email protected]
- name: "Run Bundlewatch"
uses: jackyef/bundlewatch-gh-action@master
with:
bundlewatch-github-token: ${{ secrets.GITHUB_TOKEN }}
bundlewatch-config: .bundlewatch.config.js