У меня есть файл yaml k8s с блоком ниже
spec:
replicas: 1
strategy:
type: Recreate
, и я хочу добавить блок ниже после "spe c:"
selector:
matchLabels:
app: test-app
Файл огромен и имеет много полей «spe c:», поэтому его нужно добавить при первом совпадении.
Конечное содержимое файла должно выглядеть так:
spec:
selector:
matchLabels:
app: test-app
replicas: 1
strategy:
type: Recreate
Я придумал эту работу Решение с использованием yq с правильными отступами, но оно добавляется в конец файла. Его мучительно поддерживать и читать подобные файлы сотен.
yq -i -y '.spec += {selector:{matchLabels:{app:"test-app"}}}' filename.yaml
Любые ответы с помощью таких инструментов, как sed или awk, приветствуются.