CI #76
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: CI | |
on: [push, pull_request] | |
jobs: | |
test: | |
name: Run tests | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@master | |
- name: Update rustup | |
run: rustup self update | |
- name: Install Rust | |
run: | | |
rustup set profile minimal | |
rustup toolchain install 1.65 -c rust-docs | |
rustup default 1.65 | |
- name: Install mdbook | |
run: | | |
mkdir bin | |
# TODO: make mdBook version a constant for easier maintenance | |
curl -sSL https://github.com/rust-lang/mdBook/releases/download/v0.4.25/mdbook-v0.4.25-x86_64-unknown-linux-gnu.tar.gz | tar -xz --directory=bin | |
echo "$(pwd)/bin" >> ${GITHUB_PATH} | |
- name: Report versions | |
run: | | |
rustup --version | |
rustc -Vv | |
mdbook --version | |
- name: Run tests | |
run: mdbook test | |
lint: | |
name: Run lints | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@master | |
- name: Update rustup | |
run: rustup self update | |
- name: Install Rust | |
run: | | |
rustup set profile minimal | |
rustup toolchain install nightly -c rust-docs | |
rustup override set nightly | |
- name: Install mdbook | |
run: | | |
mkdir bin | |
# Todo: make mdbook version a constant for ease of maintenance 🙏 | |
curl -sSL https://github.com/rust-lang/mdBook/releases/download/v0.4.25/mdbook-v0.4.25-x86_64-unknown-linux-gnu.tar.gz | tar -xz --directory=bin | |
echo "$(pwd)/bin" >> ${GITHUB_PATH} | |
- name: Install aspell | |
run: sudo apt-get install aspell | |
- name: Install shellcheck | |
run: sudo apt-get install shellcheck | |
- name: Report versions | |
run: | | |
rustup --version | |
rustc -Vv | |
mdbook --version | |
aspell --version | |
shellcheck --version | |
- name: Shellcheck | |
run: find . -name '*.sh' | xargs shellcheck | |
- name: Spellcheck | |
run: bash ci/spellcheck.sh list | |
- name: Lint for local file paths | |
run: | | |
mdbook build | |
cargo run --bin lfp src | |
- name: Validate references | |
run: bash ci/validate.sh | |
# Temporarily disable this until we have time to fix it ... https://github.com/dwyl/book/actions/runs/4095599539/jobs/7062622109#step:13:47 | |
# - name: Check for broken links | |
# run: | | |
# curl -sSLo linkcheck.sh \ | |
# https://raw.githubusercontent.com/rust-lang/rust/master/src/tools/linkchecker/linkcheck.sh | |
# # Cannot use --all here because of the generated redirect pages aren't available. | |
# sh linkcheck.sh book |