배포 자동화
- 한번의 클릭 혹은 명령어 입력을 통해 전체 배포 과정을 자동으로 진행하는 것
- 시간 절약 및 휴먼 에러(실수) 방지 가능
- Source - 원격 저장소의 소스 코드에 변경 사항이 일어날 경우, 감지하고 다음 단계로 전달
- Build - Source에서 전달받은 코드를 컴파일, 빌드, 테스트하여 가공
- Deploy - Build에서 받은 것을 실제 서비스에 반영
지속적 통합 (CI : continuous integration)
- 팀 구성원이 각자의 작업을 자주 통합하는 소프트웨어 개발 방식
- Code - 개발자가 코드 저장소에 Push
- Build - 코드 저장소에서 가져와 테스트 후 빌드한다.
- Test - 빌드 결과물이 다른 컴포넌트와 잘 통합되는지 확인
- 모든 코드 변화를 하나의 레포지토리에서 관리함. 투명하게 문제점 파악 가능
- 잦은 pull request와 merge로 코드 통합 이 때 기본적인 테스트 작동 가능
- 머지하기 전에 테스트 오류 확인 등을 통해 보안 이슈, 에러 등을 쉽게 파악 할 수 있다
지속적 배포(CD : continuous delivery / deployment)
- Release - 빌드까지 마치고 어떤 기능이 개발됐는지, 어떤 기능을 추가할지, 배포 할지 안할지 정하는 단계
- Deploy - 실제 배포
- Operation - 배포된 소프트웨어 실제 운용하는 과정. 피드백 받아 기획에 반영
- 최근 클라우드 기술 발전으로 CI/CD를 하나루 묶어 다루는 경우가 증가하고 있다.
- 버전 릴리즈 잘 기록하고 바로 배포하는 사례가 증가하고 있다.
- Github Page에서 정해진 방식에 따라 잘 커밋하면 알아서 index.html 파일과 해당 디렉터리에 있는 파일을 번들링해서 Github page 서버에 업로드.
'코드스테이츠 > section4' 카테고리의 다른 글
최적화(Optimization) (0) | 2022.08.04 |
---|---|
GraphQL (0) | 2022.08.02 |
번들링과 웹팩(WebPack) (0) | 2022.07.25 |