Skip to content

Wiki bot update

Wiki bot update #178

Workflow file for this run

name: Run checks
on:
push:
branches-ignore:
# ignore wiki-bot-update branches, because internal pull requests trigger both the on push and the on pull request event
- wiki-bot-update-*
pull_request:
branches:
- master
jobs:
setup:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
with:
# we need the whole history to run commitlint correctly if multiple commit are pushed at the same time
fetch-depth: 0
path: workspace
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: 20
- name: Setup npm
run: npm install -g npm@10
- name: Cache Node.js modules
uses: actions/cache@v3
with:
# npm cache files are stored in `~/.npm` on Linux/macOS
path: ~/.npm
key: ${{ runner.OS }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.OS }}-node-
- name: Install dependencies
working-directory: workspace
run: npm ci
- name: Cache workspace
uses: actions/cache@v3
with:
path: workspace
key: workspace-${{ github.sha }}
test:
needs: setup
runs-on: ubuntu-latest
steps:
- name: Cache workspace
uses: actions/cache@v3
with:
path: workspace
key: workspace-${{ github.sha }}
- name: Run tests
working-directory: workspace
run: npm run test:ci
# don't use setup job, because we may need to check out the master branch, which will not work if we only restore the workspace
commitlint:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
with:
# we need the whole history to run commitlint correctly if multiple commit are pushed at the same time
fetch-depth: 0
path: workspace
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: 20
- name: Setup npm
run: npm install -g npm@10
- name: Cache Node.js modules
uses: actions/cache@v3
with:
# npm cache files are stored in `~/.npm` on Linux/macOS
path: ~/.npm
key: ${{ runner.OS }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.OS }}-node-
- name: Install dependencies
working-directory: workspace
run: npm ci
- name: Checkout master branch
if: github.ref_name != 'master'
working-directory: workspace
run: git fetch origin master && git checkout master && git pull
- name: Change back to triggered branch
if: github.ref_name != 'master'
working-directory: workspace
run: git checkout ${{ github.ref_name }}
- name: Run commitlint on push to master
if: github.ref_name == 'master'
working-directory: workspace
run: npx --no -- commitlint --from ${{ github.event.before }} --verbose
- name: Run commitlint on push to branch
if: github.ref_name != 'master'
working-directory: workspace
run: npx --no -- commitlint --from refs/heads/master --verbose
eslint:
needs: setup
runs-on: ubuntu-latest
steps:
- name: Cache workspace
uses: actions/cache@v3
with:
path: workspace
key: workspace-${{ github.sha }}
- name: Run eslint
working-directory: workspace
run: npm run eslint
stylelint:
needs: setup
runs-on: ubuntu-latest
steps:
- name: Cache workspace
uses: actions/cache@v3
with:
path: workspace
key: workspace-${{ github.sha }}
- name: Run stylelint
working-directory: workspace
run: npm run stylelint
markdownlint:
needs: setup
runs-on: ubuntu-latest
steps:
- name: Cache workspace
uses: actions/cache@v3
with:
path: workspace
key: workspace-${{ github.sha }}
- name: Run markdownlint
working-directory: workspace
run: npm run markdownlint