728x90
배포? 밸드? 컴파일
배포란 개발자가 수정한 코드를 서버에 반영하는 것을 말합니다. 그리고 배포하는 과정을 '빌드' 과정이라 합니다.
빌드
- 소스 코드를 컴퓨터에서 실행시킬 수 있도록 변환하는 것
빌드 툴의 종류
- 전처리(processing)
- 컴파일(compile)
- 패키징(packaging)
- 테스팅(testing)
- 배포(distribution)
빌트 툴
- Ant
- Maven
- Gradle
컴파일
- 코드를 컴퓨터가 이해할 수 있는 언어로 바꾸는 과정
- 빌드 과정의 일부
Jenkins
설명
- 개발 작업 자동화, 파이프라인 사용하여 대부분의 언어의 조합과 소스코드 리포지토리에 대한 CICD를 지원하는 도구
동작 방식
- 자바, 홈브루, 도커, 소스코드 형태로 사용
- 소스코드는 대부분 자바이며 그 외 그르부, 루비, 앤틀러(ANTLR, Another Tool For language Recognition) 파일이 들어있음
- 젠킨스 실행 시 웹 화면 생성하여 REST API 호출로 구동
장점
- 표준 컴파일 환경에서 컴파일 오류 검출
- 자동화 테스트
- 코딩 규약 준수여부 체크
- 프로파일링으로 소스 변경으로 인한 성능 변화 감시
- 테스트 환경에 대한 배포 작업
- 다수의 지원 플러그인
GitHub Actions
개념
- Github 저장소를 기반으로 소프트웨어 개발 Workflow 자동화할 수 있는 도구
- Runners라는 불리는 github가 호스팅하는 Linux, macOS, Windows 환경에서 실행
- Workflow 공유 가능
사용 리밋
- workflow는 저장소마다 최대 20개까지 등록 가능
- Job 단계는 최대 6시간 실행
- 플랜에 따라 동시 실행 가능한 Job 수가 다름
장점
- workflow를 가져다 쓰기 좋다
- github 연계 서비스
- 라이브 로그
- 다중 컨테이너 테스트
차이점
Jenkins | GitHub Actions |
---|---|
서버 설치 필요 | 불필요(클라우드가 있음) |
도커 이미지에서 실행 | 모든 환경과 호환 |
캐싱 메커니즘을 위해 플로그인 사용 | 자체 캐싱 매커니즘 작성 필요 |
공유 불가 | 마켓 플레이스에 공유 |
관련 사례 정보 찾기 쉬움 | 상대적으로 정보가 부족 |
페이스북, 넷플릭스, 쿠팡, 카페24 등등 | 업스테이지 AI, Be pro 등등 |
레퍼런스
728x90
'Research > CICD' 카테고리의 다른 글
Github 액션 관련 요약 (0) | 2023.12.09 |
---|---|
CICD_github action-s3-codedeploy로 CICD 구축하기 (0) | 2023.03.10 |
깃허브 액션 관련 영상 요약 (0) | 2023.02.15 |
댓글