fix: Decouple arch-specific constants from PagingConstsTrait trait definitions, fix specifications, and prove axioms.
#938
Workflow file for this run
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
| name: Deploy Rust docs to GitHub Pages | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| branches: | |
| - main | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| pages: write | |
| id-token: write | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v6 | |
| with: | |
| submodules: recursive | |
| - name: Install dependencies | |
| run: | | |
| sudo apt update -qq | |
| sudo apt install -y build-essential unzip pkg-config libssl-dev llvm | |
| - name: Get Rust toolchain version | |
| id: rust-toolchain | |
| run: | | |
| RUST_VERSION=$(grep 'channel' rust-toolchain.toml | sed -E 's/.*= *"(.*)"/\1/') | |
| if [ -z "$RUST_VERSION" ]; then | |
| echo "Failed to extract Rust version from rust-toolchain.toml" | |
| exit 1 | |
| fi | |
| echo "RUST_VERSION=$RUST_VERSION" >> "$GITHUB_ENV" | |
| echo "Rust version: $RUST_VERSION" | |
| - name: Cache Rust toolchain | |
| uses: actions/cache@v5 | |
| with: | |
| path: | | |
| ~/.rustup/toolchains | |
| ~/.rustup/update-hashes | |
| ~/.rustup/tmp | |
| key: ${{ runner.os }}-rust-toolchain-${{ env.RUST_VERSION }} | |
| - name: Cache Cargo dependencies | |
| uses: actions/cache@v5 | |
| with: | |
| path: | | |
| ~/.cargo/registry | |
| ~/.cargo/git | |
| key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} | |
| restore-keys: | | |
| ${{ runner.os }}-cargo- | |
| - name: Get Verus commit | |
| id: verus | |
| run: | | |
| VERUS_COMMIT=$(git ls-remote https://github.com/asterinas/verus HEAD | cut -f1) | |
| echo "VERUS_COMMIT=$VERUS_COMMIT" >> "$GITHUB_ENV" | |
| echo "Using Verus commit: $VERUS_COMMIT" | |
| DV_COMMIT=$(git rev-parse HEAD:dv) | |
| echo "DV_COMMIT=$DV_COMMIT" >> "$GITHUB_ENV" | |
| echo "Using dv commit: $DV_COMMIT" | |
| - name: Cache dv build artifacts | |
| uses: actions/cache@v5 | |
| with: | |
| path: dv/target | |
| key: ${{ runner.os }}-dv-${{ env.DV_COMMIT }} | |
| - name: Cache Verus | |
| id: cache-verus | |
| uses: actions/cache@v5 | |
| with: | |
| path: tools/verus | |
| key: ${{ runner.os }}-verus-${{ env.VERUS_COMMIT }} | |
| - name: Cache verusfmt | |
| id: cache-verusfmt | |
| uses: actions/cache@v5 | |
| with: | |
| path: ~/.cargo/bin/verusfmt | |
| key: ${{ runner.os }}-verusfmt-${{ env.VERUS_COMMIT }} | |
| - name: Bootstrap Verus (if needed) | |
| run: | | |
| if [ "${{ steps.cache-verus.outputs.cache-hit }}" = "true" ]; then | |
| echo "Using cached Verus" | |
| else | |
| echo "Cache miss, bootstrapping Verus..." | |
| rm -rf tools/verus | |
| cargo dv bootstrap | |
| fi | |
| if ! command -v verusfmt >/dev/null 2>&1; then | |
| echo "verusfmt not found, installing via cargo dv bootstrap..." | |
| cargo dv bootstrap | |
| fi | |
| verusfmt --version | |
| - name: Build docs | |
| run: make doc | |
| - name: Upload artifact | |
| if: github.event_name != 'pull_request' && github.repository == 'asterinas/vostd' | |
| uses: actions/upload-pages-artifact@v5 | |
| with: | |
| path: doc | |
| deploy: | |
| environment: | |
| name: github-pages | |
| url: ${{ steps.deployment.outputs.page_url }} | |
| needs: build | |
| if: github.event_name != 'pull_request' && github.repository == 'asterinas/vostd' | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Deploy to GitHub Pages | |
| id: deployment | |
| uses: actions/deploy-pages@v5 |