@@ -22,7 +22,7 @@ concurrency:
2222jobs :
2323 changes :
2424 outputs :
25- should-run-link -check : ${{ steps.changes.outputs.src == 'true' }}
25+ should-run-website -check : ${{ steps.changes.outputs.src == 'true' }}
2626 if : github.event.pull_request.draft == false
2727 runs-on : ubuntu-24.04
2828 steps :
@@ -43,12 +43,10 @@ jobs:
4343 - '.github/workflows/website.yml'
4444
4545 # Check that the website builds and there's no missing links.
46- # This job builds the website, starts a server to serve it, and then uses
47- # muffet (https://github.com/raviqqe/muffet) to perform the link check.
48- link-check :
46+ website-check :
4947 needs : [changes]
50- if : github.event.pull_request.draft == false && needs.changes.outputs.should-run-link -check == 'true'
51- name : Website Link Check
48+ if : github.event.pull_request.draft == false && needs.changes.outputs.should-run-website -check == 'true'
49+ name : Website Check
5250 runs-on : ubuntu-latest
5351 steps :
5452 - name : Harden Runner
@@ -64,20 +62,20 @@ jobs:
6462 config : .markdownlint.yaml
6563 globs : ' runatlantis.io/**/*.md'
6664
65+ - name : Link Checker
66+ id : lychee
67+ uses : lycheeverse/lychee-action@f613c4a64e50d792e0b31ec34bbcbba12263c6a6 # v2.3.0
68+ with :
69+ args : --verbose --no-progress ./runatlantis.io
70+
6771 - name : setup npm
6872 uses : actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4
6973 with :
7074 node-version : ' 20'
7175 cache : ' npm'
7276
7377 - name : run http-server
74- env :
75- # renovate: datasource=github-releases depName=raviqqe/muffet
76- MUFFET_VERSION : 2.10.7
7778 run : |
78- # install raviqqe/muffet to check for broken links.
79- curl -Ls https://github.com/raviqqe/muffet/releases/download/v${MUFFET_VERSION}/muffet_linux_amd64.tar.gz | tar -xz
80-
8179 # build site
8280 npm install
8381 npm run website:build
@@ -90,36 +88,10 @@ jobs:
9088 npx playwright install --with-deps
9189 npm run e2e
9290
93- - name : wait until server listened
94- run : curl --retry-delay 1 --retry 30 --retry-all-error http://localhost:8080
95-
96- # medium.com => was being rate limited: HTTP 429
97- # twitter.com => too many redirections
98- # www.flaticon.com => 403 error
99- # www.freepik.com => 403 error
100- # ngrok.com => 406 error
101- - run : |
102- ./muffet \
103- -e 'https://medium.com/runatlantis' \
104- -e 'https://dev.to/*' \
105- -e 'https://twitter.com/*' \
106- -e 'https://www.flaticon.com/*' \
107- -e 'https://www.freepik.com/*' \
108- -e 'https://ngrok.com/*' \
109- -e 'https://github\.com/runatlantis/atlantis/edit/main/.*' \
110- -e 'https://github.com/runatlantis/helm-charts#customization' \
111- -e 'https://github.com/sethvargo/atlantis-on-gke/blob/master/terraform/tls.tf#L64-L84' \
112- -e 'https://confluence.atlassian.com/*' \
113- --header 'User-Agent: Muffet' \
114- --header 'Accept-Encoding:deflate, gzip' \
115- --buffer-size 8192 \
116- --timeout 300 \
117- http://localhost:8080/
118-
119- skip-link-check :
91+ skip-website-check :
12092 needs : [changes]
121- if : needs.changes.outputs.should-run-link -check == 'false'
122- name : Website Link Check
93+ if : needs.changes.outputs.should-run-website -check == 'false'
94+ name : Website Check
12395 runs-on : ubuntu-latest
12496 steps :
12597 - name : Harden Runner
0 commit comments