name: Build Site on: push: branches-ignore: - main pull_request: branches: - main jobs: build: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v4 with: submodules: recursive fetch-depth: 0 - name: Cache Hugo modules uses: actions/cache@v3 with: path: .hugo key: ${{ runner.os }}-hugo-${{ steps.hugo-version.outputs.version }}-${{ hashFiles('**/go.mod') }} restore-keys: | ${{ runner.os }}-hugo-${{ steps.hugo-version.outputs.version }} ${{ runner.os }}-hugo- - name: Setup Hugo uses: peaceiris/actions-hugo@v3 id: hugo-version with: hugo-version: 'latest' extended: true - name: Build Hugo site run: hugo --minify - name: Upload build artifacts uses: actions/upload-artifact@v4 with: name: hugo-build path: public/ retention-days: 7