커리큘럼

(기초) 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 확인