Исправлены ошибки в файлах yaml - PullRequest
1 голос
/ 25 мая 2019

Я хотел исправить ошибки, которые yamllint дает. Например, autotpep8 автоматически форматирует код Python в стиль PEP8, есть ли у нас что-то похожее для файлов yaml? Или есть ли плагины в VSCode и Pycharm?

Ответы [ 2 ]

0 голосов
/ 25 мая 2019

Это, вероятно, не исправляет все ошибки linting, которые вы получите, но следующая программа Python удалит все ненужные кавычки вокруг скаляров, нормализует YAML, например, с учетом отступа последовательностей стилей блоков и отображений:

import sys
import ruamel.yaml

yaml = ruamel.yaml.YAML()
# uncomment the next line to change the default indentation (mapping=2, sequence=2, offset=0) 
# yaml.indent(mapping=4, sequence=4, offset=2)
data = yaml.load(sys.stdin)
yaml.dump(data, sys.stdout)

Вышеописанное работает как конвейер, последние две строки можно заменить на:

from pathlib import Path
path = Path(sys.argv[1])
data = yaml.load(path)
yaml.dump(data, path)

для чтения и записи в файл, именем которого являетсяпервый аргумент, предоставленный сценарию.

0 голосов

Используйте это расширение для VSCODE. Он обеспечивает полную поддержку языка YAML для кода Visual Studio через сервер языка yaml со встроенной поддержкой синтаксиса Kubernetes и Kedge.

Нажмите (Ctrl + Shift + O) для выделения документов.

...