
데브옵스
여기어때 CI/CD 개선기 Part 5: Slack으로 완성되는 배포 가시성
두줄요약
GitLab CI와 ArgoCD Notifications로 CI/CD 알림을 통합하고 세분화했습니다.\n환경별 채널 분리와 노이즈 제거로 배포 가시성을 높였습니다.
문제 상황
- GitLab CI와 ArgoCD 배포 알림이 팀별로 파편화되어 전체 현황 파악이 어려운 상태
- 기존 Slack 연동은 환경별·이벤트별 구분, 실패 로그와 추가 맥락 제공에 제약
- CI 알림과 CD 알림 모두 공통 채널 중심이라 중요한 배포 이벤트의 가시성이 낮은 문제
해결 방법
- GitLab CI 알림은 Golang 기반 pipeline-agent로 통합해 환경별 채널 분기, 다중 채널 전송, 템플릿 관리를 일원화
- 실패 시 즉시 alarm 단계로 전환해 팀 채널과 DevOps 관제 채널에 동시 전송
- ArgoCD Notifications로 CD 알림을 통합하고, 팀 채널 분리와 트리거/템플릿 세분화로 중복·노이즈 알림을 억제
적용해볼 점
- 환경 변수와 템플릿 중심으로 Slack 알림을 설계해 CI/CD 스크립트 복잡도 감소
- 배포 실패, Health Degraded, Sync 성공 같은 핵심 이벤트만 정밀하게 구독하도록 구성
- ApplicationSet과 App of Apps처럼 구조가 다른 배포 방식은 알림 트리거를 분리해 운영
