소프트웨어 개발과 배포를 자동화하여 더 빠르고 안정적인 제품을 제공하는 방법이다.
이를 통해 개발자들은 코드 변경 사항을 자주 병합하고 자동화된 테스트를 거쳐 안정적으로 배포할 수 있다.
고려해야 할 요소
- 소스 관리 관리 : Git
단위 테스트는 개별적인 코드 단위를 검사하여 예상된 결과가 나오는 지 확인하는 과정
코드 커버리지는 어느 정도의 코드가 테스트되었는 지 분석
코드가 정상적으로 동작하는 지 확인하기 위해 빌드 과정을 거친 후
실행 가능한 형식으로 패키징 하여 배포할 수 있도록 함
스테이징은 실제 서비스 환경과 유사한 조건에서 배포해
문제 발생 여부를 검토
인수 테스트는 사용자가 실제로 프로그램을 사용할 때 정상적으로 동작하는 지 검토하는 과정으로 주로 마지막으로 진행한다.
깃허브에서 제공하는 빌드 , 테스트 및 배포
파이프라인을 자동화할 수 있는 CI/CD 서비스
1. 프로젝트에 .github/workflows/<이름>.yml 만들기
2. 깃허브에 코드 push 및 PR
3. 코드 확인 후 merge 및 github action 확인
.github/workflows 경로에 YAML 파일을 만든 후 거기에
github action에 대해 세팅을 해야한다.
yml 예시
name: # 워크플로우 이름
on: # 워크플로우 실행 트리거
jobs: # 작업정의
owner가 아닌 다른 사용자가 코드를 push할 경우
미리 설정한 PR 양식에 맞쳐 PR 요청를 보내면된다.

만약 문제가 없다면 owner가 merge를 진행하면서
github action은 yml에서 설정한데로 자동으로 빌드 및 배포를 진행한다.
밑에 그림은 성공적으로 진행된 모습이다.
