fix kyaml issue where dropping Style created issues

dropping the node style creates a compatibility issue where quotes around "on" are dropped
because yaml.v3 interprets it as a string.

other yaml parsers interpret on as a bool value, and parse it as a bool rather than string.

fix: retain the original style so it is kept as quoted.

- fmt: don't drop the styles
- merge2: keep the style when merging elements
- setting a field: if changing the value of a scalar field, retain its style by default
This commit is contained in:
Phillip Wittrock
2019-12-19 15:05:49 -08:00
parent 7e56c2c768
commit 98431f6a00
13 changed files with 147 additions and 85 deletions

View File

@@ -83,10 +83,7 @@ spec:
containers:
- name: nginx
image: nginx:1.7.9
args:
- c
- a
- b
args: ['c', 'a', 'b']
env:
- name: DEMO_GREETING
value: "Hello from the environment"
@@ -139,10 +136,7 @@ spec:
containers:
- name: nginx
image: nginx:1.7.9
args:
- c
- a
- b
args: ['c', 'a', 'b']
env:
- name: DEMO_GREETING
value: "Hello from the environment"
@@ -208,10 +202,7 @@ spec:
containers:
- name: nginx
image: nginx:1.7.9
args:
- c
- a
- b
args: ['c', 'a', 'b']
env:
- name: DEMO_GREETING
value: "Hello from the environment"
@@ -276,10 +267,7 @@ spec:
containers:
- name: nginx
image: nginx:1.7.9
args:
- c
- a
- b
args: ['c', 'a', 'b']
env:
- name: DEMO_GREETING
value: "New Demo Greeting"
@@ -343,10 +331,7 @@ spec:
containers:
- name: nginx
image: nginx:1.7.9
args:
- e
- d
- f
args: ['e', 'd', 'f']
env:
- name: DEMO_GREETING
value: "Hello from the environment"