当前的jsonnet编译器一次只允许编译一个文件。有没有办法在一条命令中构建多个jsonnet文件,比如所有jsonnet文件都递归地匹配文件夹中的模式*.jsonnet?
发布于 2021-09-22 12:31:01
回答您的问题:不,JSON只接受单个jsonnet文件,请注意,这是设计的,以便能够输出(即清单)有效的JSON流。回想一下,JSON本身并没有像YAML那样的多文档“特性”(即---\n分隔的块)。
也就是说,根据您的用例,您可以使用-m <dir>命令行界面功能,该功能可以为每个(主)对象键创建一个文件,例如:
$ cat multi.jsonnet
{
'out1.json': { foo: 'bar' },
'out2.json': { qqq: 'baz' },
}
$ jsonnet multi.jsonnet
{
"out1.json": {
"foo": "bar"
},
"out2.json": {
"qqq": "baz"
}
}
$ jsonnet -m . multi.jsonnet
./out1.json
./out2.json然后,将这些“主”对象键设置为您需要的每个文件的显示内容。
https://stackoverflow.com/questions/69283423
复制相似问题