external-secrets.io_externalsecrets.yaml 23 KB

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