zlabjp / kubernetes-resource

[DEPLICATED] This repository is no longer actively maintained.
MIT License
91 stars 42 forks source link

Quotes used for params kubectl disappear #58

Open gs11 opened 5 years ago

gs11 commented 5 years ago

Is this a BUG REPORT or FEATURE REQUEST?:

What happened: Quotes used for a json patch disappear and kubectl fails because unparseable command. kubectl patch --namespace <namespace> statefulset <namespace> --type=json -p=[{op: replace, path: /spec/template/spec/containers/0/image, value:<image>}]

error: unable to parse "[{op:": yaml: line 1: did not find expected node content

What you expected to happen: They'd be preserved in order for kubectl to work

How to reproduce it (as minimally and precisely as possible): Use a kubectl params like: patch --namespace <namespace> statefulset <statefulset> --type=json -p='[{"op": "replace", "path": "/spec/template/spec/containers/0/image", "value":"<image>"}]'

Anything else we need to know?: Tested multiple ways of escaping the line without success

Environment:

superbrothers commented 5 years ago

Thank you for reporting. I'll check it out.

superbrothers commented 5 years ago

Anyway, you can use kubectl set image command instead.

gs11 commented 5 years ago

Thanks, I didn't actually know that you could use set image for statefulsets. Just need to figure out how to pass the image path & version (from previous tasks) into the params.kubectl.

superbrothers commented 5 years ago

I was wrong. kubectl set image can not change the image of statefulset :sweat: