Repository navigation
Point the plugin release link at the archive tag #131
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| pull_request: | |
| push: | |
| branches: [main] | |
| permissions: | |
| contents: read | |
| jobs: | |
| compatibility: | |
| name: Node 22.0 / ${{ matrix.os }} | |
| runs-on: ${{ matrix.os }} | |
| timeout-minutes: 10 | |
| # Node 22.0's npm.ps1 is broken on Windows; Bash selects the bundled npm shell shim instead. | |
| # https://github.com/nodejs/node/issues/52682 | |
| defaults: | |
| run: | |
| shell: bash | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-latest, windows-latest, macos-latest] | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| persist-credentials: false | |
| - uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 | |
| with: | |
| node-version: 22.0.0 | |
| package-manager-cache: false | |
| - run: npm ci --omit=dev --ignore-scripts | |
| - run: npm test | |
| - run: npm run pack:check | |
| - run: npm run pack:smoke | |
| quality: | |
| name: Node 24 quality | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 10 | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| with: | |
| persist-credentials: false | |
| - uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 | |
| with: | |
| node-version: 24.18.0 | |
| package-manager-cache: false | |
| - name: Verify release toolchain | |
| run: | | |
| test "$(node --version)" = "v24.18.0" | |
| test "$(npm --version)" = "11.16.0" | |
| - run: npm ci --ignore-scripts | |
| - run: npm audit | |
| - run: npm run check | |
| # A missing entry found at tag time would cost the tagged version, so check it before the tag exists. | |
| - name: Require a changelog entry for an untagged version | |
| run: | | |
| set -euo pipefail | |
| version="$(node --print 'JSON.parse(require("node:fs").readFileSync("package.json", "utf8")).version')" | |
| status=0 | |
| git ls-remote --exit-code --tags origin "refs/tags/v$version" > /dev/null || status=$? | |
| case "$status" in | |
| 0) echo "v$version is tagged, so this check does not apply." ;; | |
| 2) node scripts/check-changelog.js "$version" ;; | |
| *) exit "$status" ;; | |
| esac |