diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 187fe9d33..baa23eba5 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -17,13 +17,23 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v7 - - uses: pnpm/setup@v1 + # No npm release is cut yet; skip publishing until an NPM_TOKEN secret + # exists instead of failing every push to main. Previews stay on + # pkg.pr.new (docs/preview-packages.md). + - id: gate + env: + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + run: echo "enabled=${{ env.NPM_TOKEN != '' }}" >> "$GITHUB_OUTPUT" + - if: steps.gate.outputs.enabled == 'true' + uses: pnpm/setup@v1 with: cache: true install: false runtime: node@22.19.0 - - run: pnpm install --frozen-lockfile - - uses: changesets/action@v1 + - if: steps.gate.outputs.enabled == 'true' + run: pnpm install --frozen-lockfile + - if: steps.gate.outputs.enabled == 'true' + uses: changesets/action@v1 with: publish: pnpm release version: pnpm version-packages diff --git a/packages/agent-bundle/tests/package-preview-workflow.test.ts b/packages/agent-bundle/tests/package-preview-workflow.test.ts index cb4092f3a..a71861a64 100644 --- a/packages/agent-bundle/tests/package-preview-workflow.test.ts +++ b/packages/agent-bundle/tests/package-preview-workflow.test.ts @@ -32,7 +32,8 @@ it('publishes one locked package preview for pull requests', async () => { }; const steps = parsed.jobs?.publish?.steps ?? []; - expect(Object.keys(parsed.on ?? {})).toEqual(['pull_request']); + expect(Object.keys(parsed.on ?? {})).toEqual(['pull_request', 'push']); + expect((parsed.on as Readonly>)['push']).toEqual({ branches: ['main'] }); expect(parsed.permissions).toEqual({}); expect(steps.map((step) => step.uses ?? step.run)).toEqual([ 'actions/checkout@v7',