## 📝 Description > 지금은 테스트가 실패하거나 아직 돌고 있어도 머지 버튼이 눌리고, main 에 머지되는 순간 운영 배포가 시작됩니다. 테스트와 배포를 잇는 장치가 아무것도 없습니다. - **배포는 테스트를 기다리지 않습니다**: `ci-prod.yml:3-5` 가 main push 로 바로 시작하고, `ci-prod.yml:44` 는 `-x test` 로 빌드하며, `deploy-prod` 는 이미지 빌드만 기다립니다(`ci-prod.yml:69`). - **main 의 Test 는 배포와 나란히 돕니다**: `test.yml:9-10` 이 같은 push 로 따로 시작합니다. 2026-09-21 배포는 05:50:39 에 끝났고 Test 는 05:53:23 에 끝났습니다. - **PR 단계 테스트도 강제가 아닙니다**: `gh api repos/AI-SIP/OnO_BACKEND/branches/main/protection` 결과가 `Branch not protected` 이고 ruleset 도 비어 있습니다. #331 은 테스트 통과 22초 뒤에 머지해서 괜찮았던 것이지 규칙으로 막힌 것은 아닙니다. ## ✅ TODO - [ ] main, develop 에 branch protection 설정 (PR 필수, `격리 환경 테스트` required check, 리뷰 승인은 요구하지 않음) - [ ] 관리자는 예외로 둬서 긴급 핫픽스 때 우회할 수 있게 하기 - [ ] `test.yml:4` 의 "ci-dev / ci-prod 는 workflow_dispatch 수동 실행" 주석이 실제와 달라서 고치기 ## 💡 ETC - **워크플로는 고치지 않습니다**: 머지가 막히면 배포도 막히기 때문에 `ci-prod.yml` 에 `needs` 를 거는 것보다 영향이 작습니다. 배포가 4~7분 늦어지는 것도 없습니다. - **관리자 우회는 그대로 남습니다**: 관리자가 머지하면 테스트 없이 배포될 수 있어서, 우회는 긴급할 때만 써야 할 것 같습니다.
📝 Description
ci-prod.yml:3-5가 main push 로 바로 시작하고,ci-prod.yml:44는-x test로 빌드하며,deploy-prod는 이미지 빌드만 기다립니다(ci-prod.yml:69).test.yml:9-10이 같은 push 로 따로 시작합니다. 2026-09-21 배포는 05:50:39 에 끝났고 Test 는 05:53:23 에 끝났습니다.gh api repos/AI-SIP/OnO_BACKEND/branches/main/protection결과가Branch not protected이고 ruleset 도 비어 있습니다. [Release] develop 을 운영에 반영한다 - 복습 리마인더, 미션, 꾸미기, 스터디룸 챌린지와 인증·알림 정합성 수정 #331 은 테스트 통과 22초 뒤에 머지해서 괜찮았던 것이지 규칙으로 막힌 것은 아닙니다.✅ TODO
격리 환경 테스트required check, 리뷰 승인은 요구하지 않음)test.yml:4의 "ci-dev / ci-prod 는 workflow_dispatch 수동 실행" 주석이 실제와 달라서 고치기💡 ETC
ci-prod.yml에needs를 거는 것보다 영향이 작습니다. 배포가 4~7분 늦어지는 것도 없습니다.