0

我是 skaffold 的新手,目前我试图找到一种方法(可能是不可能的)来设置基于平台的主机环境变量,linux 和 mac os 与主机一起工作,但 windows 不支持这个环境变量。是否有可能在 helm install 期间检查平台然后在 skaffold.yml 中设置值(我们可以使用标志设置它,但问题是提供支持所有平台的变量)

目前在我的 skaffold.yml 文件中看起来像这样

deploy:
  kubeContext: docker-desktop
  helm:
    releases:
     setValueTemplates:
      HOST: "{{.HOST}}"

上面的东西不适用于没有设置值的windows os,我们如何在不手动设置windows环境变量的情况下做到这一点(编辑系统环境变量,我可以在我的机器内设置HOST变量,但我必须手动执行此操作)。

是否有可能根据平台向 skaffold.yml 编写函数和返回值?

4

1 回答 1

0

如您所知,setValueTemplates允许您使用 Go 模板来计算要设置的值。Go 模板支持操作,包括 if/else 操作,因此您应该能够使用以下内容:

setValueTemplates:
  HOST: "{{if .HOST}}{{.HOST}}{{else}}notset{{end}}"
于 2021-02-23T16:03:29.520 回答