💚 어떤 기능인가요?
main 에 머지해도 운영 배포가 되지 않는다. 배포용 시크릿이 비어 있어
Deploy to Production (Blue/Green) 잡이 첫 스텝에서 죽는다.
| 머지 | 결과 |
|---|
| #78 (2026-08-12) | Test/Build/Scan 통과, Deploy to Production 실패 |
| #80 (2026-08-22) | Test/Build/Scan 통과, Deploy to Production 실패 |
success 3. Determine deployment strategy
failure 4. Deploy to target environment ← test -n "${{ secrets.PRODUCTION_DEPLOY_HOST }}"
skipped 5. Wait for target instance to be ready
skipped 6. Switch traffic to new environment
failure 8. Rollback if needed ← PRODUCTION_ROUTER_SWITCH_URL 도 비어 있음
로그에서 PRODUCTION_HEALTH_URL: 이 공란으로 찍힌다.
컨테이너를 띄우기 전에 멈추므로 운영 인스턴스를 건드리지는 않는다. 장애는 없다.
문제는 그 반대다 — 아무것도 배포되지 않는데 파이프라인이 그걸 조용히 넘기지 않고
매번 빨간불로 끝나서, 이제는 그 빨간불이 정상처럼 보인다.
지금 당장 문제가 되는 이유
#80 이 P0 두 건(#82 가입 시 role 신뢰, #83/users 권한 상승)을 고쳤지만
운영에는 반영되지 않았다. 코드가 main 에 있을 뿐이다.
수동 배포를 하지 않으면 "누구나 관리자가 될 수 있는" 상태가 그대로 남는다.
확인이 필요한 시크릿
Deploy to Staging 은 develop 브랜치용이라 지금은 skip 된다. 운영 쪽만 보면 된다.
PRODUCTION_DEPLOY_HOSTPRODUCTION_DEPLOY_USERPRODUCTION_HEALTH_URLPRODUCTION_ROUTER_STATUS_URLPRODUCTION_ROUTER_SWITCH_URLPRODUCTION_ROUTER_TOKENPRODUCTION_TARGET_HEALTH_URL_TEMPLATE
또 SSH 로 접속하는데 워크플로에 개인키를 로드하는 스텝이 없다.
ssh -o StrictHostKeyChecking=no ... 만 있어서, 시크릿을 채워도 인증에서 다시 막힐 가능성이 크다.
(테스트·스캔 잡에 배포키를 올리지 않으려고 의도적으로 뺀 흔적이 주석에 있는데,
정작 배포 잡에도 추가되지 않았다.)
배포 시 함께 필요한 환경변수
#80 에서 인증 메일 기준 주소를 필수로 바꿨다. 없으면 기동이 실패한다(의도된 fail-fast).
✅ To Dos
💚 어떤 기능인가요?
main에 머지해도 운영 배포가 되지 않는다. 배포용 시크릿이 비어 있어Deploy to Production (Blue/Green)잡이 첫 스텝에서 죽는다.로그에서
PRODUCTION_HEALTH_URL:이 공란으로 찍힌다.컨테이너를 띄우기 전에 멈추므로 운영 인스턴스를 건드리지는 않는다. 장애는 없다.
문제는 그 반대다 — 아무것도 배포되지 않는데 파이프라인이 그걸 조용히 넘기지 않고
매번 빨간불로 끝나서, 이제는 그 빨간불이 정상처럼 보인다.
지금 당장 문제가 되는 이유
#80 이 P0 두 건(#82 가입 시
role신뢰, #83/users권한 상승)을 고쳤지만운영에는 반영되지 않았다. 코드가
main에 있을 뿐이다.수동 배포를 하지 않으면 "누구나 관리자가 될 수 있는" 상태가 그대로 남는다.
확인이 필요한 시크릿
Deploy to Staging은develop브랜치용이라 지금은 skip 된다. 운영 쪽만 보면 된다.PRODUCTION_DEPLOY_HOSTPRODUCTION_DEPLOY_USERPRODUCTION_HEALTH_URLPRODUCTION_ROUTER_STATUS_URLPRODUCTION_ROUTER_SWITCH_URLPRODUCTION_ROUTER_TOKENPRODUCTION_TARGET_HEALTH_URL_TEMPLATE또 SSH 로 접속하는데 워크플로에 개인키를 로드하는 스텝이 없다.
ssh -o StrictHostKeyChecking=no ...만 있어서, 시크릿을 채워도 인증에서 다시 막힐 가능성이 크다.(테스트·스캔 잡에 배포키를 올리지 않으려고 의도적으로 뺀 흔적이 주석에 있는데,
정작 배포 잡에도 추가되지 않았다.)
배포 시 함께 필요한 환경변수
#80 에서 인증 메일 기준 주소를 필수로 바꿨다. 없으면 기동이 실패한다(의도된 fail-fast).
/opt/carecode/.env에EMAIL_VERIFICATION_BASE_URL추가 — 자세한 내용은 [ Infra ] #80 머지 전 운영 전제 확인 (XFF 신뢰, 리프레시 토큰 저장소) #90✅ To Dos
webfactory/ssh-agent등)/opt/carecode/.env에EMAIL_VERIFICATION_BASE_URL추가Notify deployment status는 echo 만 한다)