[CUBRIDQA-1320] sync tc branch with cubrid repo pr#6896
[CUBRIDQA-1320] sync tc branch with cubrid repo pr#6896cubridci merged 51 commits intoCUBRID:developfrom
Conversation
…t_report/test_result
- Remove per-matrix 'Comment TC revert PR link' step from revert-tc-branch job - Add comment-on-engine-pr-revert job that aggregates both TC repo PR links into a single comment using gh pr list --head at runtime - Improve comment-on-engine-pr job readability using heredoc for COMMENT_BODY - New job uses separate GitHub App tokens for public/private TC repos
delete global Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
change for to foce-with-lease Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
|
@greptile |
|
Last reviewed commit: 8d530c2 |
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
|
Last reviewed commit: 2bb193e |
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
|
Last reviewed commit: be14298 |
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
|
Last reviewed commit: 8dc9b11 |
|
@tw-kang (방안1) TC 머지가 되지 않으면 엔진 PR를 merge 할 수 없게 한다. |
방안 1 은 repo rule 을 설정하여 구현가능합니다. 아래와 같은 우회방안이 있어 이후 추가로 구현할 예정입니다. 현재 engine pr 머지가 선행되어 pr closed, 브랜치삭제가 되었을때, |
|
✅ TC Branch Finalized for Engine PR was merged. Cleanup Results: TC develop branch is ready for the next PR. |
|
✅ TC Branch Finalized for Engine PR was merged. Cleanup Results: TC develop branch is ready for the next PR. |
http://jira.cubrid.org/browse/CUBRIDQA-1320
Purpose
Implementation
TC Branch Sync 워크플로우 신규 추가 (
opened,reopened트리거)일반 PR: 엔진 PR 생성 시, 두 TC 저장소(
cubrid-testcases,private-ex)에tc/pr-<N>브랜치를 자동 생성하고 Draft PR을 오픈합니다.Revert PR: 엔진 PR이 Revert PR로 감지되면, 원본 PR에 매핑되는 TC 커밋을 찾아 자동으로
git revert를 수행하고 Open PR을 만듭니다. (Squash / 일반 Merge 모두 유연하게 대응)TC Branch Finalize 워크플로우 신규 추가 (
closed트리거)엔진 PR이 종료(Merged 또는 Closed)되면, TC 저장소에 열려있는 관련 PR을 자동으로 Close 하고
tc/pr-<N>브랜치를 삭제하여 찌꺼기(Orphan) 브랜치가 남지 않도록 정리합니다.Remarks
config.yml에서 동적으로 PR 번호를 파싱해BRANCH_TESTCASES환경 변수를 주입하는 로직과 한 쌍으로 동작합니다.TC_APP_ID및TC_APP_PRIVATE_KEY가 정상적으로 등록되어 있어야 동작합니다.(github app, repo secretes 등록 완료)
CUBRID 개발 프로세스 변경 요약 (TC Branch Sync)
AS-IS (도입 전): 단일 큐 병목 및 CI 오염
공용 TC
develop브랜치를 참조하여, 타인의 TC 변경이 내 CI를 깨뜨리는 상호 간섭 발생.TO-BE (도입 후): PR별 완벽한 테스트 격리 및 필수 검증
전용 TC 브랜치가 자동 생성되며, TC 수정 시 반드시 해당 격리 브랜치 기반으로 CI를 재수행하여 통과해야만 머지가 가능합니다.
핵심 변화 3가지
develop대신 격리된tc/pr-N브랜치를 참조하여 타 PR 간섭을 원천 차단합니다.