Je cherche maintenant des jours, en essayant de découvrir pourquoi mon analyseur yaml (en utilisant PyYaml) ne sauvegarde pas le YAML, car il était à l'état original.Python yaml paquet analyse nouvelle ligne quand elle n'est pas nécessaire
La ligne originale en YAML est:
healthcheck:
test: ["CMD-SHELL", "[ x\"`curl -k --silent -w '%{http_code}' https://localhost:4433 | grep 401`\" = x\"\" ] && exit 1 || exit 0"]
interval: 30s
Mais la nouvelle ligne (juste de charger le fichier et l'enregistrer à nouveau):
healthcheck:
interval: 30s
test:
- CMD-SHELL
- '[ x"`curl -k --silent -w ''%{http_code}'' https://localhost:4433 | grep 401`"
= x"" ] && exit 1 || exit 0'
Il y a deux problèmes ici: 1) la valeur "test" devient une liste au lieu d'une paire de valeurs de clé de ligne. 2) il y a en fait 3 nouvelle ligne ici,
a) -CMD-SHELL
b)- '[ x"`curl -k --silent -w ''%{http_code}'' https://localhost:4433 | grep 401`"
c)= x"" ] && exit 1 || exit 0'
pour que l'autre question est, pourquoi la troisième ligne a été brisée de la deuxième ligne? (Si je montre un espace blanc, vous verrez qu'à la fin de la deuxième ligne il a LF et commence alors la troisième ligne