github.com/oam-dev/kubevela@v1.9.11/docs/examples/traits/json-patch/example.yaml (about) 1 apiVersion: core.oam.dev/v1beta1 2 kind: Application 3 metadata: 4 name: busybox 5 spec: 6 components: 7 - name: busybox 8 type: webservice 9 properties: 10 image: busybox 11 cmd: ["sleep", "86400"] 12 labels: 13 pod-label-key: pod-label-value 14 to-delete-label-key: to-delete-label-value 15 traits: 16 # the json patch can be used to add, replace and delete fields 17 # the following part will 18 # 1. add `deploy-label-key` to deployment labels 19 # 2. set deployment replicas to 3 20 # 3. set `pod-label-key` to `pod-label-modified-value` in pod labels 21 # 4. delete `to-delete-label-key` in pod labels 22 # 5. add sidecar container for pod 23 - type: json-patch 24 properties: 25 operations: 26 - op: add 27 path: "/spec/replicas" 28 value: 3 29 - op: replace 30 path: "/spec/template/metadata/labels/pod-label-key" 31 value: pod-label-modified-value 32 - op: remove 33 path: "/spec/template/metadata/labels/to-delete-label-key" 34 - op: add 35 path: "/spec/template/spec/containers/1" 36 value: 37 name: busybox-sidecar 38 image: busybox:1.34 39 command: ["sleep", "864000"]