samvera/serverless-iiif

View on GitHub
.github/workflows/docs.yml

Summary

Maintainability
Test Coverage
name: Deploy docs to GitHub Pages
on:
  push:
    branches: ["main"]
  workflow_dispatch:
permissions:
  contents: write
  pages: write
  id-token: write
concurrency:
  group: "pages"
  cancel-in-progress: false
jobs:
  deploy-pages:
    runs-on: ubuntu-latest
    defaults:
      run:
        working-directory: ./docs
    steps:
      - name: Checkout
        uses: actions/checkout@v3
      - name: Setup Node
        uses: actions/setup-node@v3
        with:
          node-version: 20
          cache: npm
      - name: Setup Pages
        uses: actions/configure-pages@v3
        with:
          static_site_generator: next
      - name: Restore cache
        uses: actions/cache@v3
        with:
          path: |
            docs/.next/cache
          key: ${{ runner.os }}-nextjs-${{ hashFiles('docs/**/package-lock.json') }}-${{ hashFiles('docs/**.[jt]s', 'docs/**.[jt]sx') }}
          restore-keys: |
            ${{ runner.os }}-nextjs-${{ hashFiles('docs/**/package-lock.json') }}-
      - name: Install dependencies
        run: npm install
      - name: Build with Next.js
        run: npx --no-install next build
        env:
          NEXTJS_BASE_PATH: "/serverless-iiif"
      - name: Deploy to GitHub Pages
        uses: JamesIves/github-pages-deploy-action@v4
        with:
          clean-exclude: |
            .nojekyll
            pr-preview/
          folder: ./docs/out