簡體   English   中英

如何檢查 Helm 圖表/k8s 模板中是否存在 k8s 機密,或使用默認值?

[英]How can I check if a k8s secret exists in a Helm chart/k8s template, or use a default value?

我有一個模板部分,例如:

    spec:
      containers:
        - name: webinspect-runner-{{ .Values.pipeline.sequence }}
          ...
          env:
            - name: wi_base_url
              valueFrom:
                secretKeyRef:
                  name: webinspect
                  key: wi-base-url
            - name: wi_type
              valueFrom:
                secretKeyRef:
                  name: webinspect
                  key: wi-type

webinspect/wi_type密碼可能丟失。 我希望容器也沒有 wi_type envvar 或在缺少秘密時獲得默認值(更好),但 k8s 只報告CreateContainerConfigError: couldn't find key wi-type in Secret namespace/webinspect並且 pod 失敗。

有沒有辦法使用默認值,或者如果秘密不存在則跳過該塊?

兩個選項,第一個是添加optional: true到 secretKeyRef 塊,使其跳過。 第二種是使用Helm 中的lookup模板 function 的更復雜的方法。 可能是 go 與第一個:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM