CI(Continuous Integration; 지속적 통합) / CD(Continuous Deployment; 지속적 배포)
협업과정에서 각 개발자들은 자신의 로컬 환경에서 작업을 진행하고 Github과 같은 코드 관리툴의 레포지토리에 올린다. 통합을 거치면서 프로젝트가 완성이되면, 서비스 시작 이전에 테스트, 검증과 빌드 작업을 거쳐야 한다.이 작업을 CI라 부른다.
CI툴 서버는 10초, 1분같이 설정한 시간마다 프로젝트가 push되었는지 요청을 보낸다. 이를 polling이라 부른다. 만약 push 되었다면 서버는 코드를 받아오고 JUnit으로 단위, 통합 테스트를 거친 다음 정상적으로 완료가 되었다면 빌드를 수행하게 된다. 모든 작업이 끝난 후 클라우드 서비스에 테스트 완료된 파일을 전달한다. 이 배포과정을 CD라 한다.
Github 레포지토리의 설정을 통해 push가 되면 hook이라는 이벤트를 발행할 수 있다. polling을 하는 Travis CI툴과는 달리 Jenkins CI툴은 이 hook을 전달받아 CI를 수행한다.
'Today I Learned > AWS' 카테고리의 다른 글
Linux 파일 권한 (0) | 2022.06.28 |
---|---|
PPA (0) | 2022.06.28 |
apt 명령어 (0) | 2022.06.28 |
EC2 (0) | 2022.06.28 |
AWS 접속 시 사용자 명(PuTTY) (0) | 2022.06.28 |