Skip to main content

Git-Ape: Docs Deploy

Workflow file: .github/workflows/git-ape-docs.yml

Triggers​

  • push — branches: ["main"] — paths: .github/agents/**, .github/skills/**, .github/workflows/**...

Permissions​

  • contents: read
  • pages: write
  • id-token: write

Jobs​

build​

PropertyValue
Display Namebuild
Runs Onubuntu-latest
Steps7

deploy​

PropertyValue
Display Namedeploy
Runs Onubuntu-latest
Environmentgithub-pages
Depends Onbuild
Steps1

Source​

Click to view full workflow YAML
name: "Git-Ape: Docs Deploy"

on:
push:
branches: [main]
paths:
- '.github/agents/**'
- '.github/skills/**'
- '.github/workflows/**'
- '.github/plugin/**'
- 'docs/**'
- 'plugin.json'
- 'website/**'
- 'scripts/generate-docs.js'

permissions:
contents: read
pages: write
id-token: write

concurrency:
group: pages
cancel-in-progress: false

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1

- name: Setup Node.js
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: '24'
cache: 'npm'
cache-dependency-path: website/package-lock.json

- name: Install dependencies
working-directory: website
run: npm ci

- name: Generate docs from source
run: node scripts/generate-docs.js

- name: Build Docusaurus
working-directory: website
run: npm run build

- name: Copy hidden static dirs (Docusaurus skips dotfiles)
run: cp -r website/static/.well-known website/build/.well-known

- name: Upload artifact
uses: actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 # v5.0.0
with:
path: website/build
include-hidden-files: true

deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346 # v5.0.1