Helm
Helm 是一个用于管理 Kubernetes 应用程序的工具。 Helm chart 是一组预配置资源定义包,运行于 Kubernetes 集群中。 chart 包含软件包的描述( Chart.yaml )以及一个或多个用于生成 Kubernetes 清单文件的模板。
安装 Kubernetes 插件
此功能依赖于需要安装并启用的 Kubernetes 插件。
按 Ctrl+Alt+S 打开设置,然后选择 。
打开 Marketplace 标签页,找到 Kubernetes 插件,然后点击 安装 (如提示请重启 IDE)。
指定 Helm 的自定义路径
如果您将 Helm 安装到自定义目录中,可以手动指定其路径。
在 设置 对话框中(Ctrl+Alt+S ),选择 。
在 Helm 可执行文件的路径 字段中指定 helm 可执行文件的路径。
点击 测试 检查文件位置。 如果未找到,您可以手动检查文件位置,或点击 安装 ,GoLand 将下载并安装缺失的软件。

Helm chart 和模板的编码辅助功能包括代码补全、重构、检测、快速修复以及快速文档。 代码补全包含来自指定仓库的依赖项值(默认来自 Helm Hub)。
在 Go 模板指令中,GoLand 提供对 Helm 内置对象 的补全支持,以及从 values.yaml 文件或自定义 values 文件传入的值的补全。 您可以按 Ctrl+B 跳转到对象值的来源,例如跳转到导入到父 chart 的子 chart 值。
在模板对象中,您可以使用 代码折叠 :按 Ctrl+NumPad + 和 Ctrl+NumPad - 在值与指令间切换。 您还可以将鼠标悬停在值上以展开并显示其指令。

您还可以使用边栏图标在标签定义与标签选择器之间以及在被重写与重写值之间导航。
创建新的 Helm chart
在 项目 工具窗口中,右键点击某个文件夹并选择 。
在打开的 新建Helm 图表 窗口中,为 chart 输入一个名称。
此操作将运行 helm create 命令,添加开始所需的所有基础文件:
.helmignore :构建软件包时要忽略的模式
Chart.yaml :具有元数据的基本 chart 描述
values.yaml :chart 模板的默认值
charts/ :子 chart 目录
templates/ :chart 定义的目录
_helpers.tpl :template 中的 partial 与函数
NOTES.txt :部署 chart 后输出的信息
deployment.yaml :Kubernetes 部署定义示例
ingress.yaml :Kubernetes ingress 定义示例
service.yaml :Kubernetes 服务定义示例
预览 Helm 模板渲染结果
您可以使用 helm template 命令在本地渲染 chart 模板。 指定来自文件系统中任意文件夹的一个或多个包含值的 YAML 文件。 这支持类似使用不同环境的独立值文件等使用场景。
当编辑器中打开模板文件时,点击编辑器右侧的
。
或者,右键点击 chart,并从上下文菜单中选择 。
在 呈现Helm 模板 对话框中,添加一个或多个包含渲染所需值的文件。 这些可以是文件系统中的任意 YAML 文件。
可选地,您可以在 附加值 部分中提供单独的以逗号分隔的值。

点击 继续。 这将运行 helm template 命令,并使用指定的值渲染 Helm chart。
GoLand 在差异查看器中打开渲染预览,并与原始模板文件进行比较。
更新外部依赖项
右键点击 chart,并从上下文菜单中选择 。
这将运行 helm dependency update 命令。
在 Helm 2 中,应在 requirements.yaml 文件中指定依赖项。 该操作还将生成或更新 requirements.lock 。
在 Helm 3 中,应在 Chart.yaml 文件中指定依赖项。 如果您错误地在文件中指定了依赖项,GoLand 会提供一个检测并可快速修复以移动它们。
在 requirements.yaml 和 Chart.yaml 文件中也分别提供边栏图标用于更新依赖项。
检查 chart 是否存在潜在问题
右键点击 chart,指向 Helm(H) ,然后点击 Helm Lint(L)。
这将运行 helm lint 命令,执行一系列测试以发现可能存在的问题,而不会实际安装 chart。