Mouse and selection #27
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Docs | |
| on: | |
| push: | |
| branches: [main] | |
| paths: | |
| - 'docs/**' | |
| - '.github/workflows/docs.yml' | |
| pull_request: | |
| paths: | |
| - 'docs/**' | |
| - '.github/workflows/docs.yml' | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| pages: write | |
| id-token: write | |
| # One deploy at a time. In-progress runs finish rather than being cancelled, | |
| # so a half-uploaded artifact never becomes the live site. | |
| concurrency: | |
| group: pages | |
| cancel-in-progress: false | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| # Cheap, and it catches the one failure Jekyll reports as success: a | |
| # `parent:` that matches no title, which drops the page from the sidebar. | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 22 | |
| - name: Check the docs tree | |
| run: node scripts/check-docs.mjs | |
| - uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: '3.3' | |
| bundler-cache: true | |
| working-directory: docs | |
| - uses: actions/configure-pages@v5 | |
| id: pages | |
| # `baseurl` comes from _config.yml, not from configure-pages, so that the | |
| # site built in CI is the same one `jekyll serve` builds locally. | |
| - name: Build | |
| run: bundle exec jekyll build --trace | |
| working-directory: docs | |
| env: | |
| JEKYLL_ENV: production | |
| - uses: actions/upload-pages-artifact@v3 | |
| with: | |
| path: docs/_site | |
| deploy: | |
| # A pull request builds, to catch a broken page before it merges, but only | |
| # main is published. | |
| if: github.ref == 'refs/heads/main' && github.event_name != 'pull_request' | |
| needs: build | |
| runs-on: ubuntu-latest | |
| environment: | |
| name: github-pages | |
| url: ${{ steps.deployment.outputs.page_url }} | |
| steps: | |
| - uses: actions/deploy-pages@v4 | |
| id: deployment |