🩹 Fix permissions of target subdirectories #40
This file contains 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 Github Pages | |
on: | |
push: | |
branches: [master] | |
workflow_dispatch: | |
jobs: | |
generate: | |
name: Generate cargo docs | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Prepare runner | |
uses: ./.github/actions/prepare-runner | |
- name: Install toolchain | |
uses: ./.github/actions/rust-toolchain | |
with: | |
rust: nightly | |
- name: Install mdbook | |
uses: ./.github/actions/cargo-install | |
with: | |
target: mdbook | |
- name: Install cargo-llvm-cov | |
uses: taiki-e/install-action@cargo-llvm-cov | |
- name: Build | |
uses: ./.github/actions/cargo-build | |
- name: Generate Cargo Docs | |
run: | | |
RUSTDOCFLAGS="--enable-index-page -Zunstable-options" \ | |
cargo +nightly doc --no-deps --workspace | |
- name: Generate Book | |
run: | | |
mdbook build docs | |
mkdir -p target/doc | |
cp -r docs/book target/doc/book | |
- name: Generate coverage report | |
run: | | |
cargo llvm-cov --html | |
cp -r target/llvm-cov/html target/doc/coverage | |
- name: Generate license manifest | |
uses: ./.github/actions/cargo-about | |
with: | |
output-file: target/doc/licenses.html | |
# Some of the doc generation steps above create the directories with | |
# 0750 for permissions -- which is triggering warning annotations in the | |
# workflow summaries. Manually converting this to 0755 helps to suppress | |
# this. | |
- name: Fix permissions | |
run: | | |
find ./target -type d -exec chmod 0755 {} \; | |
- name: Upload Pages Artifact | |
uses: actions/upload-pages-artifact@v1 | |
with: | |
path: ./target/doc | |
deploy: | |
name: Deploy to GH Pages | |
runs-on: ubuntu-latest | |
needs: generate | |
permissions: | |
contents: read | |
pages: write | |
id-token: write | |
environment: | |
name: github-pages | |
url: ${{ steps.deployment.outputs.page_url }} | |
steps: | |
- name: Upload GH Pages | |
id: deployment | |
uses: actions/deploy-pages@v1 | |
- name: Create summary | |
if: success() | |
run: | | |
echo "# Documentation successfully deployed 🚀" >> "${GITHUB_STEP_SUMMARY}" | |
echo "" >> "${GITHUB_STEP_SUMMARY}" | |
echo "Deployed documentation links:" >> "${GITHUB_STEP_SUMMARY}" | |
echo "" >> "${GITHUB_STEP_SUMMARY}" | |
echo "* [📦 Crate documentation](https://bitwizeshift.github.io/alloy-rs/)" >> "${GITHUB_STEP_SUMMARY}" | |
echo "* [📕 Handbook](https://bitwizeshift.github.io/alloy-rs/book/)" >> "${GITHUB_STEP_SUMMARY}" | |
echo "* [📈 Coverage Report](https://bitwizeshift.github.io/alloy-rs/coverage)" >> "${GITHUB_STEP_SUMMARY}" | |
echo "* [🔑 Licenses](https://bitwizeshift.github.io/alloy-rs/licenses.html)" >> "${GITHUB_STEP_SUMMARY}" |