Skip to content

Commit 03e386f

Browse files
committed
split link checking workflow into three, one per version type
1 parent 5f148ce commit 03e386f

3 files changed

Lines changed: 118 additions & 2 deletions

File tree

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
with:
1818
cancel_others: 'false'
1919
github_token: ${{ github.token }}
20-
paths: '[".github/workflows/link-check-test.yml", "assets/**", "content/**", "data/**", "includes/**", "javascripts/**", "jest-puppeteer.config.js", "jest.config.js", "layouts/**", "lib/**", "middleware/**", "package-lock.json", "package.json", "server.js", "translations/**", "webpack.config.js"]'
20+
paths: '[".github/workflows/link-check-*.yml", "assets/**", "content/**", "data/**", "includes/**", "javascripts/**", "jest-puppeteer.config.js", "jest.config.js", "layouts/**", "lib/**", "middleware/**", "package-lock.json", "package.json", "server.js", "translations/**", "webpack.config.js"]'
2121
build:
2222
needs: see_if_should_skip
2323
runs-on: ${{ fromJSON('["ubuntu-latest", "self-hosted"]')[github.repository == 'github/docs-internal'] }}
@@ -51,5 +51,7 @@ jobs:
5151
run: npm run build
5252

5353
- if: ${{ needs.see_if_should_skip.outputs.should_skip != 'true' }}
54-
name: Link check
54+
name: 'Link check: Dotcom'
55+
env:
56+
VERSION: 'dotcom'
5557
run: npm run link-check
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
name: Link Checker
2+
3+
on:
4+
workflow_dispatch:
5+
push:
6+
7+
jobs:
8+
see_if_should_skip:
9+
continue-on-error: true
10+
runs-on: ubuntu-latest
11+
# Map a step output to a job output
12+
outputs:
13+
should_skip: ${{ steps.skip_check.outputs.should_skip }}
14+
steps:
15+
- id: skip_check
16+
uses: fkirc/skip-duplicate-actions@36feb0d8d062137530c2e00bd278d138fe191289
17+
with:
18+
cancel_others: 'false'
19+
github_token: ${{ github.token }}
20+
paths: '[".github/workflows/link-check-*.yml", "assets/**", "content/**", "data/**", "includes/**", "javascripts/**", "jest-puppeteer.config.js", "jest.config.js", "layouts/**", "lib/**", "middleware/**", "package-lock.json", "package.json", "server.js", "translations/**", "webpack.config.js"]'
21+
build:
22+
needs: see_if_should_skip
23+
runs-on: ${{ fromJSON('["ubuntu-latest", "self-hosted"]')[github.repository == 'github/docs-internal'] }}
24+
steps:
25+
# Each of these ifs needs to be repeated at each step to make sure the required check still runs
26+
# Even if if doesn't do anything
27+
- if: ${{ needs.see_if_should_skip.outputs.should_skip != 'true' }}
28+
name: Checkout
29+
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f
30+
31+
- if: ${{ needs.see_if_should_skip.outputs.should_skip != 'true' }}
32+
name: Setup node
33+
uses: actions/setup-node@c46424eee26de4078d34105d3de3cc4992202b1e
34+
with:
35+
node-version: 14.x
36+
37+
- if: ${{ needs.see_if_should_skip.outputs.should_skip != 'true' }}
38+
name: Install
39+
run: npm ci
40+
41+
## TODO
42+
# - if: ${{ github.repository == 'github/docs-internal' && needs.see_if_should_skip.outputs.should_skip != 'true' }}
43+
# name: Clone early access
44+
# run: npm run heroku-postbuild
45+
# env:
46+
# DOCUBOT_REPO_PAT: ${{ secrets.DOCUBOT_REPO_PAT }}
47+
# GIT_BRANCH: ${{ github.ref }}
48+
49+
- if: ${{ needs.see_if_should_skip.outputs.should_skip != 'true' }}
50+
name: Build
51+
run: npm run build
52+
53+
- if: ${{ needs.see_if_should_skip.outputs.should_skip != 'true' }}
54+
name: 'Link check: GitHub AE'
55+
env:
56+
VERSION: 'github-ae'
57+
run: npm run link-check
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
name: Link Checker
2+
3+
on:
4+
workflow_dispatch:
5+
push:
6+
7+
jobs:
8+
see_if_should_skip:
9+
continue-on-error: true
10+
runs-on: ubuntu-latest
11+
# Map a step output to a job output
12+
outputs:
13+
should_skip: ${{ steps.skip_check.outputs.should_skip }}
14+
steps:
15+
- id: skip_check
16+
uses: fkirc/skip-duplicate-actions@36feb0d8d062137530c2e00bd278d138fe191289
17+
with:
18+
cancel_others: 'false'
19+
github_token: ${{ github.token }}
20+
paths: '[".github/workflows/link-check-*.yml", "assets/**", "content/**", "data/**", "includes/**", "javascripts/**", "jest-puppeteer.config.js", "jest.config.js", "layouts/**", "lib/**", "middleware/**", "package-lock.json", "package.json", "server.js", "translations/**", "webpack.config.js"]'
21+
build:
22+
needs: see_if_should_skip
23+
runs-on: ${{ fromJSON('["ubuntu-latest", "self-hosted"]')[github.repository == 'github/docs-internal'] }}
24+
steps:
25+
# Each of these ifs needs to be repeated at each step to make sure the required check still runs
26+
# Even if if doesn't do anything
27+
- if: ${{ needs.see_if_should_skip.outputs.should_skip != 'true' }}
28+
name: Checkout
29+
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f
30+
31+
- if: ${{ needs.see_if_should_skip.outputs.should_skip != 'true' }}
32+
name: Setup node
33+
uses: actions/setup-node@c46424eee26de4078d34105d3de3cc4992202b1e
34+
with:
35+
node-version: 14.x
36+
37+
- if: ${{ needs.see_if_should_skip.outputs.should_skip != 'true' }}
38+
name: Install
39+
run: npm ci
40+
41+
## TODO
42+
# - if: ${{ github.repository == 'github/docs-internal' && needs.see_if_should_skip.outputs.should_skip != 'true' }}
43+
# name: Clone early access
44+
# run: npm run heroku-postbuild
45+
# env:
46+
# DOCUBOT_REPO_PAT: ${{ secrets.DOCUBOT_REPO_PAT }}
47+
# GIT_BRANCH: ${{ github.ref }}
48+
49+
- if: ${{ needs.see_if_should_skip.outputs.should_skip != 'true' }}
50+
name: Build
51+
run: npm run build
52+
53+
- if: ${{ needs.see_if_should_skip.outputs.should_skip != 'true' }}
54+
name: 'Link check: Enterprise Server'
55+
env:
56+
VERSION: 'enterprise-server'
57+
run: npm run link-check

0 commit comments

Comments
 (0)