Helmfile中needs关键字不生效,无法控制release安装顺序如何解决?
根因说明
你使用的v0.139.9版本helmfile中,needs关键字对应的DAG依赖编排能力属于实验特性,默认未启用。直接执行helmfile sync时系统不会读取needs配置,也不会校验依赖名称合法性,因此会出现写错依赖名无报错、两个release同时安装的现象。
解决步骤
- 方案一(推荐):将helmfile升级到v0.140.0及以上版本。该版本起DAG依赖编排功能正式稳定且默认启用,可自动识别
needs配置并按依赖顺序安装release,同时会校验needs中引用的release名称是否存在,配置错误时会直接抛出明确报错。 - 方案二(暂不升级的临时适配方案):执行sync命令时添加
--enable-dag参数,完整命令为helmfile sync --enable-dag,手动开启实验性DAG功能即可让needs配置生效。 - 上述两个方案都需要先修正helmfile中的配置错误:将
needs字段中拼写错误的dev-sjs-pgg改为正确的release名称dev-sjs-pg,避免开启DAG功能后出现依赖不存在的报错。
内容的提问来源于stack exchange,提问作者bplaye
相关产品推荐
相关产品推荐

