kubernetes - 如何在带有 helm 图表的 Kubernetes 中将条件参数作为命令传递
问题描述
当我的 pod 启动时,我必须运行一个命令,kubernetes
其中需要一些参数,但这些参数是有条件的。如何设置这些值。我的配置看起来像
#file: values.yaml
arguments:
debug: false
values: 16 # this is not necessarily set
#deployment command section looks like
command: [ "/bin/bash", "-ce", "./my_app.sh" ]
args:
- {{ -f .Values.arguments.debug }}
- {{ -v .Values.arguments.values}}
但它似乎不接受争论。这是不是错误的方式。如何传递多个参数?
解决方案
Helm 使用带有许多扩展的Gotext/template
语言;Helm Chart Template Guide有很多例子。
特别是模板语言包括一个if
……结构else
。end
您可以像这样使用它:
args:
- -f
- {{ quote .Values.arguments.debug }}
{{- if .Values.arguments.values }}
- -v
- {{ quote .Values.arguments.values}}
{{- end }}
请注意,-f
and-v
文本在模板花括号之外,我已将它们拆分为参数列表中的单独项目。在最后一部分中,如果设置了values
选项,则进行测试,如果没有设置,-v
则不会发出选项。
推荐阅读
- flutter - Flutter/Dart:参数类型“bool Function(MyStateNotifier)”不能分配给参数类型“dynamic Function(dynamic)”
- android - msalclientexception 重定向 URI 不匹配
- python - TensorFlow 中图像分类模型的均方误差
- spring-boot - Swagger UI 结合 Maven OpenAPI Codegen 忽略注释
- java - 从 Java 调用 SQL 函数并设置参数
- spring-boot - 基于标志的日志记录以禁用/启用在 JPA 中选择 SQL 查询日志
- php - 如何在 php jquery 中将 ajax 响应转换为 pdf 文档?
- scala - 未找到:值 scalaJSModuleKind
- python - 如何在绘图栏中调整列的颜色?
- php - PHP:十六进制到 HSL 的转换不适用于某些颜色