конфигурационные файлы, такие как xml to kubernetes configmap, файл yaml без использования команды kubectl
Конечно, потому что единственное, что kubectl
делает с yaml
, - это немедленно преобразует его в json
, а затем POST
(или PUT
или что-то еще) в API kubernetes с заголовком content-type: application/json;charset=utf-8
(вы можно посмотреть, что происходит через kubectl --v=100 create -f my-thing.yaml
)
Итак, ответ на ваш вопрос заключается в том, чтобы использовать ваш любимый язык программирования с библиотеками для json (или положительно удивительный jq ), при необходимости упаковать XML, использовать что-то вроде kube -применить для отслеживания и развертывания изменений:
# coding=utf-8
import json
import sys
result = {
"apiVersion": "v1",
"kind": "ConfigMap",
# etc etc
"data": [],
}
for fn in sys.argv[1:]:
with open(fn) as fh:
body = fh.read()
data.append({fn: body})
json.dump(result, sys.stdout) # or whatever