-
Notifications
You must be signed in to change notification settings - Fork 34.4k
129 lines (122 loc) · 4.67 KB
/
validate-markdown.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
name: Validate Markdown
on:
# Trigger the workflow on push or pull request
pull_request_target:
branches:
- main
paths:
- '**.md'
- '**.ipynb'
permissions:
contents: read
id-token: write
issues: write
pull-requests: write
jobs:
check-broken-links-job:
runs-on: ubuntu-latest
steps:
- name: Checkout Repo
uses: actions/checkout@v3
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install Dependencies
run: |
python -m pip install --upgrade pip
- name: Run Check broken paths
run: |
BROKEN_PATHS=$(python ./.github/markdown_checker.py --dir './' --func 'check_broken_paths')
echo "BROKEN_PATHS<<EOF" >> $GITHUB_ENV
echo "$BROKEN_PATHS" >> $GITHUB_ENV
echo "EOF" >> $GITHUB_ENV
- name: Leave broken paths comment
if: ${{ env.BROKEN_PATHS != '' }}
uses: actions/github-script@v6
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: `
We have automatically detected the following broken relative paths in your lessons.
Please check the file paths and associated broken paths inside them.
# Check Broken Paths
${{ env.BROKEN_PATHS }}
`
})
- name: Run Check paths tracking
run: |
PATHS_TRACKING=$(python ./.github/markdown_checker.py --dir './' --func 'check_paths_tracking')
echo "PATHS_TRACKING<<EOF" >> $GITHUB_ENV
echo "$PATHS_TRACKING" >> $GITHUB_ENV
echo "EOF" >> $GITHUB_ENV
- name: Leave paths tracking comment
if: ${{ env.PATHS_TRACKING != '' }}
uses: actions/github-script@v6
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: `
We have automatically detected missing tracking id from the following relative paths in your lessons.
Please check the file paths and associated paths inside them.
# Check Missing Tracking from Paths
${{ env.PATHS_TRACKING }}
`
})
- name: Run Check URLs tracking
run: |
URLS_TRACKING=$(python ./.github/markdown_checker.py --dir './' --func 'check_urls_tracking')
echo "URLS_TRACKING<<EOF" >> $GITHUB_ENV
echo "$URLS_TRACKING" >> $GITHUB_ENV
echo "EOF" >> $GITHUB_ENV
- name: Leave URLs tracking comment
if: ${{ env.URLS_TRACKING != '' }}
uses: actions/github-script@v6
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: `
We have automatically detected missing tracking id from the following URLs in your lessons.
Please check the file paths and associated URLs inside them.
# Check Missing Tracking from URLs
${{ env.URLS_TRACKING }}
`
})
- name: Run Check URLs Country Locale
run: |
URLS_LOCALE=$(python ./.github/markdown_checker.py --dir './' --func 'check_urls_locale')
echo "URLS_LOCALE<<EOF" >> $GITHUB_ENV
echo "$URLS_LOCALE" >> $GITHUB_ENV
echo "EOF" >> $GITHUB_ENV
- name: Leave URLs locale comment
if: ${{ env.URLS_LOCALE != '' }}
uses: actions/github-script@v6
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: `
We have automatically detected added country locale to URLs in your lessons.
Please check the file paths and associated URLs inside them.
# Check Country Locale in URLs
${{ env.URLS_LOCALE }}
`
})
- name: Update workflow run status
if: ${{ env.BROKEN_PATHS != '' }} || ${{ env.PATHS_TRACKING != '' }} || ${{ env.URLS_TRACKING != '' }} || ${{ env.URLS_LOCALE != '' }}
run: exit 1