eve*_*zon 5 openshift kubernetes kustomize
我有一个生成的配置图
configMapGenerator:
- name: template-vars
envs:
- templateVars.env
Run Code Online (Sandbox Code Playgroud)
并想使用其中包含的值之一
ROUTE_HOST=somewhere.else.org
Run Code Online (Sandbox Code Playgroud)
作为变量
vars:
- name: ROUTE_HOST
objref:
kind: ConfigMap
name: template-vars
apiVersion: v1
fieldref:
fieldpath: data.ROUTE_HOST
Run Code Online (Sandbox Code Playgroud)
在我的 OCP 路线中
apiVersion: route.openshift.io/v1
kind: Route
spec:
host: $(ROUTE_HOST)
Run Code Online (Sandbox Code Playgroud)
这可能吗?
我知道我可以用环境变量做一些几乎相同的事情:
env:
- name: ROUTE_HOST
valueFrom:
configMapKeyRef:
name: template-vars
key: ROUTE_HOST
Run Code Online (Sandbox Code Playgroud)
是的,这是可能的。我目前为大多数 ingresses 主机执行此操作。默认情况下,var 插件不适用于所有资源的所有字段。为了让 kustomize$(ROUTE_HOST)在您的资源中插入,您需要向您的文件添加配置kustomization.yaml:
kustomization.yaml:
configMapGenerator:
- name: template-vars
envs:
- templateVars.env
vars:
- name: ROUTE_HOST
objref:
kind: ConfigMap
name: template-vars
apiVersion: v1
fieldref:
fieldpath: data.ROUTE_HOST
configurations:
- transformer_config.yaml
Run Code Online (Sandbox Code Playgroud)
和transformer_config.yaml:
varReference:
- path: spec/host
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4105 次 |
| 最近记录: |