【发布时间】:2020-03-16 07:20:36
【问题描述】:
我正在使用具有“命令”部分的 yaml 库在 python 中加载 yaml 文件(存在于 kubernetes pod 的容器中)。
下面是yaml文件中的命令部分:
command:
- sh
- "-c"
- |
addgroup 2000
adduser -D -G 2000 2000
chown -R 2000:2000 /sh_pvc
chmod 760 /sh_pvc
以下是我用来读取 yaml 文件的代码(我正在猛击容器并读取文件):
yaml_content = yaml.safe_load(stream(KubeCtl.v1.connect_get_namespaced_pod_exec, name = pod_name, namespace = pod_namespace, command=['/bin/sh', '-c', 'cat test_file.yaml'], stderr=True, stdin=True, stdout=True, tty=True))
注意:KubeCtl.v1 是一个 kubernetes api 服务器对象。 'test_file.yaml' 是正在读取的 yaml 文件
响应 yaml_content 是一个字典,其中的命令部分如下所示:
- command:
- sh
- -c
- "addgroup 2000\nadduser -D -G 2000 2000 \nchown -R 2000:2000 /sh_pvc\nchmod\
\ 760 /sh_pvc\n"
我希望 cmets 部分按原样显示在原始文件中。对此有何建议?
我在网上看了很多答案,其中大部分都是关于阅读 yaml 文件的,并没有专门针对我的问题
【问题讨论】:
标签: python kubernetes yaml