Constructing a CI/CD Pipeline for Python Packages Using Jenkins
Introduction
자주 사용하는 Python 함수들을 package로 생성하고 CI/CD pipeline을 Jenkins로 구축하여 자동으로 배포될 수 있게 해보자!
배포는 package 내부의 함수 및 객체를 sphinx로 문서화하고 PyPI (Python Package Index)에 업로드하여 pip로 설치할 수 있게 해볼 것이다.
CI/CD 계획은 아래와 같다.
- Dev Branch Push
- Lint
- Build
- Test
- Master Branch PR
- Lint
- Build
- Test
- Docs
- Master Branch Puah
- Build
- Deploy
- PyPI
- GitHub
이 사항들을 Jenkins로 개발하고 blue ocean으로 확인해보면 아래와 같이 구성된다.

