CI/CD 란 무엇인가?

continuous Integration 코드를 통합하는 것
continuous delivery 코드를 작성만 하면 바로 쓸 수 있도록 배달하는 것
continuous deployment 배포를 자동화하는 것

ci를 해야하는 이유 : merge 지옥을 경험하지 않기 위해서
cd를 해야하는 이유 : 한번에 모아서 하면 천줄 넘어가면서 CTO가 혼자서 다 배포하고 죽는다.

정리: 개발자는 코드만 짜면 된다. 다른거는 니(jenkins)가 다 해라


Jenkins의 기본 개념과 동작 방식

java runtime위에서 동작하는 자동화 서버
빌드, 테스트, 배포 등 모든 것은 자동화해주는 자동화 서버

다양한 플러그인(핵심)을 활용해서 각종 자동화 작업을 처리할 수 있음

~말 많은 플러그인이 존재함
대표적인 것들
Credential plugins
Git plugins

Pipeline

플러그인들의 집합


개발 환경 및 CI/CD의 기본 동작 이해

개발환경의 종류는?
local
develop(개발자들끼리)
qa를 위한 환경
prod(실제 사용자 환경)

개발순서
local 개발 -> 내부 테스트
dev 브랜치에 merge
젠킨스가 땡겨와서 lint등 코드 포메팅을 한다.
빌드
배포
테스트 진행

위 과정을 dev, qa, prod 모두에서 실행한다.


Jenkins 및 플러그인 설치 실습


CI/CD 파이프라인 구축 및 QnA


실제 운영 환경에서 Jenkins 사용 사례 알아보기( DW ETL pipeline)

profile
사람들을 돕는 문제 해결사, 개발자 sudong입니다. 반갑습니다. tkddlsqkr21@gmail.com

0개의 댓글

Powered by GraphCDN, the GraphQL CDN