Summary
Migrate all plures org npm packages from static NPM_TOKEN authentication to npm's Trusted Publishers (OIDC-based keyless publishing). This eliminates the need for manual token rotation and reduces secret sprawl.
Current State (after this commit)
Migration Plan
Phase 1: Provenance Attestation (DONE)
The --provenance flag attaches a Sigstore-signed attestation to each publish, proving the package was built from a specific commit in this repo. This is now live.
Phase 2: Configure npm Trusted Publishers (MANUAL — requires web UI)
For each package, a maintainer must:
- Go to https://www.npmjs.com/package/@plures//access
- Under Publishing access → Trusted Publishers, click "Add trusted publisher"
- Configure:
- Repository owner: plures
- Repository name: the source repo (e.g., pluresdb, praxis, etc.)
- Workflow filename:
elease.yml (the per-repo workflow that calls the reusable one)
- Environment: (leave blank unless using GitHub Environments)
- Repeat for every package
Packages to configure:
Phase 3: Remove Static Token
Once Trusted Publishers is configured and verified:
- Do a test publish from GitHub Actions without NPM_TOKEN set
- Verify the OIDC flow works end-to-end
- Remove NPM_TOKEN from org secrets
- Update the workflow to remove the NODE_AUTH_TOKEN env var (or make it conditional)
References
Interim: Token Rotation
Until Phase 2 is complete, NPM_TOKEN must be rotated periodically. Current rotation schedule: every 90 days. Set a reminder.
Summary
Migrate all plures org npm packages from static NPM_TOKEN authentication to npm's Trusted Publishers (OIDC-based keyless publishing). This eliminates the need for manual token rotation and reduces secret sprawl.
Current State (after this commit)
pm publish (commit 1f4d65b)
Migration Plan
Phase 1: Provenance Attestation (DONE)
The --provenance flag attaches a Sigstore-signed attestation to each publish, proving the package was built from a specific commit in this repo. This is now live.
Phase 2: Configure npm Trusted Publishers (MANUAL — requires web UI)
For each package, a maintainer must:
elease.yml (the per-repo workflow that calls the reusable one)
Packages to configure:
Phase 3: Remove Static Token
Once Trusted Publishers is configured and verified:
References
Interim: Token Rotation
Until Phase 2 is complete, NPM_TOKEN must be rotated periodically. Current rotation schedule: every 90 days. Set a reminder.