Estou tentando acrescentar novas entradas ao seguinte yaml:
destinations:
- namespace: ns1
server: https://kubernetes.default.svc
O que eu espero é:
destinations:
- namespace: ns1
server: https://kubernetes.default.svc
- namespace: ns2
server: https://kubernetes.default.svc-
- namespace: ns3
server: https://kubernetes.default.svc
e eu posso conseguir isso, se eu fizer assim
yq -i '.spec.destinations += [{"namespace": "zi-test-customer", "server": "https://kubernetes.default.svc"},{"namespace": "zi-test-customer2", "server": "https://kubernetes.default.svc"}]' file.yaml
Mas se eu pegar a lista da variável env eu obtenho a lista errada
O que estou recebendo é:
destinations:
- namespace: ns1
server: https://kubernetes.default.svc
- {"namespace": "ns2", "server": "https://kubernetes.default.svc"}
- {"namespace": "ns3", "server": "https://kubernetes.default.svc"}
Se eu fizer isso
NS=[{"namespace": "ns2", "server": "https://kubernetes.default.svc"},{"namespace": "ns3", "server": "https://kubernetes.default.svc"}]
yq -i '.spec.destinations += env(NS)' file.yaml
Como extrair valores da variável env corretamente?