Files
mushroom-strategy/.github/workflows/webpack.yml
T
2025-05-13 22:16:07 +02:00

60 lines
1.6 KiB
YAML

name: Build distribution with Webpack
on:
push:
branches: [ "main" ]
# Ignore changes in folders that are affected by the auto commit. (Node.js project)
paths-ignore:
- 'dist/**'
# pull_request:
# branches: [ "main" ]
jobs:
build:
name: Build Distribution
runs-on: ubuntu-latest
env:
CI_COMMIT_MESSAGE: Continuous Integration - Build Distribution
CI_COMMIT_AUTHOR: Continuous Integration
strategy:
matrix:
node-version: [ 18.x ]
# Checkout Repository
steps:
- name: Checkout Repository
uses: actions/checkout@v3
with:
token: ${{ secrets.WORKFLOW_GIT_ACCESS_TOKEN }}
# Build steps
- name: Setup Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Node Install
run: npm ci
- name: Build Distribution
run: |
npm run build
- name: Check for file changes
id: checkDiff
run: |
git diff --quiet . || echo "changed=true" >> $GITHUB_OUTPUT
# Commit and push all changed files.
# Must only affect files that are listed in "paths-ignore".
- name: Commit Distribution Build
# Only run on a main branch push (e.g., pull request merge).
if: github.event_name == 'push' && steps.checkDiff.outputs.changed == 'true'
run: |
git config --global user.name "${{ env.CI_COMMIT_AUTHOR }}"
git config --global user.email "ci_activity@noreply.github.com"
git add dist
git commit -m "${{ env.CI_COMMIT_MESSAGE }}"
git push