Skip to content

Check links

Check links #25

# This workflow verifies hyperlinks using the deployed
# docs site. It has to be triggered manually.
name: Check links
on:
workflow_dispatch:
jobs:
check-links:
runs-on: ubuntu-latest
steps:
- name: Pull images
run: docker pull ghcr.io/linkchecker/linkchecker:latest
- name: check-links-in-overview-pages
run: |
docker run --rm --name linkchecker \
ghcr.io/linkchecker/linkchecker:latest \
https://docs.giantswarm.io/overview/ \
--check-extern \
-t 1 -r 2 || echo "failed1=true" >> "$GITHUB_ENV"
continue-on-error: true
- name: check-links-in-getting-started-pages
run: |
docker run --rm --name linkchecker \
ghcr.io/linkchecker/linkchecker:latest \
https://docs.giantswarm.io/getting-started/ \
--check-extern \
-t 1 -r 2 || echo "failed2=true" >> "$GITHUB_ENV"
continue-on-error: true
- name: check-links-in-tutorials-pages
run: |
docker run --rm --name linkchecker \
ghcr.io/linkchecker/linkchecker:latest \
https://docs.giantswarm.io/tutorials/ \
--check-extern \
-t 1 -r 2 || echo "failed3=true" >> "$GITHUB_ENV"
continue-on-error: true
- name: check-links-in-reference-pages
run: |
docker run --rm --name linkchecker \
ghcr.io/linkchecker/linkchecker:latest \
https://docs.giantswarm.io/reference/ \
--check-extern \
-t 1 -r 2 || echo "failed4=true" >> "$GITHUB_ENV"
continue-on-error: true
- name: check-links-in-support-pages
run: |
docker run --rm --name linkchecker \
ghcr.io/linkchecker/linkchecker:latest \
https://docs.giantswarm.io/support/ \
--check-extern \
-t 1 -r 2 || echo "failed5=true" >> "$GITHUB_ENV"
continue-on-error: true
- name: check-links-in-changelogs
run: |
docker run --rm --name linkchecker \
ghcr.io/linkchecker/linkchecker:latest \
https://docs.giantswarm.io/changes/ \
-t 1 -r 2 \
--ignore-url="^https://github.com/giantswarm/docs/.*" \
--ignore-url="^https://.*example\.com/.*" \
--ignore-url="^https://my-org\.github\.com/.*" \
--ignore-url="^https://github\.com/giantswarm/giantswarm/.*" \
--ignore-url=".*gigantic\.io.*" || echo "failed6=true" >> "$GITHUB_ENV"
continue-on-error: true
- name: Report errors
run: |
if [[ $failed1 == "true" ]]; then
echo "There has been some errors in overview checks, please check the step."
fi
if [[ $failed2 == "true" ]]; then
echo "There has been some errors in getting started checks, please check the step."
fi
if [[ $failed3 == "true" ]]; then
echo "There has been some errors in tutorials checks, please check the step."
fi
if [[ $failed4 == "true" ]]; then
echo "There has been some errors in reference checks, please check the step."
fi
if [[ $failed5 == "true" ]]; then
echo "There has been some errors in support checks, please check the step."
fi
if [[ $failed6 "true" ]]; then
echo "There has been some errors in changelogs checks, please check the step."
fi
if [[ $failed1 == "true" ]] || [[ $failed2 == "true" ]] || [[ $failed3 == "true" ]] || [[ $failed4 == "true" ]] || [[ $failed5 == "true" ]] || [[ $failed6 "true" ]]; then
exit 1
fi