
Airflow DAG CI/CD 연동
코드너리 | 2022. 02. 27
CI/CD
사용된 기술:




간단 요약
- Github Repository Webhook에서 Branch 생성 및 삭제하는 경우, CI/CD 파이프라인이 동작하는 트리거를 생성합니다.
- 쏘카에선 쉽게 CI/CD 파이프라인을 구축할 수 있는 BuddyWorks를 사용하고 있습니다.
- Branch 생성 시 BuddyWorks 내 파이프라인에서는 다음과 같이 실행됩니다.
- 클러스터와 통신할 수 있는 Bastion Host에 ssh 접속합니다.
- Bastion Host에서 ArgoCD Client를 통해 클러스터에 배포되어있는 ArgoCD Server에 로그인합니다.
- ArgoCD Client로 현재 HEAD branch와 연동된 Airflow 앱을 배포합니다. Branch 삭제 시, 같은 방법으로 위에서 생성된 Airflow 앱을 삭제합니다.