개발을 하다 보면 코드를 짜는 것만큼이나 중요한 게 있습니다. 바로 코드를 합치고, 배포하는 과정입니다.
많은 개발자들이 동시에 작업하다 보면, 검증되지 않은 코드가 실수로 배포될 수도 있고, 에러가 발생할 가능성도 높아집니다.
이런 문제들을 해결하기 위해 등장한 개념이 바로 CI/CD 입니다.
CI/CD는 다음의 약자입니다:
즉, 코드를 빌드하고 테스트한 후, 안정적으로 병합하고, 자동으로 배포하는 일련의 과정을 파이프라인으로 구성한 것이 바로 CI/CD입니다.
처음엔 빌드라는 개념이 참 낯설었습니다.
예를 들어 Vue 파일(.vue)은 브라우저에서 바로 실행이 안 되기 때문에 HTML / CSS / JS 파일로 바꿔주는 게 바로 빌드입니다!
대표적인 빌드 도구: Webpack
CI 파이프라인에서는 테스트 코드 실행을 자동화할 수 있습니다.
테스트는 보통 작은 단위의 함수나 기능을 검증하는 ‘단위 테스트’를 의미합니다.
그리고 코드 통합, 즉 merge(머지)는 협업에서 아주 중요합니다.
배포는 단순히 사용자용 서비스뿐만 아니라
까지 포함합니다.
대표적인 배포 도구는 아래와 같습니다: