Update workflows to use reusable-workflows

This commit is contained in:
IvanZosimov 2022-12-14 15:11:36 +01:00
parent 339692abda
commit 1370292ad9
5 changed files with 30 additions and 83 deletions

View file

@ -1,8 +1,3 @@
# `dist/index.js` is a special file in Actions.
# When you reference an action with `uses:` in a workflow,
# `index.js` is the code that will run.
# For our project, we generate this file through a build process from other source files.
# We need to make sure the checked-in `index.js` actually matches what we expect it to be.
name: Check dist/
on:
@ -17,36 +12,7 @@ on:
workflow_dispatch:
jobs:
check-dist:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set Node.js 16.x
uses: actions/setup-node@v3
with:
node-version: 16.x
cache: npm
- name: Install dependencies
run: npm ci
- name: Rebuild the dist/ directory
run: npm run build
- name: Compare the expected and actual dist/ directories
run: |
if [ "$(git diff --ignore-space-at-eol dist/ | wc -l)" -gt "0" ]; then
echo "Detected uncommitted changes after build. See status below:"
git diff
exit 1
fi
id: diff
# If index.js was different than expected, upload the expected version as an artifact
- uses: actions/upload-artifact@v3
if: ${{ failure() && steps.diff.conclusion == 'failure' }}
with:
name: dist
path: dist/
call-check-dist:
name: Check dist/
#uses: actions/reusable-workflows/.github/workflows/check-dist.yml@main
uses: IvanZosimov/reusable-workflows/.github/workflows/check-dist.yml@main

15
.github/workflows/codeql-analysis.yml vendored Normal file
View file

@ -0,0 +1,15 @@
name: CodeQL analysis
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
schedule:
- cron: '0 3 * * 0'
jobs:
call-codeQL-analysis:
name: CodeQL analysis
#uses: actions/reusable-workflows/.github/workflows/codeql-analysis.yml@main
uses: IvanZosimov/reusable-workflows/.github/workflows/codeql-analysis.yml@main

View file

@ -9,20 +9,7 @@ on:
- main
jobs:
test:
runs-on: ubuntu-latest
name: Check licenses
steps:
- uses: actions/checkout@v3
- name: Set Node.js 16.x
uses: actions/setup-node@v3
with:
node-version: 16.x
- run: npm ci
- name: Install licensed
run: |
cd $RUNNER_TEMP
curl -Lfs -o licensed.tar.gz https://github.com/github/licensed/releases/download/3.4.4/licensed-3.4.4-linux-x64.tar.gz
sudo tar -xzf licensed.tar.gz
sudo mv licensed /usr/local/bin/licensed
- run: licensed status
call-licensed:
name: Licensed
#uses: actions/reusable-workflows/.github/workflows/licensed.yml@main
uses: IvanZosimov/reusable-workflows/.github/workflows/licensed.yml@main

View file

@ -1,4 +1,5 @@
name: build-test
on:
push:
branches:
@ -8,32 +9,9 @@ on:
pull_request:
paths-ignore:
- '**.md'
jobs:
run:
name: Run
runs-on: ${{ matrix.operating-system }}
strategy:
matrix:
operating-system: [ubuntu-latest, windows-latest]
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup node 16
uses: actions/setup-node@v3
with:
node-version: 16
cache: npm
- name: npm ci
run: npm ci
- name: Lint
run: npm run format-check
- name: npm test
run: npm test
- name: audit packages
run: npm audit --audit-level=high
if: matrix.operating-system == 'ubuntu-latest'
call-basic-validation:
name: Basic validation
#uses: actions/reusable-workflows/.github/workflows/basic-validation.yml@main
uses: IvanZosimov/reusable-workflows/.github/workflows/basic-validation.yml@main

View file

@ -8,6 +8,7 @@
"build": "tsc && ncc build -o dist/setup src/setup-go.ts && ncc build -o dist/cache-save src/cache-save.ts",
"format": "prettier --write **/*.ts",
"format-check": "prettier --check **/*.ts",
"lint": "",
"test": "jest --coverage",
"pre-checkin": "npm run format && npm run build && npm test"
},