Files
bridget/.github/workflows/build.yml
Spedon cd47ac8538 Update github action (#142)
* blind commit

* chore(build.yml): replace manual git commands with create-pull-request action to update bundled artifacts

The manual git commands for configuring user email and name, checking for changes, adding changes, committing changes, and pushing changes have been replaced with the create-pull-request action from peter-evans. This action creates a pull request with the title "Update bundled artifacts" and the commit message "Update bundled artifacts" on a branch named "update-artifacts" based on the main branch. This action is triggered when the push event occurs or when a pull request is merged and there are changes in the filter outputs. The action uses a personal access token (PAT) stored in the secrets of the repository.
2023-11-10 16:44:52 +08:00

89 lines
2.2 KiB
YAML

name: 'Build'
on:
push:
branches:
- main
pull_request:
branches:
- main
workflow_dispatch:
permissions:
contents: write
jobs:
filter:
runs-on: ubuntu-latest
name: Filter
outputs:
any_changed: ${{ steps.changed-files-specific.outputs.any_changed }}
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Get changed files in scope
id: changed-files-specific
uses: tj-actions/changed-files@v40
with:
files: |
package.json
assets/**
build:
timeout-minutes: 30
runs-on: ubuntu-latest
name: Build
needs: [filter]
if: |
github.ref == 'refs/heads/main' &&
github.event.repository.fork == false
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Hugo
uses: peaceiris/actions-hugo@v2
with:
hugo-version: '0.114.0'
extended: true
- name: Setup pnpm
uses: pnpm/action-setup@v2
with:
version: 8
- name: Get pnpm store directory
id: pnpm-cache
run: echo "STORE_PATH=$(pnpm store path)" >> $GITHUB_OUTPUT
- name: Setup pnpm cache
uses: actions/cache@v3
with:
path: ${{ steps.pnpm-cache.outputs.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: ${{ runner.os }}-pnpm-store-
- name: Setup hugo cache
uses: actions/cache@v3
with:
path: ./exampleSite/resources
key: ${{ runner.os }}-hugo-${{ hashFiles('./exampleSite') }}
restore-keys: ${{ runner.os }}-hugo-
- name: Install dependencies
run: pnpm install
- name: Build
run: pnpm run build
- name: Push artifacts
if: ${{ (github.event_name == 'push' || github.event.pull_request.merged == true) && needs.filter.outputs.any_changed == 'true' }}
uses: peter-evans/create-pull-request@v5
with:
token: ${{ secrets.PAT }}
title: Update bundled artifacts
commit-message: Update bundled artifacts
branch: update-artifacts
base: main