프론트엔드 개발자로 일하면서 지식의 부족함을 많이 느껴 짬이 날때마다 그 동안 궁금했던 단어들을 찾아보고자 한다.
그 중 어제 찾아봤던 부부은 CI/CD에 대한 부분이다.
사실 세팅까지 해서 적용해보는게 의미가 있는 부분이라고 생각하긴 하지만 현재 업무에는 이미 적용되어있는 부분이 있어서 일단 어떤 의미인지 먼저 찾아봤다.
CI | CD |
---|---|
Continuous Integration | Continuous Delivery |
지속적 통합 | 지속적 배포 |
CI(지속적 통합)은 프로젝트를 빌드하고 테스트하는 과정을 자동화한 것
로컬에서 작업한 코드를 main브랜치에 올려 merge하면 자동으로 빌드된 후 테스트가 진행된다.
CD(지속적 배포)는 말 그대로 빌드된 프로젝트를 서버에 업데이트하여 올리는 것
👉🏼 오랜시간이 걸리는 [빌드, 테스트, 서버에 업데이트]를 자동화하게되면 시간비용도 절약하고 안정성도 보장할 수 있는 유익이 있다.
1️⃣ 배포할 방법 1개를 선택하여 설정한다(젠킨스, aws 등 선택하면 됨)
2️⃣ AWS배포하기 참고 → https://velog.io/@coddingyun/AWS-프론트엔드-배포
3️⃣ Git의 tab버튼 중 'Git Action'을 선택하여 진입
main 브랜치로 merge하면?
: 자동으로 프로젝트 빌드 → 테스트 → S3에 업데이트된 파일 업로드
3️⃣-1. Git의 actions에 가서 set up a workflow yourself로 템플릿 생성
3️⃣-2. main.yml파일에 코드를 작성해준다 (git action에 관한 파일)