Привет, я пытаюсь прочитать вставку элемента в файл yaml, который содержит yaml в yaml в качестве строки после yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: conf
labels:
name: conf
namespace: conf
data:
blackbox.yml: |
- labels:
module: http_2xx_get
targets:
- https://xxx.asd.com/pa
Я хочу вставить новый URL в цели, подобные этой
apiVersion: v1
kind: ConfigMap
metadata:
name: conf
labels:
name: conf
namespace: conf
data:
blackbox.yml: |
- labels:
module: http_2xx_get
targets:
- https://xxx.asd.com/pa
- https://xxx1.asd.com/pa
следующий мой код для вставки. он считается строкой и не работает должным образом.
import yaml
probes = {"app": "/Users/asd/prometheus-configmap.yml"}
with open(probes['app'], 'r') as file:
app_list = yaml.load(file, Loader=yaml.FullLoader)
probes = yaml.safe_load(app_list['data']['blackbox.yml'])
probes[0]['targets'].append("https://xxx1.asd.com/pa")
with open("test.yml", "w") as yaml_file:
yaml.dump(app_list, yaml_file)
вывод файла yaml:
apiVersion: v1
data:
blackbox-flights.yml: "- labels:\n module: http_2xx_get\n targets:\n - https://xxx.asd.com/pa\n\
\ - https://xxx1.asd.com/pa\n"
kind: ConfigMap
metadata:
labels:
name: conf
name: conf
namespace: conf