여기어때, 슬랙 알림으로 CI/CD 배포 가시성을 높이다!

by DD
8개월 전
조회수 2

GitLab CIArgoCD를 활용하여 CI/CD 알림 시스템을 개선함

파편화된 알림 구조를 통합하고, pipeline-agent 도입으로 가독성을 높임

팀별 알림 분리, 스케일링 알림 제거를 통해 배포 가시성을 확보함

GitLab CI 알림 개선: pipeline-agent의 역할

기존 Slack Webhook 방식은 스크립트 복잡도가 높고, 다중 채널 전송에 어려움이 있었다. pipeline-agent 도입으로 스크립트 간결화, 환경별 채널 분리, 메시지 템플릿 관리가 가능해졌다. 따라서 개발자는 간결한 `.gitlab-ci.yml` 파일로 알림 설정을 관리할 수 있게 되었다.

ArgoCD Notifications: 트리거와 템플릿 세분화

ArgoCD Notifications를 활용하여 EKS 배포 알림을 통합했다. ApplicationSetApp of Apps 패턴의 차이를 고려하여 트리거와 템플릿을 세분화했다. 구체적으로, syncResult.revisions 필드를 활용하여 알림 중복/누락 문제를 해결하고, 배포 안정성을 향상시켰다.

CI/CD 알림 개선의 핵심: 팀별 알림 분리

DevOps팀은 ApplicationSet 템플릿을 활용하여 팀별 Slack 채널을 분리했다. 개발자는 어플리케이션 manifest에 팀 전용 채널을 지정하여 필요한 알림만 받을 수 있다. 반면, Karpenter 스케일링과 같은 불필요한 알림은 제거하여 운영 효율성을 높였다.

여기어때 CI/CD 개선기 Part 5: Slack으로 완성되는 배포 가시성