[CLNP-8355] [ci]: add automated release workflow and update CI to Node 24#1414
[CLNP-8355] [ci]: add automated release workflow and update CI to Node 24#1414sf-tyler-jeong wants to merge 19 commits intomainfrom
Conversation
✅ Deploy Preview for sendbird-uikit-react ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 0fd80e71ef
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
… workflow to merge before publish
…flow shell commands Prevent potential shell injection by using env variables for github.ref_name and github.event.repository.name. Improve rollback step to check existence before reinstalling dependencies instead of silently swallowing errors. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…n release workflow Use python3 import check instead of command -v for requests package detection. Change contents permission from read to write for git tag push. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: bfdf72b909
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| git fetch origin main | ||
| git switch main | ||
| git pull origin main | ||
|
|
||
| - name: Publish to npm | ||
| run: | | ||
| cd ./dist | ||
| npm publish --access=public --provenance |
There was a problem hiding this comment.
Rebuild dist after pulling main before npm publish
The workflow builds dist before merging/pulling main and then publishes without rebuilding, so the published tarball can come from the pre-merge release-branch contents rather than the commit that gets tagged/released on main. This mismatch is possible whenever main has moved or merge resolution changes files, and it can ship artifacts that do not match the Git tag/source of record.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
merge 후 yarn install --immutable && yarn build로 rebuild 스텝을 추가했습니다. 이제 publish되는 tarball이 main merge 후 코드와 일치합니다. (dbf4b11e)
| ['jest-junit', { | ||
| outputDirectory: './test-results', | ||
| outputName: 'junit-report.xml', | ||
| }], |
There was a problem hiding this comment.
Configure jest-junit to emit file paths for retry logic
scripts/failed-test-retry.js only retries failures when each failed <testsuite> includes a file attribute, but the new reporter config does not enable that output. As a result, on failed test runs the retry step often finds zero failed files and exits, so the flaky-test retry path never actually works even though CI now depends on this report.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
addFileAttribute: 'true' 추가하여 JUnit 리포트에 file 속성이 출력되도록 수정했습니다. 이제 failed-test-retry.js가 실패 테스트 파일을 정상적으로 파싱합니다. (dbf4b11e)
Rebuild dist after merging to main so the published tarball matches the tagged commit. Add addFileAttribute to jest-junit config so the retry script can locate failed test files. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add Jira-integrated automated release workflow and modernize CI infrastructure.
Release Automation (
release-workflow.yml- new)CHANGELOG_DRAFT.mdfor GitHub Release body to avoid duplicate titlesCI Updates
actions/checkoutv4 → v6,actions/setup-nodev4 → v6 across all workflowsbuild-and-test.ymlNode version from 16.19.1 → 24 (LTS Krypton)npm_token→NPM_TOKENinpackage-publish.ymlNew Files
CHANGELOG_DRAFT.md: template for per-release changelog (used by release workflow and Jira ticket)Fixes CLNP-8355
Changelogs
CHANGELOG_DRAFT.mdtemplate for release notesChecklist