# Airflow 버전 갱신 가이드
ArgoCD Helm Chart의 버전의 갱신할 경우 작업의 시작은 항상 main에서 이루어져야 한다.

## 1. git 작업 환경 구성
- 서비스 카탈로그 git 다운로드
```
$ git clone https://github.com/paasup/dip-catalog.git
```

- 작업 브랜치로 체크아웃
```
$ git checkout -b update-airflow/1.16.0
```
## 2.
- BUILD-README.md, CUSTOM-README.md, custom-values.yaml을 제외한 파일 삭제
  ``` sh
  # chart 디렉토리로 이동
  cd ~/dip-catalog/charts/harbor
  
  # 파일 삭제 전 삭제할 파일 목록 확인
  find . -mindepth 1 \( -name "CUSTOM-README.md" -o -name "BUILD-README.md"  -o -name "custom-values.yaml" \) -prune -o -print
  
  # 파일 삭제
  find . -mindepth 1 \(-name "CUSTOM-README.md" -o -name "BUILD-README.md"  -o -name "custom-values.yaml" \) -prune -o -exec rm -rf {} +
  ```
- harbor 차트 다운로드
  ``` sh
  # charts 디렉토리로 이동
  cd ~/dip-catalog/charts
  
  # helm repo 추가
  helm repo add apache-airflow https://airflow.apache.org/
  helm repo update
  
  # helm 차트 조회
  helm search repo apache-airflow/airflow

  # helm 차트 
  helm pull apache-airflow/airflow --version=1.16.0
  
  # 차트 변경
  tar xzvf airflow-*.tgz
  
  # 필요 없는 파일 삭제
  rm airflow-*.tgz
  ```

## 3. github에 tag 추가
- 갱신작업 진행후 commit
```
$ git add .
$ git commit -m "update-airflow/1.16.0 {TAG_NAME}"
```

- main 브랜치에 체크아웃 후 merge
```
$ git checkout main
$ git merge update-airflow/1.16.0
```

- git에 push 후 작업 브랜치 삭제
```
$ git push -u origin main
$ git branch -d update-airflow/1.16.0
```

- git tag 추가 후 push
```
$ git tag airflow/1.16.0
$ git push origin airflow/1.16.0
```
