Release / release (push) Canceled after 1m42s
actions/setup-node's registry-url sets the *default* npm registry for every install, not just publishing - since triggershell is an unscoped package name, that meant `pnpm install` tried to fetch every ordinary dependency (zod, typescript, ws, ...) from dev.pivoine.art/api/packages/valknar/npm/ instead of the public npm registry, and got hammered with 429s retrying each one. Removes registry-url from setup-node entirely (installs go back to the default public registry) and instead scopes the auth token to just that one registry host+path via `pnpm config set "//dev.pivoine.art/api/packages/valknar/npm/:_authToken" ...` right before the publish step - publishConfig.registry in package.json already tells `pnpm publish` specifically where to go (verified locally via `pnpm publish --dry-run` earlier), this only supplies the matching credential without touching install resolution. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
43 lines
1.2 KiB
YAML
43 lines
1.2 KiB
YAML
name: Release
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- "v*.*.*"
|
|
|
|
jobs:
|
|
release:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: https://github.com/actions/checkout@v4
|
|
|
|
- uses: https://github.com/pnpm/action-setup@v4
|
|
with:
|
|
version: 11.21.0
|
|
|
|
- uses: https://github.com/actions/setup-node@v4
|
|
with:
|
|
node-version: 22
|
|
|
|
- run: pnpm install --frozen-lockfile
|
|
|
|
- run: pnpm run lint
|
|
- run: pnpm run typecheck
|
|
- run: pnpm run format:check
|
|
- run: pnpm run test
|
|
- run: pnpm run build
|
|
|
|
- name: Set package version from the tag
|
|
run: npm pkg set version="${GITHUB_REF_NAME#v}"
|
|
|
|
# Scoped to this one registry host+path (via publishConfig.registry in package.json) rather
|
|
# than actions/setup-node's registry-url, which would set it as the *default* registry for
|
|
# every install - breaking `pnpm install` for this project's own (unscoped, public) deps.
|
|
- name: Configure registry auth for publish
|
|
run: pnpm config set "//dev.pivoine.art/api/packages/valknar/npm/:_authToken" "$PACKAGE_TOKEN"
|
|
env:
|
|
PACKAGE_TOKEN: ${{ secrets.PACKAGE_TOKEN }}
|
|
|
|
- name: Publish to Gitea npm registry
|
|
run: pnpm publish --no-git-checks
|