name: pages on: push: branches: - main paths: - "docs/**" - "ci/build-docs.sh" - "ci/generate-docs.py" - "ci/subst-release-info.py" - ".github/workflows/pages.yml" schedule: - cron: "50 * * * *" # 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 concurrency: group: "pages" cancel-in-progress: true jobs: build: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3 - name: "Install Rust" uses: actions-rs/toolchain@v1 with: profile: "minimal" toolchain: "stable" default: true override: true components: "rustfmt" env: ACTIONS_ALLOW_UNSECURE_COMMANDS: "true" - name: Install gelatyx uses: baptiste0928/cargo-install@v1 with: crate: gelatyx args: --locked - name: Install mdbook-linkcheck uses: baptiste0928/cargo-install@v1 with: crate: mdbook-linkcheck args: --locked - uses: actions/setup-python@v4 with: python-version: 3.x - uses: actions/cache@v2 with: key: ${{ github.ref }} path: .cache - name: Build env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | source $HOME/.cargo/env CARDS=true ./ci/build-docs.sh - name: Upload artifact uses: actions/upload-pages-artifact@v1 with: path: gh_pages deploy: environment: name: github-pages url: ${{ steps.deployment.outputs.page_url }} runs-on: ubuntu-latest needs: build steps: - name: Deploy id: deployment uses: actions/deploy-pages@v1