kubernetes - Kubernetes:无法将 int64 转换为字符串。Kubernetes 无法解释 helmchart values.yaml 文件中的整数值
问题描述
我有一个values.yaml
文件,我在其中给出了spring_datasource_hikari_maximum_pool_size: "10"
在deployment yaml
我使用这个值作为
- name: SPRING_DATASOURCE_HIKARI_MAXIMUM-POOL-SIZE
value: {{ .Values.spring_datasource_hikari_maximum_pool_size }}
但是,当在deployment.yaml
文件中使用时,它会失败并出现以下错误。
Deploy failed: The request is invalid: patch: Invalid value: "map[metadata:map[annotations:map[kubectl.kubernetes.io/last-applied-configuration:{"apiVersion":"apps/v1","kind":"Deployment","metadata":{"annotations":
{
(helm values etc)
`{"name":"SPRING_DATASOURCE_HIKARI_MAXIMUM-POOL-SIZE","value":10}]` **(this is the incorrect value)**
}
cannot convert int64 to string
values.yaml
在文件中使用文件中的整数值的正确格式是什么deployment.yaml
?
我还尝试了多种带有引号“”的组合,但似乎没有任何效果。
任何帮助表示赞赏,在此先感谢。
解决方案
使用布尔值和整数检查 Helm 环境变量中的解决方案
我们可以使用
!!str
将输出转换为字符串,或者我们也可以使用 undefined!!
并获得相同的行为,为以后的开发人员提供很好的提示,了解我们的意图!!booleanEnv
或!!integerEnv
将值转换为字符串(甚至只是!!boolean
)
- name: SPRING_DATASOURCE_HIKARI_MAXIMUM-POOL-SIZE
value: !!integerEnv {{ .Values.spring_datasource_hikari_maximum_pool_size }}
- name: FAVORITE_DRINK
value: !!stringEnv {{ .Values.favoriteDrink }}
- name: TAKES_SUGAR
value: !!booleanEnv {{ .Values.takesSugar }}
推荐阅读
- flutter - Flutter:在启动时显示一个对话框
- javascript - 在 React Web 应用程序中通过数组映射返回“未定义”
- javascript - 如何使用 alpha beta 剪枝实现转置表
- python-3.x - 为什么我不能制作具有大量值的相关矩阵
- arrays - 如何复制字节数组
- vb.net - 是否可以将 VB.Net MDI 子窗体移动到另一个屏幕?
- python - 在 Pandas df 行中查找值并返回列名
- python - 如何使用正则表达式将字符串拆分为不同长度的块
- android - 询问用户是否允许录制音频、读取手机状态和前台服务?
- batch-file - 在 2 个预定义路径之间选择对话框