# reference: https://docs.npmjs.com/generating-provenance-statements name: Publish on: push: tags: # expected format: @ (example: socket.io@1.2.3) - '**@*' jobs: publish: runs-on: ubuntu-latest permissions: contents: read id-token: write steps: - name: Checkout repository uses: actions/checkout@v4 - name: Use Node.js 20 uses: actions/setup-node@v4 with: node-version: 20 registry-url: 'https://registry.npmjs.org' - name: Install dependencies run: npm ci - name: Compile each package run: npm run compile --workspaces --if-present - name: Publish package run: npm publish --workspace=${GITHUB_REF_NAME%@*} --provenance --access public env: NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}