From a4ccebade7aaace0cf990bd4cfbbc189d5cd4285 Mon Sep 17 00:00:00 2001 From: Harald Nezbeda Date: Thu, 3 Oct 2019 20:49:50 +0200 Subject: [PATCH] Add ci stage to test for broken links in documentation --- .github/workflows/main.yml | 24 +++++++++++++++++++++ requirements/requirements-documentation.txt | 3 +++ 2 files changed, 27 insertions(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index f245f6964..cf4fbd4d9 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -56,3 +56,27 @@ jobs: - name: Upload coverage run: | codecov -e TOXENV,DJANGO + + test-docs: + name: Test documentation links + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v3 + + - uses: actions/setup-python@v4 + with: + python-version: '3.9' + + - name: Install dependencies + run: pip install -r requirements/requirements-documentation.txt + + # Start mkdocs server and wait for it to be ready + - run: mkdocs serve & + - run: WAIT_TIME=0 && until nc -vzw 2 localhost 8000 || [ $WAIT_TIME -eq 5 ]; do sleep $(( WAIT_TIME++ )); done + - run: if [ $WAIT_TIME == 5 ]; then echo cannot start mkdocs server on http://localhost:8000; exit 1; fi + + - name: Check links + continue-on-error: true + run: pylinkvalidate.py -P http://localhost:8000/ + + - run: echo "Done" diff --git a/requirements/requirements-documentation.txt b/requirements/requirements-documentation.txt index cf2dc26e8..bce03abc5 100644 --- a/requirements/requirements-documentation.txt +++ b/requirements/requirements-documentation.txt @@ -1,3 +1,6 @@ # MkDocs to build our documentation. mkdocs>=1.1.2,<1.2 jinja2>=2.10,<3.1.0 # contextfilter has been renamed + +# pylinkvalidator to check for broken links in documentation. +pylinkvalidator==0.3