首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在ksonnet/jsonnet中编写多行值

如何在ksonnet/jsonnet中编写多行值
EN

Stack Overflow用户
提问于 2018-05-08 16:38:38
回答 1查看 4.7K关注 0票数 8

我想要创建一个多行的kubernetes配置映射,例如这种yaml:

代码语言:javascript
复制
apiVersion: v1
kind: ConfigMap
metadata:
  name: nifi-bootstrap
data:
  run.sh: |-
    echo "Waiting to run nslookup..."
    sleep 30

我应该如何将它写成原型中的一个部件函数呢?

代码语言:javascript
复制
    parts:: {
        bootstrap(p):: {
            apiVersion: 'v1',
            kind: 'ConfigMap',
            metadata: {
                name: p.name + '-bootstrap',
                labels: {
                    app: p.app,
                    release: p.release,
                },
            },
            data: {
                'run.sh': "|-
line 1 
line 2
line 3
"

但是它生成如下所示的yaml:(ks显示默认值):

代码语言:javascript
复制
apiVersion: v1
data:
  run.sh: "|-\nline 1 \nline 2\nline 3\n"
kind: ConfigMap

我想挂载这个配置映射并以脚本的形式运行它,但是我怀疑这个输出能否工作。知道如何在ksonnet/jsonnet中生成多行值吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-08 17:28:09

yaml的|的jsonnet“等效”是|||构造(参见https://jsonnet.org/ref/spec.html),应用了您的示例:

代码语言:javascript
复制
$ cat foo.jsonnet
{
  parts:: {
    bootstrap(p):: {
      apiVersion: "v1",
      kind: "ConfigMap",
      metadata: {
        name: p.name + "-bootstrap",
        labels: {
          app: p.app,
          release: p.release,
        },
      },
      data: {
        "run.sh": |||
          line 1
          line 2
          line 3
        |||,
      },
    },
  },
} {
  foo: self.parts.bootstrap({name: "foo", app: "bar", release: "v1"}),
}
$ jsonnet foo.jsonnet
{
   "foo": {
      "apiVersion": "v1",
      "data": {
         "run.sh": "line 1\nline 2\nline 3\n"
      },
      "kind": "ConfigMap",
      "metadata": {
         "labels": {
            "app": "bar",
            "release": "v1"
         },
         "name": "foo-bootstrap"
      }
   }
}
$ jsonnet foo.jsonnet|jq -r '.foo.data["run.sh"]'
line 1
line 2
line 3
票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50238470

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档