概要
Helm chart は基本的に公開されています
マニフェストも見えるので挙動がおかしい場合には手元にマニフェストをダウンロードしてデバッグしてみましょう
環境
- Helm 3.5.2
マニフェストをダウンロードする
helm pull
を使います
helm pull gitlab/gitlab
これで tgz ファイルがダウンロードできます
chart を解凍する
手元で動作させるために解凍しましょう
tar zvxf gitlab-4.10.2.tgz
手元の chart を元に実行してみる
マニフェストが手元に来たのでそれを元に実行できるか試してみましょう
helm install test ./gitlab
必要なパラメータは適宜設定してください
chart を書き換えて print デバッグしてみる
これで直接 chart を書き換えることができます
例えばテンプレート情報が正しく設定されているか調べる場合にはコメントを使ってテンプレートの値を表示することができます
vim gitlab/charts/gitlab-runner/templates/_env_vars.tpl
(以下一部抜粋)
{{- define "gitlab-runner.runner-env-vars" }}
# some: problem section
# {{ include "gitlab-runner.gitlabUrl" . }}
- name: CI_SERVER_URL
value: {{ include "gitlab-runner.gitlabUrl" . }}
コメントの some: problem section とその下の {{ include "gitlab-runner.gitlabUrl" . }}
のテンプレートを print デバッグしてみます
デバッグ実行
ではデバッグ実行してみます
オプションで --dry-run
と --debug
を使います
helm install --dry-run --debug test ./gitlab > debug.log
マニフェストによってはかなり長くなるので結果はファイルなどにリダイレクトしてあげましょう
これで中身を見てみると k8s にデプロイするための定義がつらつらと書かれているのが確認できると思います
その中に以下のようなテンプレートの print デバッグ情報も含まれていると思います
# some: problem section
# "https://gitlab.example.com/"
lint もする
ドライランで実行する前にそもそも構文が間違っていないかチェックすることもできます
手動で print デバッグを入れたりマニフェストを修正した場合には事前に lint しておくと良いと思います
helm lint ./gitlab
0 件のコメント:
コメントを投稿