커리큘럼
(기초) Get started with GitLab CI
- [목표] GitLab CI 파이프라인 구조 이해
- CI/CD 개념 및 GitLab CI 파이프라인 이해
- .gitlab-ci.yml 파일의 구성요소 이해
- [실습] echo 명령어로 GitLab CI 이해하기
- “Hello GitLab CI” 프로젝트 생성
- .gitlab-ci.yml 파일 생성 및 구성
- GitLab CI 파이프라인 실행 및 결과 확인
(기본) Basic GitLab CI
- [목표] GitLab CI를 이용하여 Spring Boot 애플리케이션의 지속적 통합을 수행하는 방법 이해
- Spring Boot를 사용하여 Hello World REST API 구현
- GitLab CI 파이프라인에서 Maven을 이용하여 Spring Boot 애플리케이션 빌드
- GitLab CI 파이프라인에서 JUnit 5을 이용하여 단위 테스트
- [실습] Hello World REST API 구현 및 CI 파이프라인 구성
- Spring Boot 이해 및 Spring Initializr로 Spring Boot 프로젝트 생성
- STS (Spring Tool Suite) IDE에서 “Hello World” Spring Boot Maven 프로젝트 구성
- Greeting(인사말) REST API 구현
- 로컬 PC에서 애플리케이션 실행 및 REST API 테스트
- “Hello World” GitLab 프로젝트 생성
- .gitignore 파일 이해 및 Git 명령어 실행
- .gitlab-ci.yml 파일 생성 (build 단계 구성) 및 CI 파이프라인 결과 확인
- JUnit 단위 테스트 코드 작성
- .gitlab-ci.yml 파일에 “test” 단계 추가 및 CI 파이프라인 결과 확인
- Cache를 사용하여 GitLab CI 속도 개선
(심화) Advanced GitLab CI
- [목표] GitLab 워크플로우 기반으로 Siren Order 백엔드(Back-end) 서버를 구현함으로써 GitLab을 이용한 DevOps 과정 이해
- GitLab 협업 워크플로우 이해 (브랜치, 이슈, 병합 요청)
- Spring Boot를 사용하여 스타벅스 사이렌 오더(Siren Order) 클론 애플리케이션의 REST API 구현
- GitLab Container Registry 이해
- GitLab CI 파이프라인으로 애플리케이션의 Docker 이미지를 빌드하고 GitLab Container Registry에 Push 하는 방법 이해
- [실습] Siren Order 백엔드(REST API) 서버 구현 및 CI 파이프라인 구성
- “Siren Order API” GitLab 프로젝트 생성 (Template 프로젝트 Import)
- 초기 CI 파이프라인 구성 및 결과 확인
- GitLab 이슈 생성 (주문 API 기능 추가)
- Feature 브랜치 생성
- 로컬 Git Repository 구성
- STS에서 Spring Boot Maven 프로젝트 구성
- Siren Order API 애플리케이션 실행
- Postman 설정 및 Menu API 테스트
- 주문 API 기능 구현 및 API 테스트
- 단위 테스트 코드 작성 및 실행
- GitLab 리포지토리에 Git Push (git commit/push)
- CI 파이프라인 결과 확인
- Merge Request 생성
- 코드 리뷰 및 Merge
- Dockerfile 생성
- .gitlab-ci.yml 파일에 Docker build & push 단계 구성
- CI 파이프라인 결과 및 GitLab Container Registry 확인