generators.external-secrets.io_grafanas.yaml 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.19.0
  6. labels:
  7. external-secrets.io/component: controller
  8. name: grafanas.generators.external-secrets.io
  9. spec:
  10. group: generators.external-secrets.io
  11. names:
  12. categories:
  13. - external-secrets
  14. - external-secrets-generators
  15. kind: Grafana
  16. listKind: GrafanaList
  17. plural: grafanas
  18. singular: grafana
  19. scope: Namespaced
  20. versions:
  21. - name: v1alpha1
  22. schema:
  23. openAPIV3Schema:
  24. description: Grafana represents a generator for Grafana service account tokens.
  25. properties:
  26. apiVersion:
  27. description: |-
  28. APIVersion defines the versioned schema of this representation of an object.
  29. Servers should convert recognized schemas to the latest internal value, and
  30. may reject unrecognized values.
  31. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  32. type: string
  33. kind:
  34. description: |-
  35. Kind is a string value representing the REST resource this object represents.
  36. Servers may infer this from the endpoint the client submits requests to.
  37. Cannot be updated.
  38. In CamelCase.
  39. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  40. type: string
  41. metadata:
  42. type: object
  43. spec:
  44. description: GrafanaSpec controls the behavior of the grafana generator.
  45. properties:
  46. auth:
  47. description: |-
  48. Auth is the authentication configuration to authenticate
  49. against the Grafana instance.
  50. properties:
  51. basic:
  52. description: |-
  53. Basic auth credentials used to authenticate against the Grafana instance.
  54. Note: you need a token which has elevated permissions to create service accounts.
  55. See here for the documentation on basic roles offered by Grafana:
  56. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  57. properties:
  58. password:
  59. description: A basic auth password used to authenticate against
  60. the Grafana instance.
  61. properties:
  62. key:
  63. description: The key where the token is found.
  64. maxLength: 253
  65. minLength: 1
  66. pattern: ^[-._a-zA-Z0-9]+$
  67. type: string
  68. name:
  69. description: The name of the Secret resource being referred
  70. to.
  71. maxLength: 253
  72. minLength: 1
  73. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  74. type: string
  75. type: object
  76. username:
  77. description: A basic auth username used to authenticate against
  78. the Grafana instance.
  79. type: string
  80. required:
  81. - password
  82. - username
  83. type: object
  84. token:
  85. description: |-
  86. A service account token used to authenticate against the Grafana instance.
  87. Note: you need a token which has elevated permissions to create service accounts.
  88. See here for the documentation on basic roles offered by Grafana:
  89. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  90. properties:
  91. key:
  92. description: The key where the token is found.
  93. maxLength: 253
  94. minLength: 1
  95. pattern: ^[-._a-zA-Z0-9]+$
  96. type: string
  97. name:
  98. description: The name of the Secret resource being referred
  99. to.
  100. maxLength: 253
  101. minLength: 1
  102. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  103. type: string
  104. type: object
  105. type: object
  106. serviceAccount:
  107. description: |-
  108. ServiceAccount is the configuration for the service account that
  109. is supposed to be generated by the generator.
  110. properties:
  111. name:
  112. description: Name is the name of the service account that will
  113. be created by ESO.
  114. type: string
  115. role:
  116. description: |-
  117. Role is the role of the service account.
  118. See here for the documentation on basic roles offered by Grafana:
  119. https://grafana.com/docs/grafana/latest/administration/roles-and-permissions/access-control/rbac-fixed-basic-role-definitions/
  120. type: string
  121. required:
  122. - name
  123. - role
  124. type: object
  125. url:
  126. description: URL is the URL of the Grafana instance.
  127. type: string
  128. required:
  129. - auth
  130. - serviceAccount
  131. - url
  132. type: object
  133. type: object
  134. served: true
  135. storage: true
  136. subresources:
  137. status: {}