-
Notifications
You must be signed in to change notification settings - Fork 48
41 lines (41 loc) · 1.03 KB
/
ci-pipeline.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
name: '[CI/CD] CI Pipeline'
on: # Test pull requests and any push to main.
push:
branches:
- main
pull_request:
branches:
- main
permissions: # Force read permissions
contents: read
jobs:
verify:
name: Verify
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: '16.x'
- name: Cache dependencies
uses: actions/cache@v3
with:
path: ~/.npm
key: npm-${{ hashFiles('package-lock.json') }}
restore-keys: npm-
- id: markdownlint
name: Install mardownlint
run: npm install -g markdownlint-cli
- id: npm-ci
name: Clean install
run: npm ci
- name: Linters
run: |
npm run lint
markdownlint *.md **/*.md
- name: Tests
# Run tests if linter fails
if: always() && steps.npm-ci.outcome == 'success'
run: npm run test-ci