chef-external-secret.yaml 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. {% raw %}
  2. apiVersion: external-secrets.io/v1beta1
  3. kind: ExternalSecret
  4. metadata:
  5. name: vivid-external-secrets # name of ExternalSecret
  6. namespace: vivid # namespace inside which the ExternalSecret will be created
  7. annotations:
  8. company/contacts: user.a@company.com, user.b@company.com
  9. company/team: vivid-dev
  10. labels:
  11. app.kubernetes.io/name: external-secrets
  12. spec:
  13. refreshInterval: 15m
  14. secretStoreRef:
  15. name: vivid-clustersecretstore # name of ClusterSecretStore
  16. kind: ClusterSecretStore
  17. data:
  18. - secretKey: USERNAME
  19. remoteRef:
  20. key: vivid_prod/global_user # databagName/dataItemName
  21. property: username # a json key in dataItem
  22. - secretKey: PASSWORD
  23. remoteRef:
  24. key: vivid_prod/global_user
  25. property: password
  26. - secretKey: APIKEY
  27. remoteRef:
  28. key: vivid_global/apikey
  29. property: api_key
  30. - secretKey: APP_PROPERTIES
  31. remoteRef:
  32. key: vivid_global/app_properties # databagName/dataItemName , it will fetch all key-vlaues present in the dataItem
  33. target:
  34. name: vivid-credentials # name of kubernetes Secret resource that will be created and will contain the obtained secrets
  35. creationPolicy: Owner
  36. template:
  37. mergePolicy: Replace
  38. engineVersion: v2
  39. data:
  40. secrets.json: |
  41. {
  42. "username": "{{ .USERNAME }}",
  43. "password": "{{ .PASSWORD }}",
  44. "app_apikey": "{{ .APIKEY }}",
  45. "app_properties": "{{ .APP_PROPERTIES }}"
  46. }
  47. {% endraw %}