728x90
이번 사이드 프로젝트를 진행하면서 jenkins 배포를 해보았다.
- Jenkins란?
젠킨스(Jenkins)는 오픈소스 CI/CD(Continuous Integration/Continuous Deployment) 도구로, 소프트웨어 개발 과정에서 자동화된 빌드, 테스트, 배포를 지원하는 도구.
- 왜 사용하는가?
- 자동화된 빌드 및 테스트
- 코드 변경 시 자동으로 빌드하고 테스트를 수행하여 코드 품질을 유지
- 지속적인 통합 (CI, Continuous Integration)
- 여러 개발자가 동시에 작업해도 변경 사항을 자동으로 병합 및 검증
- 지속적인 배포 (CD, Continuous Deployment)
- 빌드가 성공하면 프로덕션 환경에 자동으로 배포 가능
- 플러그인 지원
- Git, Docker, Kubernetes, Gradle, Maven 등 다양한 플러그인으로 확장 가능
- 이 프로젝트에서 git의 dev repository와 연결하여 진행했다.
- Jenkins를 사용한 CI/CD 흐름
- 개발자가 Git에 코드 푸시
- Jenkins가 변경 사항 감지
- 코드 빌드 및 테스트 실행
- 테스트 성공 시 배포 자동화
===> Jenkins를 사용하면 개발 속도를 높이고 배포 오류를 줄일 수 있다.

이런식으로 팀원분이 각 환경에 맞는 배포 환경을 셋팅해주셨다
나는 백엔드니까 배포할때 server쪽 옆의 초록색 화살표 모양을 누른 후

이렇게 체크하고 실행을 누르면 배포가 진행된다.

왼쪽 하단에 진행 진척도 및 결과가 뜬다.
배포 성공하면 디스코드로 성공여부에 관한 메시지도 오도록 설정할 수 있다.

실패하면 슬프지만 콘솔 아웃풋이나 파이프라인쪽 코드 읽어보고 원인 찾아야함,,
실제로 이틀전 계속 실패 떠서 읽어보니


이렇게 오류 코드를 보았는데
계속 등장하는 파일명쪽(FavoriteStockResponse)을 확인해보니 실제로 dev브랜치에 푸시할때
저 파일 커밋을 빼먹은 것을 발견했다 ; ; ; ; ;
이런식으로 중간중간 배포를 해주면서 백엔드 API 변동사항을 프론트도 확인할 수 있도록 진행중이다!
그럼 연결된 dev Swagger도 자동으로 변경이 되고 테스트를 해볼 수 있다 ~~
'프로젝트' 카테고리의 다른 글
| (ProfitKey) yml 파일 환경변수 처리 (0) | 2025.02.22 |
|---|---|
| (ProfitKey) api 명세서 작성하기 / 스웨거 (0) | 2025.02.22 |
| (ProfitKey) Jira를 이용한 프로젝트 협업 (0) | 2025.02.20 |
| ProfitKey 프로젝트 (0) | 2025.02.20 |
| web project 1 - 설계/ERD/usecase (2) | 2024.06.06 |