TobeDevOps에서는 프로젝트의 코드 변경 사항을 자동으로 빌드. 테스트, 배포하는 CI 도구인 GitLab-Runner를 사용합니다.
CI/CD 파이프라인이 구성된 Git Repository에 코드 변경 사항을 Push 하거나 브랜치를 통합하는 Merge와 같은 이벤트가 발생하면 자동으로 테스트, 빌드, 배포 작업이 진행됩니다.
소스 빌드, 도커 이미지 생성 및 업로드, GitOps 업데이트 3가지의 Job과정이 기본 제공되며 WEB의 개발 환경은 넥사크로 테스트 단계(Lint)가 추가됩니다.
서버 구분 | 사용 환경 | Job | 설명 |
---|---|---|---|
WEB | DEV | nexacro_test | 넥사크로 소스 테스트 (Lint 연동) |
WEB WAS XENI | DEV STG PRD | build_source | 프로젝트 소스 빌드 |
build_push_docker_image | 도커 이미지 생성 및 이미지 저장소 업로드 | ||
update_gitops | GitOps에 이미지 버전 업데이트 |
Lint란 넥사크로 소스 테스트 도구로 포털에서 프로젝트 Web 서버 생성 시 개발 환경 빌드 단계에 연동됩니다. Lint 사용법은 투비소프트 고객센터로 문의해 주세요.
빌드 조회
[빌드] 메뉴에서는 프로젝트 > 서버 > 배포 환경의 빌드 상태를 확인하고 수동 빌드를 진행할 수 있습니다.
생성된 프로젝트의 서버 목록을 확인할 수 있으며 프로젝트 기본 상태 값은 [Running]입니다. [All] 탭 선택 시 전체 프로젝트 목록을 확인할 수 있습니다.
서버별 목록은 프로젝트 상태 및 조건을 검색하여 사용할 수 있습니다.
사용 방법은 공통 그리드를 참고해 주세요.
프로젝트 서버 목록에서는 프로젝트와 프로젝트가 포함된 스페이스의 기본 정보를 확인할 수 있습니다.
1내가 포함된 프로젝트의 서버를 즐겨찾기하여 사용할 수 있습니다.
2생성된 서버가 속한 스페이스 명칭입니다.
3생성된 서버가 속한 스페이스 아이디입니다.
4생성된 서버가 속한 프로젝트 명칭입니다.
5생성된 서버가 속한 프로젝트 아이디입니다.
6생성된 서버가 속한 프로젝트 상태입니다. 프로젝트 생성 상태에 따라 5개(Running, Error, Stop, Creating, Deleting)의 상태 값이 있습니다.
7생성된 서버의 구분입니다. 생성된 서버의 목록(WEB, WAS, DB, XENI)을 확인할 수 있습니다.
8생성된 서버의 아이디입니다.
생성된 프로젝트의 서버 목록을 확인할 수 있으며 프로젝트 서버 선택 시 해당 서버와 연결된 배포 환경 별 pipeline 목록을 확인합니다.
1선택한 서버의 개발/검증 환경을 직접 빌드합니다.
2선택한 서버의 배포 환경별 빌드된 내역을 확인할 수 있습니다.
[Branch]에서는 브랜치를 수동 빌드할 수 있습니다. 콤보 박스로 빌드 할 Branch 선택 하고 [Run Bulid] 버튼을 클릭하면 브랜치 및 태그가 수동으로 빌드 진행됩니다. 단, 선택한 브랜치의 빌드 권한이 없으면 버튼을 사용할 수 없습니다.
수동 빌드가 발생하거나 Git Repository의 변경 사항을 확인하기 위해 Pipeline 새로 고침을 클릭하여 상태를 갱신합니다.
[Pipeline 목록]에서는 서버 별 Git Repository의 빌드 현황(CI/CD Pipeline) 을 확인합니다. 조회할 빌드 내역을 배포 환경에 따라 확인할 수 있으며 [All]탭 선택 시 전체 목록이 확인됩니다. 선택된 배포 환경별 최신 진행된 3건이 조회되며 Pipeline의 status를 함께 확인할 수 있습니다.
Pipeline status와 status 별 의미는 Gitlab 매뉴얼 Pipline API에서 확인해 주세요.
각 목록의 Pipeline 클릭 시 Git Repository로 이동하여 선택한 Pipeline 상세 정보를 확인할 수 있습니다.
More 버튼 클릭 시 선택된 서버의 전체 Pipeline 목록을 확인할 수 있습니다.
Stages 컬럼에서는 Pipeline 별 Job 상태 및 현황을 보여줍니다. 각 아이콘에 마우스 오버하면 tooltip으로 Job의 명칭과 진행 상태를 확인할 수 있으며 클릭 시 Git Repository로 이동하여 Job의 진행 상태를 상세 log로 확인할 수 있습니다.
빌드 관리
프로젝트 변경 사항이 발생하면 GitLab-Runner를 통해 자동으로 빌드가 진행됩니다. 브랜치 및 태그 별로 빌드 시점의 차이가 발생하며 배포 환경 별 사용 기능은 프로젝트 권한에 따라 달라집니다.
개발 환경 | 브랜치, 태그 | 빌드 방법 | 프로젝트 권한 |
---|---|---|---|
PRD | release-* | 검증 브랜치 태깅 | 프로젝트 관리자 |
STG | Main Branch | 개발 브랜치를 검증 브랜치로 Merge 승인 | 프로젝트 관리자 |
DEV | Develop Branch | 개발 소스 git push | 프로젝트 관리자, 멤버 |
개발 브랜치(Develop Branch)
개발 브랜치는 서버의 프로젝트 개발 환경에서 사용되며 포털 화면의 [빌드 > Pipeline 목록 > DEV 탭]에서 확인합니다.
개발 브랜치는 프로젝트 관리자 및 멤버 권한의 사용자가 제한없이 로컬 개발 환경에서 변경한 소스 코드를 push 할 수 있으며 자동으로 빌드 진행됩니다.
로컬 개발 환경 구성 방법은 [Getting Started_초보자 가이드]를 확인하세요.
검증 브랜치(Main Branch)
검증 브랜치는 서버의 프로젝트 검증 화면에서 사용되며 포털 화면의 [빌드 > Pipeline 목록 > STG 탭]에서 확인합니다.
프로젝트 관리자 권한의 사용자가 개발 브랜치를 검증 브랜치에 Merge하고 빌드 및 배포 과정을 통해 검증 환경을 사용할 수 있습니다.
운영 태그(release-*)
운영 태그(release-*)란 빌드는 프로젝트 운영 환경에서 사용되며 포털 화면의 [빌드 > Pipeline 목록 > PRD 탭]에서 확인합니다.
운영 태그(release-*)는 프로젝트 관리자가 TobeDevOps 내 규칙에 맞게 Git tagging(태깅) 진행할 수 있으며 빌드 및 배포 과정을 통해 운영 환경을 사용할 수 있습니다.