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" - ".github/ISSUE_TEMPLATE/*" schedule: - cron: "50 * * * *" jobs: publish: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3 - name: Install Rust run: | curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain stable source $HOME/.cargo/env rustup update stable - uses: actions/cache@v3 with: path: | ~/.cargo/bin/ ~/.cargo/registry/index/ ~/.cargo/registry/cache/ ~/.cargo/git/db/ key: ${{ runner.os }}-cargo-mdbook-${{ hashFiles('.github/workflows/pages.yml') }} - name: Install mdBook run: | (test -x ~/.cargo/bin/mdbook || (cd && cargo install mdbook --no-default-features --features search --vers "^0.4" --locked)) - name: Install mdBook linkcheck run: | (test -x ~/.cargo/bin/mdbook-linkcheck || (cd && cargo install mdbook-linkcheck --locked)) - name: Install mdBook mermaid run: | (test -x ~/.cargo/bin/mdbook-mermaid || (cd && cargo install mdbook-mermaid --locked)) - name: Install gelatyx run: | (test -x ~/.cargo/bin/gelatyx || (cd && cargo install gelatyx --locked)) - name: Build run: | source $HOME/.cargo/env ./ci/build-docs.sh - name: Deploy if: success() uses: crazy-max/ghaction-github-pages@v3 with: target_branch: gh-pages build_dir: gh_pages/html keep_history: true allow_empty_commit: false env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}