mirror of
https://github.com/davegallant/davegallant.github.io.git
synced 2025-08-06 00:33:39 +00:00
88 lines
1.9 KiB
YAML
88 lines
1.9 KiB
YAML
name: Publish Hugo Site
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
paths-ignore:
|
|
- templates/**
|
|
|
|
workflow_run:
|
|
workflows: ["Update Projects Page"]
|
|
types:
|
|
- completed
|
|
|
|
jobs:
|
|
update_hugo_npm_dependencies:
|
|
name: Update Hugo npm Dependencies
|
|
runs-on: ubuntu-latest
|
|
permissions:
|
|
contents: write
|
|
outputs:
|
|
commit_hash: ${{ steps.commit_changes.outputs.commit_hash }}
|
|
steps:
|
|
- name: Checkout Repository
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Install Node
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: "18"
|
|
|
|
- name: Install Hugo
|
|
uses: peaceiris/actions-hugo@v2
|
|
with:
|
|
hugo-version: "0.111.3"
|
|
extended: true
|
|
|
|
- name: Write composite package.json
|
|
run: hugo mod npm pack
|
|
|
|
- name: Install npm Packages
|
|
run: npm install
|
|
|
|
- name: Display Changes
|
|
run: git status
|
|
|
|
- name: Commit Changes
|
|
id: commit_changes
|
|
uses: stefanzweifel/git-auto-commit-action@v5
|
|
with:
|
|
commit_message: Update Hugo npm Dependencies
|
|
|
|
publish:
|
|
name: Publish Hugo Site
|
|
needs: update_hugo_npm_dependencies
|
|
runs-on: ubuntu-latest
|
|
permissions:
|
|
contents: write
|
|
steps:
|
|
- name: Checkout Repository
|
|
uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
ref: ${{ needs.update_hugo_npm_dependencies.outputs.commit_hash }}
|
|
|
|
- name: Install Node
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: "18"
|
|
|
|
- name: Install Hugo
|
|
uses: peaceiris/actions-hugo@v2
|
|
with:
|
|
hugo-version: "0.111.3"
|
|
extended: true
|
|
|
|
- name: Install npm Packages
|
|
run: npm ci
|
|
|
|
- name: Build Hugo
|
|
run: hugo --minify
|
|
|
|
- name: Deploy to GitHub Pages
|
|
uses: peaceiris/actions-gh-pages@v3
|
|
with:
|
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
publish_dir: ./public
|