name: Publish TypeScript package on: workflow_dispatch: push: tags: - "typescript-v*" jobs: publish: runs-on: ubuntu-latest environment: npm permissions: contents: read id-token: write steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: node-version: "24" registry-url: https://registry.npmjs.org cache: npm - run: npm ci - name: Verify tag matches package version run: test "${GITHUB_REF_NAME#typescript-v}" = "$(node -p 'require("./package.json").version')" # Keep native SQLite lifecycle coverage deterministic and verify the # current Node LTS used by generated TeaQL projects. - run: npm test -- --runInBand - run: npm run build - name: Upgrade npm for trusted publishing run: npm install --global npm@latest - run: npm publish --access public