Использование подстановочных знаков json-patch в манифесте argocd
Можно ли заменить это
---
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: elastic-operator
labels:
argocd.application.type: "system"
spec:
ignoreDifferences:
- group: admissionregistration.k8s.io
kind: ValidatingWebhookConfiguration
jsonPointers:
- /webhooks/0/clientConfig/caBundle
- group: admissionregistration.k8s.io
kind: ValidatingWebhookConfiguration
jsonPointers:
- /webhooks/1/clientConfig/caBundle
- group: admissionregistration.k8s.io
kind: ValidatingWebhookConfiguration
jsonPointers:
- /webhooks/2/clientConfig/caBundle
Для чего-то, что использует вместо этого "подстановочный знак"? Ниже приводится "нерабочий" пример того, что я ищу:
---
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: elastic-operator
labels:
argocd.application.type: "system"
spec:
ignoreDifferences:
- group: admissionregistration.k8s.io
kind: ValidatingWebhookConfiguration
jsonPointers:
- /webhooks/[*]/clientConfig/caBundle
Я не смог найти в их документации ничего, что говорило бы, что это возможно или наоборот. iehttps://argoproj.github.io/argo-cd/user-guide/diffing/ Кажется, что используется "json-patch", но, читая некоторые RFC, я также не смог найти ничего о подстановочных знаках.
Спасибо!
1 ответ
Решение
На всякий случай с этим столкнется кто-то другой. Ответ - нет, патч json не позволяет использовать это выражение. К счастью, [более новые][1] версии argocd позволяют использовать путь json (!= Patch) новым "jqPathExpressions":
data:
resource.customizations: |
admissionregistration.k8s.io/MutatingWebhookConfiguration:
ignoreDifferences: |
jqPathExpressions:
- '.webhooks[]?.clientConfig.caBundle'