Arrays 将数组替换为jsonnet
我有一个jsonnet文件Arrays 将数组替换为jsonnet,arrays,kubernetes,jsonnet,Arrays,Kubernetes,Jsonnet,我有一个jsonnet文件 local version = std.extVar('version'); local entities = std.extVar('entities'); { appname::'app-dev', version::version, entities::entities, } 版本字段似乎是一个字符串,但实体字段是位于jsonnet文件附近的数组。 我使用kubecfg show创建json文件并替换如下变量: kubecfg s
local version = std.extVar('version');
local entities = std.extVar('entities');
{
appname::'app-dev',
version::version,
entities::entities,
}
版本字段似乎是一个字符串,但实体字段是位于jsonnet文件附近的数组。
我使用kubecfg show创建json文件并替换如下变量:
kubecfg show test.jsonnet --ext-str "version=$VERSION" --ext-str "entities=$(cat entities.txt)"
当然,在此命令期间,我收到一个错误:
got "string", expected "array";
有没有办法用kubecfg show替换阵列?找到了解决方案 kubecfg 0.15.3有一个标志,提供了从命令行、文件或环境注入jsonnet的方法
--ext-code | jsonnet | commandline | std.extVar(...) |
--ext-code-env | jsonnet | environment | std.extVar(...) |
--ext-code-file | jsonnet | file | std.extVar(...) |
因此,解决方案如下所示:
kubecfg show test.jsonnet --ext-str "version=$VERSION" --ext-code "entities=$(cat entities.txt)"