Skip to content

Check links

Check links #359

Workflow file for this run

name: "Check links"
# yamllint disable-line rule:truthy
on:
workflow_dispatch:
schedule:
- cron: "37 11 * * 2"
permissions:
contents: read
jobs:
links:
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- name: Install Python and just
uses: opensafely-core/setup-action@d9171097dd0d37bdb7bed58f701eb03ff317ed17 # v1.7.0
with:
install-just: true
python-version: "3.11"
- name: Build site
env:
AccessToken: ${{ secrets.GITHUB_TOKEN }}
MKDOCS_SITE_URL: https://docs.opensafely.org
EHRQL_BRANCH: main
run: just build
- name: Move imported documentation to correct relative path
run: mv imported_docs/* docs/
# Use --max-concurrency to prevent 429 errors with OpenSAFELY Jobs.
# This workaround may not be needed in future if lychee has better rate limiting.
# https://github.com/lycheeverse/lychee/issues/36
- name: Check links
# 2.6.1 seemed to cause the exclude-path to not take effect, waiting for next release.
uses: lycheeverse/lychee-action@e7477775783ea5526144ba13e8db5eec57747ce8 # v2.9.0
with:
args:
"--exclude-all-private --include-verbatim --max-concurrency 24 --require-https --verbose --no-progress --offline
--accept '100..=103,200..=299,429,500..=511'
--timeout 60 './docs/**/*.md' './docs/**/*.html' './imported_docs/**/*.md' './imported_docs/**/*.html' --exclude-path './docs/ehrql/includes/generated_docs'"