如何使用 kubectl 和 jsonpath 将 configmap 的内容保存到文件中?

2024-02-14

我正在尝试将配置映射的内容保存到本地硬盘上的文件中。 Kubectl 支持使用 JSONPath 进行选择,但我找不到仅选择文件内容所需的表达式。

configmap 是使用命令创建的

kubectl create configmap my-configmap --from-file=my.configmap.json=my.file.json

当我跑步时

kubectl describe configmap my-configmap

我看到以下输出:

Name:         my-configmap 
Namespace:    default 
Labels:       <none> 
Annotations:  <none>

Data
==== 
my.file.json:
---- 
{
    "key": "value" 
} 
Events:  <none>

我得到的最远的结果是仅选择文件内容是这样的:

 kubectl get configmap my-configmap -o jsonpath="{.data}"

哪个输出

map[my.file.json:{
    "key": "value"
}]

我想要的输出是

{
  "key": "value"
}

JSONPath 难题的最后一块是什么?


有一个开放的issue https://github.com/kubernetes/kubernetes/issues/63503在 Kubernetes GitHub 存储库中,列出了有关 kubectl(和 JSONpath)需要修复的问题,其中之一是问题16707 https://github.com/kubernetes/kubernetes/issues/16707 jsonpath 模板输出应该是 json.

Edit:

这个怎么样:

kubectl get cm my-configmap -o jsonpath='{.data.my\.file\.json}'

我刚刚意识到我有answered https://stackoverflow.com/a/51052288/1547081另一个问题与这个问题(有点)相关。上面的命令应该输出你想要的内容!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 kubectl 和 jsonpath 将 configmap 的内容保存到文件中? 的相关文章

随机推荐