| # Part of the Crubit project, under the Apache License v2.0 with LLVM |
| # Exceptions. See /LICENSE for license information. |
| # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception |
| name: Deploy mdBook site to Pages |
| |
| on: |
| # Runs on pushes targeting the default branch |
| push: |
| branches: ["main"] |
| |
| # Allows you to run this workflow manually from the Actions tab |
| workflow_dispatch: |
| |
| # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages |
| permissions: |
| contents: read |
| pages: write |
| id-token: write |
| |
| # Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. |
| # However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. |
| concurrency: |
| group: "pages" |
| cancel-in-progress: false |
| |
| jobs: |
| # Build job |
| build: |
| runs-on: ubuntu-latest |
| env: |
| MDBOOK_VERSION: 0.4.36 |
| steps: |
| - uses: actions/checkout@v4 |
| - name: Install mdBook |
| run: | |
| curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf -y | sh |
| rustup update |
| cargo install --version ${MDBOOK_VERSION} mdbook |
| - name: Setup Pages |
| id: pages |
| uses: actions/configure-pages@v5 |
| - name: Build with mdBook |
| run: mdbook build |
| - name: Upload artifact |
| uses: actions/upload-pages-artifact@v3 |
| with: |
| path: ./book |
| |
| # Deployment job |
| 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@v4 |