为了账号安全,请及时绑定邮箱和手机立即绑定

“if and (ne)”运算符在 helm 中是如何工作的?

“if and (ne)”运算符在 helm 中是如何工作的?

Go
尚方宝剑之说 2022-06-21 10:59:48
我正在使用一个开始时具有以下结构的图表,但我很难理解何时评估为真的。{{- if and .Values.vpceIngress.enabled .Values.http.paths (ne .Values.vpceIngress.class "traefik2") }}我相信两者都是enabled真实paths的,但ne在那之后让我失望了。
查看完整描述

1 回答

?
FFIVE

TA贡献1797条经验 获得超6个赞

and并且ne是go templates中的函数。


and

    Returns the boolean AND of its arguments by returning the

    first empty argument or the last argument, that is,

    "and x y" behaves as "if x then y else x". All the

    arguments are evaluated.

ne

    Returns the boolean truth of arg1 != arg2

所以模板行相当于一个更伪的 codish


if (

  .Values.vpceIngress.enabled

  && .Values.http.paths

  && .Values.vpceIngress.class != "traefik2"

)

纯文本的真实性.Value.key基本上是“此字段/键不是数据类型的零值。这也适用于映射,因为“此字段/键是否已定义”,因为映射没有该路径等于 nil 或非值(请注意,这仅在实际定义父地图时才有效!否则模板错误)


查看完整回答
反对 回复 2022-06-21
  • 1 回答
  • 0 关注
  • 236 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信