首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法从helm子图中定位全局值

无法从helm子图中定位全局值
EN

Stack Overflow用户
提问于 2020-07-06 20:36:16
回答 1查看 1K关注 0票数 0

这是我第一次使用嵌套Helm图表,我试图从根values.yaml文件中访问一个全局值。根据文件我应该能够在我的secret.yaml文件中使用下面的语法,但是如果我运行helm template api --debug,我会得到以下错误:

错误:<.Values.global.sa_json>:nil指针评估接口{}.sa_json helm.go:84: debug模板:api/.sa_json/分泌.debug:7:21:在<.Values.global.sa_json>:nil指针评估接口{}.sa_json上执行“api/模板/分泌.debug”

/primaryChart/charts/api/templates/secret.yaml

代码语言:javascript
复制
apiVersion: v1
kind: Secret
metadata:
  name: {{ .Chart.Name }}-service-account-secret
type: Opaque
data:
  sa_json: {{ .Values.global.sa_json }}

primaryChart/values.yaml

代码语言:javascript
复制
global:
  sa_json: _b64_sa_credentials

文件夹结构如下:

代码语言:javascript
复制
/primaryChart 
|- values.yaml 
|-- /charts
    |-- /api
       |-- /templates
           |- secret.yaml
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-07 13:56:41

具有以下目录布局,只有在从主图表调用.Values.global.sa_json时才可用

代码语言:javascript
复制
/mnt/c/home/primaryChart> tree
.
├── Chart.yaml  <-- your main chart
├── charts
│   └── api
│       ├── Chart.yaml  <-- your subchart
│       ├── charts
│       ├── templates
│       │   └── secrets.yaml
│       └── values.yaml
├── templates
└── values.yaml   <--- this is where your global.sa_json is defined

您的值文件应该被称为values.yaml而不是value.yaml,或者使用带有-f标志helm template api . -f value.yaml的任何其他文件。

代码语言:javascript
复制
/mnt/c/home/primaryChart> helm template api .
---
# Source: primaryChart/charts/api/templates/secrets.yaml
apiVersion: v1
kind: Secret
metadata:
  name: api-service-account-secret
type: Opaque
data:
  sa_json: _b64_sa_credentials
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62764118

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档