我有一个头盔升级期间需要提供的信任库文件(二进制文件)。对于每个目标环境(dev,qa,staging或prod),此文件都不同。因此,我只能在部署时提供此文件。helm upgrade
--set-file
不接收二进制文件。这似乎是我在这里发现的问题:https://github.com/helm/helm/issues/3276。此信任库文件存储在Jenkins凭据存储中。
由于命令本身在下面描述:
--set-file stringArray set values from respective files specified via the command line (can specify multiple or separate values with commas: key1=path1,key2=path2)
知道The Format and Limitations of --set也很重要。
您看到的错误:Error: failed parsing --set-file data...
表示您尝试使用的文件不符合要求。请参见下面的示例:
--set-file key=filepath
是--set
的另一个变体。它读文件并将其内容用作值。它的一个示例用例是在不处理缩进的情况下将多行文本插入值在YAML中。假设您要创建具有一定价值的旅团项目包含5行JavaScript代码,您可以编写一个values.yaml像:defaultScript: | const { events, Job } = require("brigadier") function run(e, project) { console.log("hello default script") } events.on("run", run)
被嵌入到YAML中,这使您更难使用IDE支持编写代码的功能和测试框架等。相反,您可以将
--set-file defaultScript=brigade.js
与brigade.js
包含:const { events, Job } = require("brigadier") function run(e, project) { console.log("hello default script") } events.on("run", run)
我希望它会有所帮助。