Как установить аннотации для установки руля - PullRequest
0 голосов
/ 07 января 2020

Я пытаюсь установить диаграмму stable / efs-provisioner и хочу применить аннотацию, чтобы развертывание было правильно помечено в datadog.

Datadog требуется аннотация : ad.datadoghq.com/tags: '{"env": "staging"}'

Я пробовал различные заклинания следующего, но я продолжаю получать ошибку ниже.

$ helm install efs-provisioner stable/efs-provisioner \
  --set efsProvisioner.efsFileSystemId=fs-a1b2c3d4 \ 
  --set efsProvisioner.awsRegion=us-east-1 \
  --set annotations."ad\.datadoghq\.com/tags"="{\'env\': \'staging\'}"

Ошибка:

Error: YAML parse error on efs-provisioner/templates/storageclass.yaml: 
error unmarshaling JSON: while decoding JSON: 
json: cannot unmarshal array into Go struct field .metadata.annotations of type string

1 Ответ

0 голосов
/ 07 января 2020

Если вы хотите, чтобы вывод выглядел следующим образом:

$ helm template efs-provisioner stable/efs-provisioner <flags> \
  | grep -m 1 -C 4 datadog
    chart: efs-provisioner-0.10.0
    release: "efs-provisioner"
    heritage: "Helm"
  annotations:
    ad.datadoghq.com/tags: '{"env": "staging"}'

вам нужно экранировать { и использовать \" вместо \':

$ helm template efs-provisioner stable/efs-provisioner \
  --set efsProvisioner.efsFileSystemId=fs-a1b2c3d4 \
  --set efsProvisioner.awsRegion=us-east-1 \
  --set annotations."ad\.datadoghq\.com/tags"="\{\"env\": \"staging\"\}" 
...