유연하고 안전하게 배포 Pipeline 운영하기
김동석 토스 · 토스 기술 블로그
AI 핵심 요약
400개가 넘는 GoCD Pipeline을 운영하면서 웹 UI만으로는 설정을 찾고 비교하거나 변경 이력을 추적하기 어려웠고, 복사·붙여넣기와 공통 변경 과정에서도 실수가 발생했습니다. 토스뱅크는 gocd-yaml-config-plugin으로 설정을 YAML 파일화해 Git에서 관리하고, 공통 동작은 Template으로 재사용하도록 했습니다. Template 관리에는 Pipeline 설정과 함께 저장할 수 있고 조건문으로 일부만 시험할 수 있는 Helm Template을 도입했으며, GitHub Actions CI에서 Rendering 결과를 검증해 의도치 않은 변경을 감지하도록 했습니다. 설정을 코드로 관리하고 재사용·테스트 가능하게 만들면 대규모 Pipeline도 더 잘 파악하고 안전하게 변경할 수 있다는 점을 보여줍니다.
- GoCD 설정을 YAML로 저장하고 Git에서 관리하면 Pipeline 목록과 단계, 변경 이력을 한곳에서 확인할 수 있습니다.
- 공통 동작은 Template으로 추상화하고 서비스별 차이는 Values로 주입해 복사·붙여넣기 실수를 줄이세요.
- Helm Template의 조건문을 활용해 변경을 일부 Pipeline에서 먼저 검증하면 전체 적용 시의 위험을 낮출 수 있습니다.
- Rendering 결과를 기준 파일과 비교하는 CI를 구성하고, 예상치 못한 차이가 있으면 반영을 막아 검토와 알림을 유도하세요.
소개
생산성, 안정성, 보안성을 모두 달성하기 위해선 ‘Pipeline’을 어떻게 설정해야 할까요? 다양하고 복잡한 토스뱅크의 배포 ‘Pipeline’를 안전하게 운영하기 위한 노력을 소개합니다.
비슷한 학습 자료
컨퍼런스 SLASH
토스ㅣSLASH 23 - 유연하고 안전하게 배포 Pipeline 운영하기
컨퍼런스 SLASH
생산성, 안정성, 보안성을 모두 달성하기 위해선 ‘Pipeline’을 어떻게 설정해야 할까요? 다양하고 복잡한 토스뱅크의 배포 ‘Pipeline’을 안전하게 운영하기 위한 노력을 소개합니다. 김동석 / 토스뱅크 DevOps Engineer 발표 자료 👉🏻 https://bit.ly/42pgzIN 토스 개발자 컨퍼런스 SLASH에 대한 자세한 정보는 👉🏻 https://bit.ly/43kW3tO 컨퍼런스 및 세션에 대한 문의는 👉🏻 slash@toss.im 토스에 합류하고 싶다면 👉🏻 https://toss.im/career/jobs #pipeline #helmtemplate #devopsengineer #토스뱅크 #개발자컨퍼런스 #SLASH *본 발표자료의 저작권은 연사에 있으며, 저작권자의 사전 서면 동의 없이 자료의 일부 또는 전부를 이용하거나 배포할 수 없습니다. *또한 해당 자료를 복제하여 SLASH 행사 홈페이지를 제외한 온라인상에 게재하는 행...
데브옵스 · 인프라
문서 김영재/조성현
경계 보안부터 제로트러스트 보안까지, 고도화 여정
문서 김선우
유연하고 확장 가능한 배너 기능 구현하기
문서 한재엽