- SCP 환경에서 적용 가능한 CI/CD 전략은 총 4가지 (strike 항목은 제약 사항 발생으로 사용하지 않음)
- DEV 환경에서는 jenkins만 을 이용하여 CI/CD 진행
- PRD 환경은 CI 는 jenkins, CD 는 TM 이용
- 운영 배포 방안은 배포 환경, 테넌트 구분 없이 패키징 가능한 경우를 가정함 (spring.profiles.active 는 배포 환경, 노드에 따라 적용 가능)
- 개발 배포 방안
- 개발자는 스크럼별 브랜치에 작업 후 DEV 브랜치에 PR생성
- 스크럼 마스터(혹은 스크럼 개발리더) 리뷰 후 PR 승인
- 주기적인 빌드(cron) 유발로 jenkins job 구동 ( 09, 12, 18 시 일 3회)
- job pipeline : 빌드 - 테스트 - 정적 코드 분석 - CF 배포
- 운영 배포 방안 1st (QA, master branch)
- WIRE-CODE - 담당자는 검증 된 develop 브랜치를 QA 브랜치로 Merge
- JENKINS - job 실행
job pipeline : prepare > build > upload to TM Instance - TM - QA Node에 Entry된 Artifact 확인
- TM - Import 실행 및 status 확인
- WIRE-CODE - QA 종료 후 QA 브랜치를 master 브랜치로 Merge
- JENKINS - job 실행
job pipeline : prepare > build > upload to TM Instance - TM - master Node에 Entry된 Artifact 확인
- TM - Import 실행 및 status 확인
- TM - 서비스 정상 기동 확인 후 Forward 실행
- TM - 각 테넌트 Node에 Entry된 Artifact 확인
- TM - Import 실행 및 status 확인
- 운영 배포 방안 2nd (QA branch)
- WIRE-CODE - 담당자는 검증 된 develop 브랜치를 QA 브랜치로 Merge
- JENKINS - job 실행
job pipeline : prepare > build > upload to TM Instance - TM - QA Node에 Entry된 Artifact 확인
- TM - Import 실행 및 status 확인
- TM - QA 종료 후 Forward 실행
- TM - 각 테넌트 Node에 Entry된 Artifact 확인
- TM - Import 실행 및 status 확인
- 운영 배포 최종안
'운영 배포 방안 1st' 와 차이점은 QA 브랜치 의 CD 주체는 TM 이 아닌 jenkins
- WIRE-CODE - 담당자는 검증 된 develop 브랜치를 QA 브랜치로 Merge
- JENKINS - job 실행
job pipeline : prepare > build > deploy - WIRE-CODE - QA 종료 후 QA 브랜치를 master 브랜치로 Merge
- JENKINS - job 실행
job pipeline : prepare > build > upload to TM Instance - TM - master Node에 Entry된 Artifact 확인
- TM - Import 실행 및 status 확인
- TM - 서비스 정상 기동 확인 후 Forward 실행
- TM - 각 테넌트 Node에 Entry된 Artifact 확인
- TM - Import 실행 및 status 확인