ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • CI/CD 구축 프로젝트
    프로그래밍 지식/Infra 2023. 12. 14. 01:12

    형상 관리를 위한 팀이 별도 존재했지만, 우리 팀을 위한 CI/CD를 별도 구축했다.

    CI/CD 적용 배경

    • 수동 빌드/배포로 인한 반복적인 수작업 및 Human Error 가능성 존재
    • 빌드 산출물 및 릴리즈 버전 파악의 어려움
    • 정적 검증이 타 팀을 통해 이뤄짐으로써 느린 반영, 검증 대기 문제

    CI/CD 목표

    • 빌드에서 배포까지의 과정 자동화
      -> Human Error 최소화, 빠른 피드백 루프
    • Bamboo에서 빌드 history 파악 및 Release 관리, 복구 기능
      -> 소프트웨어 품질 확보
    • CI/CD 파이프라인 내 자체 정적검증(SonarQube), 동적검증(UnitTest) Quality Gate 적용
      -> 소프트웨어 품질 확보

    CI/CD Tool

    • CI/CD Tool : Bamboo
    • Version Control Repository Hosting Service Tool : Bitbucket
    • Static Analysis Tool : SonarQube

    CI/CD 적용에 따른 변화점

      AS-IS TO-BE
    Build 소스코드 검증계 서버로 이동 후 Build 수행 Bamboo Build Plan 실행
    Deploy Build Artifacts 이동 및 프로세스 재기동 Bamboo Build 성공 시 자동 Deploy
    Release 관리 서버 내 백업 Bamboo Release 정보 확인
    정적 검증 시점 배포 후 Merge 전 / 배포 후
    Merge 모든 Commit 대상 Sonar Quality-Gate 통과 Commit 대상
    정적 검증 도구   SonarQube 추가
    동적 검증   Google UnitTest 추가

     

    - Pull Request 생성 시 Flow

    - Pull Request 생성 시 구성도

    - 빌드/배포 시 Flow

    - 빌드/배포 시 구성도

    '프로그래밍 지식 > Infra' 카테고리의 다른 글

    SAA 준비  (0) 2024.08.06
    CI/CD를 구축하며  (0) 2024.01.09
    Spring Boot/React Docker 이미지 만들기  (0) 2023.07.16
    리액트 aws 배포  (0) 2023.06.12
    RDS 연결 안됨  (0) 2023.06.11
Designed by Tistory.