我目前正在为我的多服务应用程序编写Helm Chart。在应用程序中,我依赖于CustomResources
,我通过"helm.sh/hook": crd-install
钩子将其应用在掌舵之前。
现在我要升级应用程序。头盔失败,因为已经安装了CRD。在某些GH问题中,我了解了Helm模板中的内置.Capabilities
变量。我想用“ if”包裹我的CRD,以检查是否已经安装了CRD:
{{- if (not (.Capabilities.APIVersions.Has "virtualmachineinstancepresets.kubevirt.io")) }}
[不幸的是,我误解了APIVersions属性。所以我的问题是,Helm是否提供一种检查
CustomAPI
是否已经安装的方法,以便可以将其从Helm挂机前安装中排除?
我目前正在为我的多服务应用程序编写Helm Chart。在该应用程序中,我依赖于CustomResources,我通过“ helm.sh/hook”将其应用到其他所有带有头盔的地方:crd-install ...
Helm v2的简单答案是在运行--no-crd-hook
时手动选择helm install
标志。