From f39f773eb4fdd9f66fab2a29384480d11f1f5ccb Mon Sep 17 00:00:00 2001 From: John Eckersberg Date: Mon, 13 May 2024 16:31:31 -0400 Subject: [PATCH] ci/docs: Add mdbook-linkcheck Fixes #521 Signed-off-by: John Eckersberg --- .github/workflows/ci.yml | 6 ++++++ .github/workflows/docs.yml | 20 +------------------- .github/workflows/mdbook.yml | 34 ++++++++++++++++++++++++++++++++++ docs/book.toml | 2 ++ 4 files changed, 43 insertions(+), 19 deletions(-) create mode 100644 .github/workflows/mdbook.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f25aa332..8c1a6527 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -199,3 +199,9 @@ jobs: truncate -s 20G ${tmpdisk} sudo podman run --rm --privileged --env RUST_LOG=debug -v /dev:/dev -v /:/target -v /var/lib/containers:/var/lib/containers -v ./usr/bin/bootc:/usr/bin/bootc --pid=host --security-opt label=disable \ -v ${tmpdisk}:/disk ${image} bootc install to-disk --via-loopback /disk + mdbook: + if: ${{ contains(github.event.pull_request.labels.*.name, 'documentation') }} + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: ./.github/workflows/mdbook.yml diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 86883437..f5d9caf1 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -17,29 +17,11 @@ concurrency: jobs: build: runs-on: ubuntu-latest - env: - MDBOOK_VERSION: 0.4.37 steps: - - uses: actions/checkout@v4 - - name: Install mdBook - run: | - tag=$(curl 'https://github.com/gitapi/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: Install mdbook-mermaid - run: | - tag=$(curl 'https://github.com/gitapi/repos/badboy/mdbook-mermaid/releases/latest' | jq -r '.tag_name') - url="https://github.com/badboy/mdbook-mermaid/releases/download/${tag}/mdbook-mermaid-${tag}-x86_64-unknown-linux-gnu.tar.gz" - mkdir mdbook-mermaid - curl -sSL $url | tar -xz --directory=./mdbook-mermaid - echo `pwd`/mdbook-mermaid >> $GITHUB_PATH + - uses: ./.github/workflows/mdbook.yml - name: Setup Pages id: pages uses: actions/configure-pages@v4 - - name: Build with mdBook - run: cd docs && mdbook-mermaid install && mdbook build - name: Upload artifact uses: actions/upload-pages-artifact@v3 with: diff --git a/.github/workflows/mdbook.yml b/.github/workflows/mdbook.yml new file mode 100644 index 00000000..5eac0c41 --- /dev/null +++ b/.github/workflows/mdbook.yml @@ -0,0 +1,34 @@ +name: Mdbook setup and build workflow + +on: + workflow_call: + +jobs: + build: + runs-on: ubuntu-latest + env: + MDBOOK_VERSION: 0.4.37 + steps: + - name: Install mdBook + run: | + tag=$(curl 'https://github.com/gitapi/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: Install mdbook-mermaid + run: | + tag=$(curl 'https://github.com/gitapi/repos/badboy/mdbook-mermaid/releases/latest' | jq -r '.tag_name') + url="https://github.com/badboy/mdbook-mermaid/releases/download/${tag}/mdbook-mermaid-${tag}-x86_64-unknown-linux-gnu.tar.gz" + mkdir mdbook-mermaid + curl -sSL $url | tar -xz --directory=./mdbook-mermaid + echo `pwd`/mdbook-mermaid >> $GITHUB_PATH + - name: Install mdbook-linkcheck + run: | + tag=$(curl 'https://github.com/gitapi/repos/Michael-F-Bryan/mdbook-linkcheck/releases/latest' | jq -r '.tag_name') + url="https://github.com/Michael-F-Bryan/mdbook-linkcheck/releases/download/${tag}/mdbook-linkcheck-${tag}-x86_64-unknown-linux-gnu.tar.gz" + mkdir mdbook-linkcheck + curl -sSL $url | tar -xz --directory=./mdbook-linkcheck + echo `pwd`/mdbook-linkcheck >> $GITHUB_PATH + - name: Build with mdBook + run: cd docs && mdbook-mermaid install && mdbook build diff --git a/docs/book.toml b/docs/book.toml index 105809ff..fa4ba8f4 100644 --- a/docs/book.toml +++ b/docs/book.toml @@ -10,3 +10,5 @@ command = "mdbook-mermaid" [output.html] additional-js = ["mermaid.min.js", "mermaid-init.js"] + +[output.linkcheck]