Git-Flow 기반의 기존 배포 시스템의 병목 현상을 분석하고, GitHub Actions 기반의 새로운 배포 시스템을 구축함
Commit-Train Based Deployment 방식을 도입하여, 배포 횟수 4배 증가 및 개발 생산성 향상
Deploybot 개발을 통해 GitHub API를 활용, 배포 자동화 및 롤백 기능 강화
GitHub Actions는 CI/CD 파이프라인 구축을 위한 강력한 도구이다. GitHub Deployments를 통해 배포 상태를 추적하고, 각 단계별 성공/실패 여부를 확인할 수 있다. 따라서 GitHub Actions는 뱅크샐러드의 배포 자동화를 위한 핵심 기술로 활용되었다.
Commit-Train Based Deployment는 여러 커밋을 묶어 한 번에 배포하는 방식이다. 배포 빈도 증가와 롤백 용이성을 제공하지만, 를 주의해야 한다. 반면, 와 연동하여 배포 이력을 관리하고, 을 통해 배포 과정을 자동화했다.
Deploybot은 GitHub API를 활용하여 배포를 자동화하는 뱅크샐러드의 자체 개발 툴이다. Slackbot 인터페이스를 통해 배포 상태를 확인하고, 롤백을 수행할 수 있다. 구체적으로, gRPC를 사용하여 서비스 간 통신하며, Go 언어로 개발되어 확장성을 확보했다.