我们有一个具有庞大配置的应用程序(这仅是其中的一部分):
apiVersion: v1
kind: ConfigMap
metadata:
name: my-app
data:
application.yaml: |-
config:
app: MY-APP
my-custom-map:
KEY1: value1
KEY2: value2
KEY3: value3
KEY4: value4
something1: true
something2: 123
something3: string123
something4: null
subclass:
anotherMap:
"[AAA:0.0.1,BBB:CCC]": "DDD:EEEE"
subclass2:
something4: AAAA
anotherMap2:
0.0.3: 0.0.3
我遵循这个例子将configmap与spring boot配置绑定,但仍存在一些问题,例如如何解决yaml中的null值,而spring yaml后处理器将其解析为空字符串:问题
第二个问题是如何处理这个configmap。我知道可以编辑然后使用apply,但这可能会导致一些错误。有没有工具可以用来编辑这个yaml并制作一些bash脚本以进行编辑?例如:./my-script.sh -function addMyCustomMapValue -args "KEY5:value5"。我尝试过yq,但我认为它存在一些限制,对于某些用例来说很难使用,并且还有kustomize,我认为它很适合创建configmap,但不适合编辑现有的configmap。
是否已经有一些好的例子适用于这种情况?