Skip to content

Run cargo bench in PR CI tests and report result to PR and Github P… #1175

Run cargo bench in PR CI tests and report result to PR and Github P…

Run cargo bench in PR CI tests and report result to PR and Github P… #1175

Workflow file for this run

# adapted from https://github.com/rust-lang/mdBook/wiki/Automated-Deployment%3A-GitHub-Actions#GitHub-Pages-Deploy
name: Deploy book
on:
push:
branches:
- main
jobs:
deploy:
runs-on: ubuntu-24.04
permissions:
contents: write # To push a branch
pull-requests: write # To create a PR from that branch
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install latest mdbook
run: |
tag=$(curl 'https://api.github.com/repos/rust-lang/mdbook/releases/latest' | jq -r '.tag_name')
url="https://github.com/rust-lang/mdbook/releases/download/${tag}/mdbook-${tag}-x86_64-unknown-linux-gnu.tar.gz"
mkdir mdbook
curl -sSL $url | tar -xz --directory=./mdbook
echo `pwd`/mdbook >> $GITHUB_PATH
- name: Deploy GitHub Pages
run: |
# generate cli docs and inject them into the book
cargo run --package powdr-cli -- --markdown-help > book/src/cli/README.md
# build the book
cd book
mdbook build
git worktree add gh-pages
git config user.name "Deploy from CI"
git config user.email ""
cd gh-pages
# Delete the ref to avoid keeping history.
git update-ref -d refs/heads/gh-pages
# Delete everything except the `dev` folder, as it contains benchmarks we should keep.
find . -mindepth 1 -maxdepth 1 ! -name "dev" -exec rm -rf {} +
mv ../book/* .
git add .
git commit -m "Deploy $GITHUB_SHA to gh-pages"
git push --force --set-upstream origin gh-pages