Skip to content

Release Godpowers 5.3.1 #327

Release Godpowers 5.3.1

Release Godpowers 5.3.1 #327

Workflow file for this run

name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
permissions:
contents: read
jobs:
test:
name: Test (Node ${{ matrix.node }})
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
node: ['18', '20', '22']
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: ${{ matrix.node }}
- name: Install dependencies
run: npm ci --no-audit --no-fund
- name: Run audit checks
run: npm run test:audit
- name: Run E2E smoke
run: npm run test:e2e
- name: Run full test suite
run: npm test
package:
name: Package check
runs-on: ubuntu-latest
needs: test
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: '20'
- name: Install dependencies
run: npm ci --no-audit --no-fund
- name: Run release gate
run: npm run release:check
- name: Verify install script entry
run: node -e "const pkg = require('./package.json'); if (!pkg.bin || !pkg.bin.godpowers) { console.error('package.json bin.godpowers missing'); process.exit(1); }"
- name: Verify CHANGELOG mentions current version
run: |
VERSION=$(node -e "console.log(require('./package.json').version)")
if ! grep -q "\\[$VERSION\\]" CHANGELOG.md && ! grep -q "Unreleased" CHANGELOG.md; then
echo "CHANGELOG.md missing entry for $VERSION (and no [Unreleased] section)"
exit 1
fi