external-secrets.io_clusterexternalsecrets.yaml 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.9.0
  6. creationTimestamp: null
  7. name: clusterexternalsecrets.external-secrets.io
  8. spec:
  9. group: external-secrets.io
  10. names:
  11. categories:
  12. - externalsecrets
  13. kind: ClusterExternalSecret
  14. listKind: ClusterExternalSecretList
  15. plural: clusterexternalsecrets
  16. shortNames:
  17. - ces
  18. singular: clusterexternalsecret
  19. scope: Cluster
  20. versions:
  21. - name: v1beta1
  22. schema:
  23. openAPIV3Schema:
  24. description: ClusterExternalSecret is the Schema for the clusterexternalsecrets
  25. API.
  26. properties:
  27. apiVersion:
  28. description: 'APIVersion defines the versioned schema of this representation
  29. of an object. Servers should convert recognized schemas to the latest
  30. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  31. type: string
  32. kind:
  33. description: 'Kind is a string value representing the REST resource this
  34. object represents. Servers may infer this from the endpoint the client
  35. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  36. type: string
  37. metadata:
  38. type: object
  39. spec:
  40. description: ClusterExternalSecretSpec defines the desired state of ClusterExternalSecret.
  41. properties:
  42. externalSecretName:
  43. description: The name of the external secrets to be created defaults
  44. to the name of the ClusterExternalSecret
  45. type: string
  46. externalSecretSpec:
  47. description: The spec for the ExternalSecrets to be created
  48. properties:
  49. data:
  50. description: Data defines the connection between the Kubernetes
  51. Secret keys and the Provider data
  52. items:
  53. description: ExternalSecretData defines the connection between
  54. the Kubernetes Secret key (spec.data.<key>) and the Provider
  55. data.
  56. properties:
  57. remoteRef:
  58. description: ExternalSecretDataRemoteRef defines Provider
  59. data location.
  60. properties:
  61. conversionStrategy:
  62. default: Default
  63. description: Used to define a conversion Strategy
  64. type: string
  65. key:
  66. description: Key is the key used in the Provider, mandatory
  67. type: string
  68. metadataPolicy:
  69. description: Policy for fetching tags/labels from provider
  70. secrets, possible options are Fetch, None. Defaults
  71. to None
  72. type: string
  73. property:
  74. description: Used to select a specific property of the
  75. Provider value (if a map), if supported
  76. type: string
  77. version:
  78. description: Used to select a specific version of the
  79. Provider value, if supported
  80. type: string
  81. required:
  82. - key
  83. type: object
  84. secretKey:
  85. type: string
  86. required:
  87. - remoteRef
  88. - secretKey
  89. type: object
  90. type: array
  91. dataFrom:
  92. description: DataFrom is used to fetch all properties from a specific
  93. Provider data If multiple entries are specified, the Secret
  94. keys are merged in the specified order
  95. items:
  96. maxProperties: 1
  97. minProperties: 1
  98. properties:
  99. extract:
  100. description: Used to extract multiple key/value pairs from
  101. one secret
  102. properties:
  103. conversionStrategy:
  104. default: Default
  105. description: Used to define a conversion Strategy
  106. type: string
  107. key:
  108. description: Key is the key used in the Provider, mandatory
  109. type: string
  110. metadataPolicy:
  111. description: Policy for fetching tags/labels from provider
  112. secrets, possible options are Fetch, None. Defaults
  113. to None
  114. type: string
  115. property:
  116. description: Used to select a specific property of the
  117. Provider value (if a map), if supported
  118. type: string
  119. version:
  120. description: Used to select a specific version of the
  121. Provider value, if supported
  122. type: string
  123. required:
  124. - key
  125. type: object
  126. find:
  127. description: Used to find secrets based on tags or regular
  128. expressions
  129. properties:
  130. conversionStrategy:
  131. default: Default
  132. description: Used to define a conversion Strategy
  133. type: string
  134. name:
  135. description: Finds secrets based on the name.
  136. properties:
  137. regexp:
  138. description: Finds secrets base
  139. type: string
  140. type: object
  141. path:
  142. description: A root path to start the find operations.
  143. type: string
  144. tags:
  145. additionalProperties:
  146. type: string
  147. description: Find secrets based on tags.
  148. type: object
  149. type: object
  150. type: object
  151. type: array
  152. refreshInterval:
  153. default: 1h
  154. description: RefreshInterval is the amount of time before the
  155. values are read again from the SecretStore provider Valid time
  156. units are "ns", "us" (or "µs"), "ms", "s", "m", "h" May be set
  157. to zero to fetch and create it once. Defaults to 1h.
  158. type: string
  159. secretStoreRef:
  160. description: SecretStoreRef defines which SecretStore to fetch
  161. the ExternalSecret data.
  162. properties:
  163. kind:
  164. description: Kind of the SecretStore resource (SecretStore
  165. or ClusterSecretStore) Defaults to `SecretStore`
  166. type: string
  167. name:
  168. description: Name of the SecretStore resource
  169. type: string
  170. required:
  171. - name
  172. type: object
  173. target:
  174. description: ExternalSecretTarget defines the Kubernetes Secret
  175. to be created There can be only one target per ExternalSecret.
  176. properties:
  177. creationPolicy:
  178. default: Owner
  179. description: CreationPolicy defines rules on how to create
  180. the resulting Secret Defaults to 'Owner'
  181. enum:
  182. - Owner
  183. - Orphan
  184. - Merge
  185. - None
  186. type: string
  187. deletionPolicy:
  188. default: Retain
  189. description: DeletionPolicy defines rules on how to delete
  190. the resulting Secret Defaults to 'Retain'
  191. enum:
  192. - Delete
  193. - Merge
  194. - Retain
  195. type: string
  196. immutable:
  197. description: Immutable defines if the final secret will be
  198. immutable
  199. type: boolean
  200. name:
  201. description: Name defines the name of the Secret resource
  202. to be managed This field is immutable Defaults to the .metadata.name
  203. of the ExternalSecret resource
  204. type: string
  205. template:
  206. description: Template defines a blueprint for the created
  207. Secret resource.
  208. properties:
  209. data:
  210. additionalProperties:
  211. type: string
  212. type: object
  213. engineVersion:
  214. default: v2
  215. type: string
  216. metadata:
  217. description: ExternalSecretTemplateMetadata defines metadata
  218. fields for the Secret blueprint.
  219. properties:
  220. annotations:
  221. additionalProperties:
  222. type: string
  223. type: object
  224. labels:
  225. additionalProperties:
  226. type: string
  227. type: object
  228. type: object
  229. templateFrom:
  230. items:
  231. maxProperties: 1
  232. minProperties: 1
  233. properties:
  234. configMap:
  235. properties:
  236. items:
  237. items:
  238. properties:
  239. key:
  240. type: string
  241. required:
  242. - key
  243. type: object
  244. type: array
  245. name:
  246. type: string
  247. required:
  248. - items
  249. - name
  250. type: object
  251. secret:
  252. properties:
  253. items:
  254. items:
  255. properties:
  256. key:
  257. type: string
  258. required:
  259. - key
  260. type: object
  261. type: array
  262. name:
  263. type: string
  264. required:
  265. - items
  266. - name
  267. type: object
  268. type: object
  269. type: array
  270. type:
  271. type: string
  272. type: object
  273. type: object
  274. required:
  275. - secretStoreRef
  276. type: object
  277. namespaceSelector:
  278. description: The labels to select by to find the Namespaces to create
  279. the ExternalSecrets in.
  280. properties:
  281. matchExpressions:
  282. description: matchExpressions is a list of label selector requirements.
  283. The requirements are ANDed.
  284. items:
  285. description: A label selector requirement is a selector that
  286. contains values, a key, and an operator that relates the key
  287. and values.
  288. properties:
  289. key:
  290. description: key is the label key that the selector applies
  291. to.
  292. type: string
  293. operator:
  294. description: operator represents a key's relationship to
  295. a set of values. Valid operators are In, NotIn, Exists
  296. and DoesNotExist.
  297. type: string
  298. values:
  299. description: values is an array of string values. If the
  300. operator is In or NotIn, the values array must be non-empty.
  301. If the operator is Exists or DoesNotExist, the values
  302. array must be empty. This array is replaced during a strategic
  303. merge patch.
  304. items:
  305. type: string
  306. type: array
  307. required:
  308. - key
  309. - operator
  310. type: object
  311. type: array
  312. matchLabels:
  313. additionalProperties:
  314. type: string
  315. description: matchLabels is a map of {key,value} pairs. A single
  316. {key,value} in the matchLabels map is equivalent to an element
  317. of matchExpressions, whose key field is "key", the operator
  318. is "In", and the values array contains only "value". The requirements
  319. are ANDed.
  320. type: object
  321. type: object
  322. refreshTime:
  323. description: The time in which the controller should reconcile it's
  324. objects and recheck namespaces for labels.
  325. type: string
  326. required:
  327. - externalSecretSpec
  328. - namespaceSelector
  329. type: object
  330. status:
  331. description: ClusterExternalSecretStatus defines the observed state of
  332. ClusterExternalSecret.
  333. properties:
  334. conditions:
  335. items:
  336. properties:
  337. message:
  338. type: string
  339. status:
  340. type: string
  341. type:
  342. type: string
  343. required:
  344. - status
  345. - type
  346. type: object
  347. type: array
  348. failedNamespaces:
  349. description: Failed namespaces are the namespaces that failed to apply
  350. an ExternalSecret
  351. items:
  352. description: ClusterExternalSecretNamespaceFailure represents a
  353. failed namespace deployment and it's reason.
  354. properties:
  355. namespace:
  356. description: Namespace is the namespace that failed when trying
  357. to apply an ExternalSecret
  358. type: string
  359. reason:
  360. description: Reason is why the ExternalSecret failed to apply
  361. to the namespace
  362. type: string
  363. required:
  364. - namespace
  365. type: object
  366. type: array
  367. provisionedNamespaces:
  368. description: ProvisionedNamespaces are the namespaces where the ClusterExternalSecret
  369. has secrets
  370. items:
  371. type: string
  372. type: array
  373. type: object
  374. type: object
  375. served: true
  376. storage: true
  377. subresources:
  378. status: {}