name: Docs on: pull_request: paths: - ".github/workflows/docs.yml" push: branches: - trunk env: # This is the MSRV used by `wgpu` itself and all surrounding infrastructure. REPO_MSRV: "1.88" CARGO_INCREMENTAL: false CARGO_TERM_COLOR: always RUST_BACKTRACE: full # Every time a PR is pushed to, cancel any previous jobs. This # makes us behave nicer to github and get faster turnaround times # on PRs that are pushed to multiple times in rapid succession. concurrency: group: ${{github.workflow}}-${{github.ref}} cancel-in-progress: ${{github.event_name == 'pull_request'}} jobs: build: runs-on: ubuntu-latest steps: - name: Checkout repo uses: actions/checkout@v4 with: persist-credentials: false - name: Install documentation toolchain run: | rustup toolchain install ${{ env.REPO_MSRV }} --no-self-update --profile=minimal rustup override set ${{ env.REPO_MSRV }} - name: Disable debug symbols shell: bash run: | mkdir -p .cargo cat <> .cargo/config.toml [profile.dev] debug = false EOF - name: Caching uses: Swatinem/rust-cache@v2 with: key: doc-build - name: Build the docs run: | cargo doc --no-deps --lib --document-private-items env: RUSTDOCFLAGS: --cfg docsrs RUSTC_BOOTSTRAP: 1 - name: Deploy the docs uses: JamesIves/github-pages-deploy-action@v4.7.3 if: github.ref == 'refs/heads/trunk' with: token: ${{ secrets.WEB_DEPLOY }} folder: target/doc repository-name: gfx-rs/wgpu-rs.github.io branch: master target-folder: doc