Skip to content

feat(release): add preview build artifacts and guide to release-please PRs#16

Closed
Palbahngmiyine wants to merge 1 commit into
solapi:mainfrom
Palbahngmiyine:worktree-jaunty-seeking-badger
Closed

feat(release): add preview build artifacts and guide to release-please PRs#16
Palbahngmiyine wants to merge 1 commit into
solapi:mainfrom
Palbahngmiyine:worktree-jaunty-seeking-badger

Conversation

@Palbahngmiyine
Copy link
Copy Markdown
Member

Summary

  • release-please PR이 생성/갱신될 때마다 GoReleaser snapshot으로 모든 OS/arch 바이너리를 빌드해 14일 보관 Artifact로 업로드합니다
  • 같은 PR에 한국어 다운로드·실행 가이드를 자동 댓글(idempotent 갱신)로 남겨 머지 전에 새 버전을 검증할 수 있도록 합니다
  • .goreleaser.yaml의 snapshot은 v2.2의 새 키 version_template로 마이그레이션하여 binary 버전이 preview 태그와 일치하게 했습니다

Test plan

  • release-please workflow가 trigger되어 PR을 새로 만들 때 preview-release-pr job이 실행되는지 확인
  • PR 댓글이 한 번만 생성되고, 이후 main push 시 같은 댓글이 PATCH로 갱신(idempotent)되는지 확인
  • 가이드의 gh run download 명령으로 artifact 다운로드 후 solactl version 실행 시 solactl X.Y.Z-preview-<sha7> (commit: ..., date: ...) 출력 확인
  • release_created=true 경로에서는 preview job이 skip되고 기존 goreleaser job만 동작하는지 확인
  • artifact 보관 기간(14일)·GitHub 로그인 필요 안내가 댓글에 반영되어 있는지 확인

🤖 Generated with Claude Code

…e PRs

When release-please opens or updates a release PR, build snapshot
binaries for every supported OS/arch via GoReleaser, upload them as a
workflow artifact, and post (or idempotently update) a Korean
download/usage guide as a PR comment. Reviewers can verify the next
version end-to-end before merging the release PR.

- Add preview-release-pr job to .github/workflows/release-please.yml
- Add comment body template at .github/templates/preview-build-comment.md.tmpl
- Add snapshot.version_template to .goreleaser.yaml so the binary
  version matches the preview tag and resolves the v2.2 deprecation

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a markdown template for preview build comments and updates the GoReleaser configuration to include a snapshot version template. Feedback was provided to correct the Windows execution path in the documentation template, as the current command incorrectly assumes a subdirectory. Additionally, it was suggested to update the GoReleaser snapshot version template to include the short commit hash, ensuring consistency with the naming conventions used in the preview build instructions.

Comment on lines +48 to +49
Expand-Archive solactl_${VERSION}-preview-${SHORT_SHA}_windows_amd64.zip -DestinationPath .
.\solactl_${VERSION}-preview-${SHORT_SHA}_windows_amd64\solactl.exe version
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

Windows 가이드에서 Expand-Archive 명령을 -DestinationPath .와 함께 사용하면 압축 파일 내의 파일들이 현재 디렉토리에 바로 풀립니다. 현재 .goreleaser.yaml 설정상 압축 파일 내부에 별도의 디렉토리 구조(wrap_in_directory)가 없으므로, solactl.exe는 현재 위치에 생성됩니다. 따라서 하위 디렉토리 경로를 포함한 실행 명령은 실패하게 됩니다. 실행 경로를 .\solactl.exe로 수정하는 것이 좋습니다.

Expand-Archive solactl_${VERSION}-preview-${SHORT_SHA}_windows_amd64.zip -DestinationPath .
.\solactl.exe version

Comment thread .goreleaser.yaml
name_template: checksums.txt

snapshot:
version_template: '{{ .Version }}'
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

snapshot.version_template'{{ .Version }}'으로 설정하면 GoReleaser의 기본 스냅샷 버전 규칙(보통 {{ .Tag }}-next)이 사용됩니다. 가이드 템플릿(.github/templates/preview-build-comment.md.tmpl)에서 안내하는 ${VERSION}-preview-${SHORT_SHA} 형식과 바이너리 버전 및 파일명을 일치시키려면 템플릿을 명시적으로 지정하는 것이 좋습니다.

  version_template: '{{ .Version }}-preview-{{ .ShortCommit }}'

@Palbahngmiyine Palbahngmiyine deleted the worktree-jaunty-seeking-badger branch May 8, 2026 06:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant