当我将其他ppl创建的图表用于我们的应用程序时,我还是一个新手,我正在尝试做一些我认为很简单但无法找到方法的事情。基本上我想将应用程序版本传递给我的React应用程序。根据我发现的一些信息,这是我想出的
image:
tag: 0.2.6
extraEnv:
- name: REACT_APP_APP_VERSION
value: {image.tag}
提前
答案 0 :(得分:0)
我假设您发送的代码是您的values.yaml
。然后,第一部分是正确的。
image:
tag: 0.2.6
现在,您无需在values.yaml
文件中而是在templates/*
文件中指定传递给pod的变量。例如,要将变量传递到您的广告连播,您可以使用以下代码:
env:
- name: REACT_APP_APP_VERSION
value: "{{ .Values.image.tag }}"
检查this以获取完整的示例。
请注意,您不能使用values.yaml
中values.yaml
中的值。因此,您发送的代码无效。这是因为values.yaml
文件本身未被评估。
答案 1 :(得分:0)
tpl
函数允许开发人员将字符串作为模板内的模板进行评估。将模板字符串作为值传递到图表或呈现外部配置文件时,这很有用。语法:{{ tpl TEMPLATE_STRING VALUES }}
您将拥有类似的东西
values.yaml
image:
repository: k8s.gcr.io/busybox
tag: "latest"
extraEnv: "{{ .Values.image.tag }}"
pod.yaml
apiVersion: v1
kind: Pod
metadata:
name: test
spec:
containers:
- name: test
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
env:
- name: REACT_APP_APP_VERSION
value: {{ tpl .Values.extraEnv. }}