TobeDevOps는 애플리케이션의 배포와 운영에 관련된 모든 요소를 Git에서 관리/ 운영하기 위해 GitOps 방식을 사용하며 GitLab을 통한 빌드 자동화가 이루어집니다.
Git Repository에 Push/Merge 등의 이벤트가 발생했을 경우 테스트/빌드/배포와 같은 작업을 자동으로 수행하기 위해 GitLab CI/CD Pipeline을 사용하며 포털에는 Merge Request, Bulid, Issue 기능이 연동되어 있습니다.
포털을 통해 프로젝트에서 생성한 WEB, WAS, XENI 구분 별 Git Repository가 생성되며 생성된 Repository는 [프로젝트 > 프로젝트 개요 > 프로젝트 구성 > 컨테이너 정보 탭]에서 확인할 수 있습니다.
Gitlab은 포털에서 생성한 계정과 KeyCloak으로 연동되며 최초 접근 시 포털 로그인 과정이 추가로 필요합니다.
포털에서 제공되는 기능은 GitLab을 통해 직접 사용할 수 있으며 세부적인 내용을 추가로 확인할 수 있습니다.
프로젝트에 추가된 DB를 제외한 서버(컨테이너)에 생성된 배포 환경(PRD, STG, DEV)은 Git Repository의 브랜치와 태그로 구분됩니다.
배포 환경 | 용도 | 브랜치, 태그 |
---|---|---|
PRD | 프로젝트 운영 | 운영(release-*) 태그 |
STG | 프로젝트 검증 | 검증(main) 브랜치 |
DEV | 프로젝트 개발 | 개발(develop) 브랜치 |
프로젝트 권한에 따라 Git Repository에서 갖는 권한이 달라지며 사용 기능이 제한됩니다.
사용 위치 | GitLab 권한 | Maintainer | Developer | Guest |
---|---|---|---|---|
Repository 기능 | 프로젝트 관리자 | 프로젝트 멤버 | 게스트 | |
Main Branch | 빌드 | O | X | X |
태깅 | O | X | X | |
Merge 승인 | O | X | X | |
Merge 요청 | O | O | X | |
Develop Branch | 소스 수정 | O | O | X |
빌드 | O | O | X | |
- | 이슈 Open | O | O | O |
이슈 Close | O | O | O |
Gitlab에서 사용되는 권한 설명은 Gitlab Roles 문서를 참고해 주세요.