首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不带对象的helm部署

不带对象的helm部署
EN

Stack Overflow用户
提问于 2019-11-20 12:23:33
回答 1查看 5K关注 0票数 4

我用舵做了一个简单的图表。它包括部署一个只有一个对象("/templates/pod.yaml")的图表,只要文件Values.yaml的参数为真,就必须部署该对象。为了提供一个我的例子,这就是我所拥有的:

/templates/pod.yaml

代码语言:javascript
复制
{{- if eq .Values.shoudBeDeployed true }}
apiVersion: v1
kind: Pod
metadata:
  name: nginx
  labels:
    name: nginx
spec:
  containers:
  - name: nginx
    image: nginx
    ports:
    - containerPort: 80
{{- end}}

Values.yaml

代码语言:javascript
复制
shoudBeDeployed: true

因此,当我使用带有shoudBeDeployed值的true时,helm将正确地安装它。

我的问题是,当shoudBeDeployed是false时,helm不会像我预期的那样部署任何东西,但是helm显示了以下消息:

Error: release CHART_NAME failed: no objects visited

如果我执行helm ls,我就知道CHART_NAME是与STATUS FAILED一起部署的。

我的问题是,是否有办法不让它成为失败的舵手部署。所以我不想在使用命令helm ls时看到它

我知道我可以将shoudBeDeployed变量的逻辑移出图表之外,然后根据图表的值部署图表,但我想知道是否有使用helm的解决方案。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-21 08:29:55

@pcampana我认为,如果没有部署,就没有办法停止舵部署。但是,这里有一个技巧,如果舵图失败,可以用来删除它。

helm安装-名称临时演示-原子

其中演示是helm图表目录,temp是发布名。要使此操作正常运行,发布名称是必须的。

一种情况是当您看到错误时。

错误:发布临时程序失败:没有访问对象

您可以使用上面的命令来部署舵图。

我觉得这可能对你有用。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58954297

复制
相关文章

相似问题

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