안녕하세요..
관련 자료를 찾아보았는데, 명확한 이야기가 없어서 혹시나 하고 질문을 드립니다.
Kustomize나 kubenetes yaml 파일을 commit으로 auto symc를 하는방법은 잘 나와있는데
Helm Sync하는 부분은 공식문서에도 어디에도 안보입니다.
그래서 Github Actions로
Helm value의 image tag 이름만 변경시키고,
Helm repository로 사용하고있는
Github Page의 패키지를 업데이트 하고, index.yaml을 변경하여 배포하는 형식으로 만들어 놓고.
이 Github Page를 ArgoCD의 repository연결을 한후, Application을 생성하여 Sync를 시도하니,
첫 연결시의 리소스와 Value만 고정되어있고,
이후 변경하는 Value에 대해서는 manual Sync로도 이미지 태그값이 변경되지 않습니다..
Github Page의 helm package와 index.yaml이 변경되어도 auto sync는 작동하지 않구요..
혹시 관심이 있으시다면 답변 부탁드리겠습니다..
긴글 읽어주셔서 감사합니다. ㅠ
안녕하세요 강사 최일선입니다.
1. 매뉴얼 싱크
우선 헬름 차트 버전 업데이트 후 매뉴얼 싱크 방법 안내드립니다.
helmchart 다음 버전을 개발하고 해당 차트의 Chart.yaml에서 버전을 0.1.0에서 0.1.1로 수정하고 이미지의 버전도 1.16.0에서 1.16.1로 올렸습니다.
다시 차트를 package한 후 index.yaml 파일을 구성해서 index.yaml 파일을 업데이트 수행하시고
argoCD로 돌아와서 해당 앱의 디테일로 들어가서 수정 버튼을 누릅니다.
차트 버전 정보를 0.1.1로 수정하고 저장합니다.
그럼 싱크가 바로 진행되어 추가 rs와 애플리케이션이 배포됩니다.
파드의 디테일에서 정보를 확인하시면 1.16.1 nginx를 사용하고 있습니다.
2. 오토 싱크
이번엔 동일한 헬름 차트 버전으로 오토 싱크를 수행하기 위해 0.1.1 차트의 이미지를 1.16.2로 변경했습니다. 그리고 패키징을 다시 수행한 다음 index.html도 새로 만들었습니다. 변경 후 강제로 리프레시를 수행하면 out of sync 상태가 발생되며 오토 싱크가 시작됩니다. 아래 화면에서는 nginx:1.16.2 버전이 존재하지 않아서 이미지 풀링 에러가 발생하고는 있습니다만 이미지가 있었다면 정상 업데이트 되었을 것으로 예상하시면 됩니다.
원하시는 정보가 맞는지 모르겠네요 ㅎㅎ
확인 부탁드립니다. 감사합니다.
댓글