Skip to content

ci(release): 태그 릴리즈에 npm publish 스텝 추가#28

Merged
Bori-github merged 1 commit into
mainfrom
ci/release-npm-publish
Jul 18, 2026
Merged

ci(release): 태그 릴리즈에 npm publish 스텝 추가#28
Bori-github merged 1 commit into
mainfrom
ci/release-npm-publish

Conversation

@Bori-github

Copy link
Copy Markdown
Owner

개요

기존 release 워크플로는 태그 푸시 시 GitHub Release만 만들고 npm 발행은 수동이었습니다. 태그(zpl-core/v*·react-zpl/v*) 푸시에 해당 패키지를 npm에 발행하는 스텝을 추가합니다.

동작

  1. 태그↔package.json 버전 검증 (기존)
  2. pnpm/node 셋업 + pnpm install
  3. --filter "<name>..." 로 대상 패키지 + 워크스페이스 의존성 위상 순서 빌드
  4. pnpm publish (이미 있는 버전은 스킵)
  5. GitHub Release 생성 (기존)

설계 포인트

  • pnpm publish 사용 — react-zpl의 workspace:*/workspace:^ 의존성을 발행 시 실제 버전으로 치환 (npm publish는 미치환)
  • 빌드 선행files: ["dist"]라 dist 없이 발행하면 빈 패키지가 나감
  • 프리릴리즈 dist-tag-rc 등은 latest가 아닌 rc 태그로 발행
  • 재실행 안전 — 이미 올라간 버전은 스킵 (npm 덮어쓰기 금지 대응). npm view <pkg>@<없는버전>이 exit 1을 반환함을 실측해 가드 정상 동작 확인
  • provenanceid-token: write + --provenance로 공급 출처 증명 첨부

머지 전 필요

레포에 NPM_TOKEN 시크릿 등록 필요 (Settings → Secrets and variables → Actions). npm Automation 토큰 권장. provenance는 public 레포에서 동작합니다.

기존 워크플로는 GitHub Release만 만들고 npm 발행은 수동이었다.
태그(zpl-core/v*·react-zpl/v*) 푸시 시 해당 패키지를 npm에 발행하도록 추가.

- pnpm publish로 workspace:* 의존성을 실제 버전으로 치환 (npm publish는 미치환)
- --filter "<name>..." 로 대상 패키지의 워크스페이스 의존성까지 위상 순서 빌드
- 프리릴리즈(-rc 등)는 latest 대신 rc dist-tag로 발행
- 이미 올라간 버전은 재실행 시 스킵 (npm 덮어쓰기 금지 대응)
- id-token: write + --provenance 로 공급 출처 증명 첨부

발행 토큰은 NPM_TOKEN 시크릿으로 주입한다(레포 설정 필요).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@Bori-github Bori-github added the chore Maintenance, tooling, or CI — no user-facing change label Jul 18, 2026
@vercel

vercel Bot commented Jul 18, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
zpl-viewer Ignored Ignored Jul 18, 2026 4:54pm

@Bori-github Bori-github self-assigned this Jul 18, 2026
@Bori-github
Bori-github merged commit fd21314 into main Jul 18, 2026
4 checks passed
@Bori-github
Bori-github deleted the ci/release-npm-publish branch July 18, 2026 16:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

chore Maintenance, tooling, or CI — no user-facing change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant