name: website
on:
push:
branches: [main]
jobs:
website:
runs-on: ubuntu-latest
permissions:
contents: write pages: write id-token: write steps:
- name: Checkout code
uses: actions/checkout@v6
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
- name: Install mdbook
uses: taiki-e/install-action@v2
- name: Install tarpaulin
uses: taiki-e/install-action@v2
- name: Build test coverage page
run: cargo tarpaulin --workspace --all-features
- name: Build dev documentation
run: cargo doc --target-dir website
- name: Run mdbook
run: mdbook build
- name: Setup Pages
uses: actions/configure-pages@v4
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: 'public'
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4