name: Publish to NPM on: workflow_run: workflows: ["Generate CRDs"] types: - completed jobs: publish: if: ${{ github.event.workflow_run.conclusion == 'success' }} runs-on: ubuntu-latest permissions: contents: read id-token: write steps: - name: Checkout repo uses: actions/checkout@v4 with: ref: ${{ github.event.workflow_run.head_branch }} - name: Setup Node.js uses: actions/setup-node@v4 with: node-version: '20' registry-url: 'https://registry.npmjs.org' - name: Install dependencies run: npm i - name: Publish to npm (Trusted Publishing) run: npm publish --provenance --access public env: NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Sometimes required by setup-node, but OIDC does the heavy lifting