CI/CD를 구축할 수 있는 툴에는 여러가지가 있다.
이 중에서 현업에서도 많이 사용하면서, 무료로 사용할 수 있고, 빌드용 서버가 따로 필요없는 Github Actions를 활용해서 CI/CD를 구축할 것이다.
현업에서 Github Actions 뿐만 아니라 Jenkins도 많이 활용한다. Github Actions와 Jenkins 둘 중에 하나만 쓰더라도 필요한 CI/CD 구성을 전부 할 수 있다. Github Actions를 사용할 지, Jenkins를 사용할 지는 장단점을 비교해서 상황에 맞게 선택하면 된다. 강의에서 추천하는 툴은 Github Actions이다.
Jenkins의 단점으로는 별도의 서버에 구축을 해야 한다는 단점이 있다. 이 때문에 서버를 빌리는 비용이 발생하게 된다.
하지만 Github Actions는 별도의 서버 구축 없이 Github에 내장되어 있는 Github Actions 기능을 사용할 수 있다. 비용적인 측면도 유리하고 셋팅하는 데 시간을 쓸 필요도 없다.
실제 현업에서도 정말 Jenkins를 안 쓰고 Github Actions를 쓰는지 확인하고 싶다면 아래 링크를 살펴보자.
카카오엔터프라이즈가 GitHub Actions를 사용하는 이유
카카오엔터프라이즈 포스트
아래의 링크는 4-1 소프트웨어공학 수업에서 실습한 내용이다.
소프트웨어공학 Jenkins 실습
Github Actions를 로직을 실행시킬 수 있는 일종의 컴퓨터라고 생각하면 된다.
CI/CD 과정에서 Github Actions는 “빌드, 테스트, 배포”에 대한 로직을 실행시키는 역할을 하게 된다.
Github Actions에 대한 이미지를 이 정도로 잡아두고, CI/CD 전체 흐름을 한 번 살펴보자.
