Skip to content

Commit

Permalink
CI: add link-checker.
Browse files Browse the repository at this point in the history
Fixes #953
  • Loading branch information
Axel-Naumann committed Dec 14, 2023
1 parent 0b9b623 commit c37398a
Showing 1 changed file with 23 additions and 0 deletions.
23 changes: 23 additions & 0 deletions .github/workflows/continuous-integration-workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,29 @@ jobs:
env:
JEKYLL_ENV: production

- name: Check validity of links
uses: lycheeverse/[email protected]
with:
# Reasons for exclude
# - https://root.cern/[0-9]+: Breaks checking local builds due to links in the metadata
# - https://root.cern/(?!(files|download|doc)): Checking links to the deployed website breaks appearing in the metadata of newly added webpages. Exceptions are links to files, download and doc, which are not part of the Jekyll setup.
# - rootbnch-grafana-test.cern.ch: Breaks due to SSO
# - lcgapp-services.cern.ch: Breaks due to SSO
# - indico.desy.de: Returns frequently error code 403
# - https://www.sciencedirect.com: frequent 403 errors
# - nbviewer: When notebook generation fails, nbviewer returns 404 errors, and errors might even be cached in CDNs for a while
# - lcginfo.cern.ch: does not support HTTPS, see https://sft.its.cern.ch/jira/browse/SPI-1672
# - http://simul.iro.umontreal.ca/testu01/tu01.html does not support HTTPS
# Reasons for file-ignore
# - Broken links in historic ROOT v5 release notes

args: --base build --verbose --no-progress \
--exclude-path "/.*root-version-v5.*/" \
--exclude "https://rootbnch-grafana-test.cern.ch/.*|https://lcgapp-services.cern.ch/root-jenkins/*|https://indico.desy.de/.*|https://nbviewer.jupyter.org/.*|https://www.sciencedirect.com)/" \
--include-fragments
# Fail action on broken links
fail: true

- name: Only allow links to root.cern, never root.cern.ch
run: |
grep -n -R 'root\.cern\.ch' build || exit 0 # grep returns non-zero if no match is found
Expand Down

0 comments on commit c37398a

Please sign in to comment.