feat(routines): add typed Rust source-claim projection (#92) #180
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
| # Build the mdBook on every push/PR so the generated docs are continuously | |
| # validated. DEPLOYMENT to GitHub Pages is deliberately gated: it runs only on | |
| # manual dispatch or when the repository variable PUBLISH_BOOK is "true". | |
| # The repo is private today and a Pages site is public to anyone with the URL, | |
| # so nothing is published until that switch is flipped (see book/README.md). | |
| name: book | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| workflow_dispatch: | |
| env: | |
| MDBOOK_VERSION: v0.5.4 | |
| permissions: | |
| contents: read | |
| pages: write | |
| id-token: write | |
| concurrency: | |
| group: book-${{ github.ref }} | |
| cancel-in-progress: false | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install mdBook (pinned) | |
| run: | | |
| mkdir -p "$HOME/bin" | |
| curl -sSL "https://github.com/rust-lang/mdBook/releases/download/${MDBOOK_VERSION}/mdbook-${MDBOOK_VERSION}-x86_64-unknown-linux-gnu.tar.gz" \ | |
| | tar -xz --directory="$HOME/bin" | |
| echo "$HOME/bin" >> "$GITHUB_PATH" | |
| - name: Install generator dependencies | |
| run: pip install pyyaml | |
| - name: Generate book source from repository | |
| run: python3 tools/book/generate.py | |
| - name: Build book | |
| run: mdbook build book | |
| - name: Upload Pages artifact | |
| uses: actions/upload-pages-artifact@v3 | |
| with: | |
| path: book/book | |
| deploy: | |
| needs: build | |
| if: github.ref == 'refs/heads/main' && (github.event_name == 'workflow_dispatch' || vars.PUBLISH_BOOK == 'true') | |
| runs-on: ubuntu-latest | |
| environment: | |
| name: github-pages | |
| url: ${{ steps.deployment.outputs.page_url }} | |
| steps: | |
| - name: Deploy to GitHub Pages | |
| id: deployment | |
| uses: actions/deploy-pages@v4 |