GitHub Action for Hugo ✏️
This is a simple GitHub Action that contains Hugo, the popular static site generator. The extended version is now bundled by default. Unlike other actions, this action includes releases going back to v0.27 (September 2017) for any compatibility requirements.
This example simply uploads the ./public
directory (the built Hugo website) as an artifact. You can replace the last actions/upload-artifact
step with another action, like James Ives' GitHub Pages deploy action or my S3 sync action, to upload the built static site somewhere accessible.
Replace the master
in uses: jakejarvis/hugo-build-action@master
to specify the Hugo version, back to v0.27, like [email protected]
. This might be necessary if a recent version broke compatibility with your site. Otherwise, you'll get the latest version.
The with: args:
portion holds any optional flags. You can remove those two lines for a vanilla build.
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- uses: jakejarvis/hugo-build-action@master # ...or replace 'master' with a full version tag, such as: v0.64.1
with:
args: --minify --buildDrafts
- uses: actions/upload-artifact@master
with:
name: website
path: './public'
Just in case, the final container includes a few small third-party tools that are required by certain optional Hugo features:
Node (with NPM and Yarn) and Go (for Hugo Modules support) are also pre-installed.
This action is distributed under the MIT License. Hugo is distributed under the Apache License 2.0.