Publish a package를 참고하여 GitLab의 Package Registry에 helm package를 publish하는 방법에 대해 알아보겠습니다. GitLab 콘솔 왼쪽 'Deploy' 하단의 'Package Registry'에서 확인할 수 있으며 아직 publish 한 것이 없으므로 아래 캡처와 같이 Package Registry가 비어있는 것을 확인할 수 있습니다.
로컬 PC에 helm을 설치합니다. 저는 Mac을 사용하고 있기 때문에 brew로 설치하였습니다.
$ brew install helm
helm을 publish 하고자 하는 GitLab Project에 Access Token을 생성합니다. 콘솔 좌측 'Settings' 아래 있는 'Access Token'에서 토큰을 생성하면 됩니다.
Project ID를 기억합니다. Project ID는 아래와 같이 GitLab Project 화면 상단에서 확인 가능합니다.
아래 명령어 두 줄만 실행하면 됩니다.
$ helm repo add --username <TOKEN_NAME> --password <TOKEN_KEY> MY_HELM_PACKAGE https://<GITLAB_DOMAIN>/api/v4/projects/<PROJECT_ID>/packages/helm/stable
$ helm cm-push <HELM_CHART_FOLDER_NAME> MY_HELM_PACKAGE
하기 캡처는 제가 실제로 실행한 결과이며 상기 두 줄의 상세 실행 과정은 아래 '과정 상세'를 참고해 주세요.
과정 상세
helm repo add 하기
$ helm repo add --username <TOKEN_NAME> --password <TOKEN_KEY> MY_HELM_PACKAGE https://<GITLAB_DOMAIN>/api/v4/projects/<PROJECT_ID>/packages/helm/stable
add 한 repo 확인하기
$ helm repo list NAME URL MY_HELM_PACKAGE https://<GITLAB_DOMAIN>/api/v4/projects/<PROJECT_ID>/packages/helm/stable
publish 할 차트가 있는 곳으로 이동
$ cd <CHART_PATH>
package 올리기
$ helm cm-push <HELM_CHART_FOLDER_NAME> MY_HELM_PACKAGE
콘솔에서 cm-push
한 helm package를 확인할 수 있습니다.
개인적으로 공부하며 작성한 글로, 내용에 오류가 있을 수 있습니다.
GITLAB_DOMAIN 은 어디서 확인할수있나요?