summaryrefslogtreecommitdiffstats
path: root/src/doc/book/.github/workflows/main.yml
diff options
context:
space:
mode:
Diffstat (limited to 'src/doc/book/.github/workflows/main.yml')
-rw-r--r--src/doc/book/.github/workflows/main.yml72
1 files changed, 72 insertions, 0 deletions
diff --git a/src/doc/book/.github/workflows/main.yml b/src/doc/book/.github/workflows/main.yml
new file mode 100644
index 000000000..d5b3249be
--- /dev/null
+++ b/src/doc/book/.github/workflows/main.yml
@@ -0,0 +1,72 @@
+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.62 -c rust-docs
+ rustup default 1.62
+ - name: Install mdbook
+ run: |
+ mkdir bin
+ curl -sSL https://github.com/rust-lang/mdBook/releases/download/v0.4.14/mdbook-v0.4.14-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
+ curl -sSL https://github.com/rust-lang/mdBook/releases/download/v0.4.14/mdbook-v0.4.14-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
+ - 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