Попытка исправить мой пользовательский ресурс для добавления дополнительного элемента в массив.
Работает нормально, используя kubectl:
kubectl patch my-resource default --type=json -p '[ { "op":"add", "path": "/spec/data/-", "value": "3342, 43243.343, 434343" } ]' -v 9
, но не может заставить его работать, используя Python:
body = '[ { "op":"add", "path":"/spec/data/-", "value": "3342, 43243.343, 434343" } ]'
api_response = api_instance.patch_namespaced_custom_object(group, version, namespace, plural, name, json.loads(body) )
Получение ответа
"status":"Failure","message":"json: cannot unmarshal array into Go value of type map[string]interface {}","code":500
странно, когда я бросаю [] и просто передаю {}
api_response = api_instance.patch_namespaced_custom_object(group, version, namespace, plural, name, json.loads('{ "spec": { "data": [ "3342, 43243.343, 434343" ] } } ') )
, это работает, но эффект не тот, который я хотите - он полностью перезаписывает массив данных, в то время как я хочу добавить.
Чего мне не хватает?