external-secrets.io_externalsecrets.yaml 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.8.0
  6. creationTimestamp: null
  7. name: externalsecrets.external-secrets.io
  8. spec:
  9. group: external-secrets.io
  10. names:
  11. categories:
  12. - externalsecrets
  13. kind: ExternalSecret
  14. listKind: ExternalSecretList
  15. plural: externalsecrets
  16. shortNames:
  17. - es
  18. singular: externalsecret
  19. scope: Namespaced
  20. versions:
  21. - additionalPrinterColumns:
  22. - jsonPath: .spec.secretStoreRef.name
  23. name: Store
  24. type: string
  25. - jsonPath: .spec.refreshInterval
  26. name: Refresh Interval
  27. type: string
  28. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  29. name: Status
  30. type: string
  31. name: v1alpha1
  32. schema:
  33. openAPIV3Schema:
  34. description: ExternalSecret is the Schema for the external-secrets API.
  35. properties:
  36. apiVersion:
  37. description: 'APIVersion defines the versioned schema of this representation
  38. of an object. Servers should convert recognized schemas to the latest
  39. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  40. type: string
  41. kind:
  42. description: 'Kind is a string value representing the REST resource this
  43. object represents. Servers may infer this from the endpoint the client
  44. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  45. type: string
  46. metadata:
  47. type: object
  48. spec:
  49. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  50. properties:
  51. data:
  52. description: Data defines the connection between the Kubernetes Secret
  53. keys and the Provider data
  54. items:
  55. description: ExternalSecretData defines the connection between the
  56. Kubernetes Secret key (spec.data.<key>) and the Provider data.
  57. properties:
  58. remoteRef:
  59. description: ExternalSecretDataRemoteRef defines Provider data
  60. location.
  61. properties:
  62. key:
  63. description: Key is the key used in the Provider, mandatory
  64. type: string
  65. property:
  66. description: Used to select a specific property of the Provider
  67. value (if a map), if supported
  68. type: string
  69. version:
  70. description: Used to select a specific version of the Provider
  71. value, if supported
  72. type: string
  73. required:
  74. - key
  75. type: object
  76. secretKey:
  77. type: string
  78. required:
  79. - remoteRef
  80. - secretKey
  81. type: object
  82. type: array
  83. dataFrom:
  84. description: DataFrom is used to fetch all properties from a specific
  85. Provider data If multiple entries are specified, the Secret keys
  86. are merged in the specified order
  87. items:
  88. description: ExternalSecretDataRemoteRef defines Provider data location.
  89. properties:
  90. key:
  91. description: Key is the key used in the Provider, mandatory
  92. type: string
  93. property:
  94. description: Used to select a specific property of the Provider
  95. value (if a map), if supported
  96. type: string
  97. version:
  98. description: Used to select a specific version of the Provider
  99. value, if supported
  100. type: string
  101. required:
  102. - key
  103. type: object
  104. type: array
  105. refreshInterval:
  106. default: 1h
  107. description: RefreshInterval is the amount of time before the values
  108. are read again from the SecretStore provider Valid time units are
  109. "ns", "us" (or "µs"), "ms", "s", "m", "h" May be set to zero to
  110. fetch and create it once. Defaults to 1h.
  111. type: string
  112. secretStoreRef:
  113. description: SecretStoreRef defines which SecretStore to fetch the
  114. ExternalSecret data.
  115. properties:
  116. kind:
  117. description: Kind of the SecretStore resource (SecretStore or
  118. ClusterSecretStore) Defaults to `SecretStore`
  119. type: string
  120. name:
  121. description: Name of the SecretStore resource
  122. type: string
  123. required:
  124. - name
  125. type: object
  126. target:
  127. description: ExternalSecretTarget defines the Kubernetes Secret to
  128. be created There can be only one target per ExternalSecret.
  129. properties:
  130. creationPolicy:
  131. default: Owner
  132. description: CreationPolicy defines rules on how to create the
  133. resulting Secret Defaults to 'Owner'
  134. type: string
  135. immutable:
  136. description: Immutable defines if the final secret will be immutable
  137. type: boolean
  138. name:
  139. description: Name defines the name of the Secret resource to be
  140. managed This field is immutable Defaults to the .metadata.name
  141. of the ExternalSecret resource
  142. type: string
  143. template:
  144. description: Template defines a blueprint for the created Secret
  145. resource.
  146. properties:
  147. data:
  148. additionalProperties:
  149. type: string
  150. type: object
  151. metadata:
  152. description: ExternalSecretTemplateMetadata defines metadata
  153. fields for the Secret blueprint.
  154. properties:
  155. annotations:
  156. additionalProperties:
  157. type: string
  158. type: object
  159. labels:
  160. additionalProperties:
  161. type: string
  162. type: object
  163. type: object
  164. templateFrom:
  165. items:
  166. maxProperties: 1
  167. minProperties: 1
  168. properties:
  169. configMap:
  170. properties:
  171. items:
  172. items:
  173. properties:
  174. key:
  175. type: string
  176. required:
  177. - key
  178. type: object
  179. type: array
  180. name:
  181. type: string
  182. required:
  183. - items
  184. - name
  185. type: object
  186. secret:
  187. properties:
  188. items:
  189. items:
  190. properties:
  191. key:
  192. type: string
  193. required:
  194. - key
  195. type: object
  196. type: array
  197. name:
  198. type: string
  199. required:
  200. - items
  201. - name
  202. type: object
  203. type: object
  204. type: array
  205. type:
  206. type: string
  207. type: object
  208. type: object
  209. required:
  210. - secretStoreRef
  211. - target
  212. type: object
  213. status:
  214. properties:
  215. conditions:
  216. items:
  217. properties:
  218. lastTransitionTime:
  219. format: date-time
  220. type: string
  221. message:
  222. type: string
  223. reason:
  224. type: string
  225. status:
  226. type: string
  227. type:
  228. type: string
  229. required:
  230. - status
  231. - type
  232. type: object
  233. type: array
  234. refreshTime:
  235. description: refreshTime is the time and date the external secret
  236. was fetched and the target secret updated
  237. format: date-time
  238. nullable: true
  239. type: string
  240. syncedResourceVersion:
  241. description: SyncedResourceVersion keeps track of the last synced
  242. version
  243. type: string
  244. type: object
  245. type: object
  246. served: true
  247. storage: false
  248. subresources:
  249. status: {}
  250. - additionalPrinterColumns:
  251. - jsonPath: .spec.secretStoreRef.name
  252. name: Store
  253. type: string
  254. - jsonPath: .spec.refreshInterval
  255. name: Refresh Interval
  256. type: string
  257. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  258. name: Status
  259. type: string
  260. name: v1beta1
  261. schema:
  262. openAPIV3Schema:
  263. description: ExternalSecret is the Schema for the external-secrets API.
  264. properties:
  265. apiVersion:
  266. description: 'APIVersion defines the versioned schema of this representation
  267. of an object. Servers should convert recognized schemas to the latest
  268. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  269. type: string
  270. kind:
  271. description: 'Kind is a string value representing the REST resource this
  272. object represents. Servers may infer this from the endpoint the client
  273. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  274. type: string
  275. metadata:
  276. type: object
  277. spec:
  278. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  279. properties:
  280. data:
  281. description: Data defines the connection between the Kubernetes Secret
  282. keys and the Provider data
  283. items:
  284. description: ExternalSecretData defines the connection between the
  285. Kubernetes Secret key (spec.data.<key>) and the Provider data.
  286. properties:
  287. remoteRef:
  288. description: ExternalSecretDataRemoteRef defines Provider data
  289. location.
  290. properties:
  291. key:
  292. description: Key is the key used in the Provider, mandatory
  293. type: string
  294. property:
  295. description: Used to select a specific property of the Provider
  296. value (if a map), if supported
  297. type: string
  298. version:
  299. description: Used to select a specific version of the Provider
  300. value, if supported
  301. type: string
  302. required:
  303. - key
  304. type: object
  305. secretKey:
  306. type: string
  307. required:
  308. - remoteRef
  309. - secretKey
  310. type: object
  311. type: array
  312. dataFrom:
  313. description: DataFrom is used to fetch all properties from a specific
  314. Provider data If multiple entries are specified, the Secret keys
  315. are merged in the specified order
  316. items:
  317. properties:
  318. extract:
  319. description: Used to select a specific version and property
  320. from the secret
  321. properties:
  322. key:
  323. description: Key is the key used in the Provider, mandatory
  324. type: string
  325. property:
  326. description: Used to select a specific property of the Provider
  327. value (if a map), if supported
  328. type: string
  329. version:
  330. description: Used to select a specific version of the Provider
  331. value, if supported
  332. type: string
  333. required:
  334. - key
  335. type: object
  336. find:
  337. description: Used to find secrets based on tags or regular expressions
  338. properties:
  339. name:
  340. description: Key is the key used in the Provider
  341. properties:
  342. regexp:
  343. description: Used to select multiple secrets based on
  344. a regular expression of the name
  345. type: string
  346. type: object
  347. tags:
  348. additionalProperties:
  349. type: string
  350. description: Used to select a specific version of the Provider
  351. value, if supported
  352. type: object
  353. type: object
  354. type: object
  355. type: array
  356. refreshInterval:
  357. default: 1h
  358. description: RefreshInterval is the amount of time before the values
  359. are read again from the SecretStore provider Valid time units are
  360. "ns", "us" (or "µs"), "ms", "s", "m", "h" May be set to zero to
  361. fetch and create it once. Defaults to 1h.
  362. type: string
  363. secretStoreRef:
  364. description: SecretStoreRef defines which SecretStore to fetch the
  365. ExternalSecret data.
  366. properties:
  367. kind:
  368. description: Kind of the SecretStore resource (SecretStore or
  369. ClusterSecretStore) Defaults to `SecretStore`
  370. type: string
  371. name:
  372. description: Name of the SecretStore resource
  373. type: string
  374. required:
  375. - name
  376. type: object
  377. target:
  378. description: ExternalSecretTarget defines the Kubernetes Secret to
  379. be created There can be only one target per ExternalSecret.
  380. properties:
  381. creationPolicy:
  382. default: Owner
  383. description: CreationPolicy defines rules on how to create the
  384. resulting Secret Defaults to 'Owner'
  385. type: string
  386. immutable:
  387. description: Immutable defines if the final secret will be immutable
  388. type: boolean
  389. name:
  390. description: Name defines the name of the Secret resource to be
  391. managed This field is immutable Defaults to the .metadata.name
  392. of the ExternalSecret resource
  393. type: string
  394. template:
  395. description: Template defines a blueprint for the created Secret
  396. resource.
  397. properties:
  398. data:
  399. additionalProperties:
  400. type: string
  401. type: object
  402. metadata:
  403. description: ExternalSecretTemplateMetadata defines metadata
  404. fields for the Secret blueprint.
  405. properties:
  406. annotations:
  407. additionalProperties:
  408. type: string
  409. type: object
  410. labels:
  411. additionalProperties:
  412. type: string
  413. type: object
  414. type: object
  415. templateFrom:
  416. items:
  417. maxProperties: 1
  418. minProperties: 1
  419. properties:
  420. configMap:
  421. properties:
  422. items:
  423. items:
  424. properties:
  425. key:
  426. type: string
  427. required:
  428. - key
  429. type: object
  430. type: array
  431. name:
  432. type: string
  433. required:
  434. - items
  435. - name
  436. type: object
  437. secret:
  438. properties:
  439. items:
  440. items:
  441. properties:
  442. key:
  443. type: string
  444. required:
  445. - key
  446. type: object
  447. type: array
  448. name:
  449. type: string
  450. required:
  451. - items
  452. - name
  453. type: object
  454. type: object
  455. type: array
  456. type:
  457. type: string
  458. type: object
  459. type: object
  460. required:
  461. - secretStoreRef
  462. - target
  463. type: object
  464. status:
  465. properties:
  466. conditions:
  467. items:
  468. properties:
  469. lastTransitionTime:
  470. format: date-time
  471. type: string
  472. message:
  473. type: string
  474. reason:
  475. type: string
  476. status:
  477. type: string
  478. type:
  479. type: string
  480. required:
  481. - status
  482. - type
  483. type: object
  484. type: array
  485. refreshTime:
  486. description: refreshTime is the time and date the external secret
  487. was fetched and the target secret updated
  488. format: date-time
  489. nullable: true
  490. type: string
  491. syncedResourceVersion:
  492. description: SyncedResourceVersion keeps track of the last synced
  493. version
  494. type: string
  495. type: object
  496. type: object
  497. served: true
  498. storage: true
  499. subresources:
  500. status: {}
  501. status:
  502. acceptedNames:
  503. kind: ""
  504. plural: ""
  505. conditions: []
  506. storedVersions: []