external-secrets.io_externalsecrets.yaml 41 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.17.0
  6. labels:
  7. external-secrets.io/component: controller
  8. name: externalsecrets.external-secrets.io
  9. spec:
  10. group: external-secrets.io
  11. names:
  12. categories:
  13. - external-secrets
  14. kind: ExternalSecret
  15. listKind: ExternalSecretList
  16. plural: externalsecrets
  17. shortNames:
  18. - es
  19. singular: externalsecret
  20. scope: Namespaced
  21. versions:
  22. - additionalPrinterColumns:
  23. - jsonPath: .spec.secretStoreRef.name
  24. name: Store
  25. type: string
  26. - jsonPath: .spec.refreshInterval
  27. name: Refresh Interval
  28. type: string
  29. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  30. name: Status
  31. type: string
  32. deprecated: true
  33. name: v1alpha1
  34. schema:
  35. openAPIV3Schema:
  36. description: ExternalSecret is the Schema for the external-secrets API.
  37. properties:
  38. apiVersion:
  39. description: |-
  40. APIVersion defines the versioned schema of this representation of an object.
  41. Servers should convert recognized schemas to the latest internal value, and
  42. may reject unrecognized values.
  43. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  44. type: string
  45. kind:
  46. description: |-
  47. Kind is a string value representing the REST resource this object represents.
  48. Servers may infer this from the endpoint the client submits requests to.
  49. Cannot be updated.
  50. In CamelCase.
  51. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  52. type: string
  53. metadata:
  54. type: object
  55. spec:
  56. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  57. properties:
  58. data:
  59. description: Data defines the connection between the Kubernetes Secret
  60. keys and the Provider data
  61. items:
  62. description: ExternalSecretData defines the connection between the
  63. Kubernetes Secret key (spec.data.<key>) and the Provider data.
  64. properties:
  65. remoteRef:
  66. description: ExternalSecretDataRemoteRef defines Provider data
  67. location.
  68. properties:
  69. conversionStrategy:
  70. default: Default
  71. description: Used to define a conversion Strategy
  72. enum:
  73. - Default
  74. - Unicode
  75. type: string
  76. key:
  77. description: Key is the key used in the Provider, mandatory
  78. type: string
  79. property:
  80. description: Used to select a specific property of the Provider
  81. value (if a map), if supported
  82. type: string
  83. version:
  84. description: Used to select a specific version of the Provider
  85. value, if supported
  86. type: string
  87. required:
  88. - key
  89. type: object
  90. secretKey:
  91. description: The key in the Kubernetes Secret to store the value.
  92. maxLength: 253
  93. minLength: 1
  94. pattern: ^[-._a-zA-Z0-9]+$
  95. type: string
  96. required:
  97. - remoteRef
  98. - secretKey
  99. type: object
  100. type: array
  101. dataFrom:
  102. description: |-
  103. DataFrom is used to fetch all properties from a specific Provider data
  104. If multiple entries are specified, the Secret keys are merged in the specified order
  105. items:
  106. description: ExternalSecretDataRemoteRef defines Provider data location.
  107. properties:
  108. conversionStrategy:
  109. default: Default
  110. description: Used to define a conversion Strategy
  111. enum:
  112. - Default
  113. - Unicode
  114. type: string
  115. key:
  116. description: Key is the key used in the Provider, mandatory
  117. type: string
  118. property:
  119. description: Used to select a specific property of the Provider
  120. value (if a map), if supported
  121. type: string
  122. version:
  123. description: Used to select a specific version of the Provider
  124. value, if supported
  125. type: string
  126. required:
  127. - key
  128. type: object
  129. type: array
  130. refreshInterval:
  131. default: 1h
  132. description: |-
  133. RefreshInterval is the amount of time before the values are read again from the SecretStore provider
  134. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  135. May be set to zero to fetch and create it once. Defaults to 1h.
  136. type: string
  137. secretStoreRef:
  138. description: SecretStoreRef defines which SecretStore to fetch the
  139. ExternalSecret data.
  140. properties:
  141. kind:
  142. description: |-
  143. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  144. Defaults to `SecretStore`
  145. enum:
  146. - SecretStore
  147. - ClusterSecretStore
  148. type: string
  149. name:
  150. description: Name of the SecretStore resource
  151. maxLength: 253
  152. minLength: 1
  153. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  154. type: string
  155. type: object
  156. target:
  157. description: |-
  158. ExternalSecretTarget defines the Kubernetes Secret to be created
  159. There can be only one target per ExternalSecret.
  160. properties:
  161. creationPolicy:
  162. default: Owner
  163. description: |-
  164. CreationPolicy defines rules on how to create the resulting Secret.
  165. Defaults to "Owner"
  166. enum:
  167. - Owner
  168. - Merge
  169. - None
  170. type: string
  171. immutable:
  172. description: Immutable defines if the final secret will be immutable
  173. type: boolean
  174. name:
  175. description: |-
  176. The name of the Secret resource to be managed.
  177. Defaults to the .metadata.name of the ExternalSecret resource
  178. maxLength: 253
  179. minLength: 1
  180. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  181. type: string
  182. template:
  183. description: Template defines a blueprint for the created Secret
  184. resource.
  185. properties:
  186. data:
  187. additionalProperties:
  188. type: string
  189. type: object
  190. engineVersion:
  191. default: v1
  192. description: |-
  193. EngineVersion specifies the template engine version
  194. that should be used to compile/execute the
  195. template specified in .data and .templateFrom[].
  196. enum:
  197. - v1
  198. - v2
  199. type: string
  200. metadata:
  201. description: ExternalSecretTemplateMetadata defines metadata
  202. fields for the Secret blueprint.
  203. properties:
  204. annotations:
  205. additionalProperties:
  206. type: string
  207. type: object
  208. labels:
  209. additionalProperties:
  210. type: string
  211. type: object
  212. type: object
  213. templateFrom:
  214. items:
  215. maxProperties: 1
  216. minProperties: 1
  217. properties:
  218. configMap:
  219. properties:
  220. items:
  221. description: A list of keys in the ConfigMap/Secret
  222. to use as templates for Secret data
  223. items:
  224. properties:
  225. key:
  226. description: A key in the ConfigMap/Secret
  227. maxLength: 253
  228. minLength: 1
  229. pattern: ^[-._a-zA-Z0-9]+$
  230. type: string
  231. required:
  232. - key
  233. type: object
  234. type: array
  235. name:
  236. description: The name of the ConfigMap/Secret resource
  237. maxLength: 253
  238. minLength: 1
  239. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  240. type: string
  241. required:
  242. - items
  243. - name
  244. type: object
  245. secret:
  246. properties:
  247. items:
  248. description: A list of keys in the ConfigMap/Secret
  249. to use as templates for Secret data
  250. items:
  251. properties:
  252. key:
  253. description: A key in the ConfigMap/Secret
  254. maxLength: 253
  255. minLength: 1
  256. pattern: ^[-._a-zA-Z0-9]+$
  257. type: string
  258. required:
  259. - key
  260. type: object
  261. type: array
  262. name:
  263. description: The name of the ConfigMap/Secret resource
  264. maxLength: 253
  265. minLength: 1
  266. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  267. type: string
  268. required:
  269. - items
  270. - name
  271. type: object
  272. type: object
  273. type: array
  274. type:
  275. type: string
  276. type: object
  277. type: object
  278. required:
  279. - secretStoreRef
  280. - target
  281. type: object
  282. status:
  283. properties:
  284. binding:
  285. description: Binding represents a servicebinding.io Provisioned Service
  286. reference to the secret
  287. properties:
  288. name:
  289. default: ""
  290. description: |-
  291. Name of the referent.
  292. This field is effectively required, but due to backwards compatibility is
  293. allowed to be empty. Instances of this type with an empty value here are
  294. almost certainly wrong.
  295. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  296. type: string
  297. type: object
  298. x-kubernetes-map-type: atomic
  299. conditions:
  300. items:
  301. properties:
  302. lastTransitionTime:
  303. format: date-time
  304. type: string
  305. message:
  306. type: string
  307. reason:
  308. type: string
  309. status:
  310. type: string
  311. type:
  312. type: string
  313. required:
  314. - status
  315. - type
  316. type: object
  317. type: array
  318. refreshTime:
  319. description: |-
  320. refreshTime is the time and date the external secret was fetched and
  321. the target secret updated
  322. format: date-time
  323. nullable: true
  324. type: string
  325. syncedResourceVersion:
  326. description: SyncedResourceVersion keeps track of the last synced
  327. version
  328. type: string
  329. type: object
  330. type: object
  331. served: true
  332. storage: false
  333. subresources:
  334. status: {}
  335. - additionalPrinterColumns:
  336. - jsonPath: .spec.secretStoreRef.name
  337. name: Store
  338. type: string
  339. - jsonPath: .spec.refreshInterval
  340. name: Refresh Interval
  341. type: string
  342. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  343. name: Status
  344. type: string
  345. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  346. name: Ready
  347. type: string
  348. name: v1beta1
  349. schema:
  350. openAPIV3Schema:
  351. description: ExternalSecret is the Schema for the external-secrets API.
  352. properties:
  353. apiVersion:
  354. description: |-
  355. APIVersion defines the versioned schema of this representation of an object.
  356. Servers should convert recognized schemas to the latest internal value, and
  357. may reject unrecognized values.
  358. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  359. type: string
  360. kind:
  361. description: |-
  362. Kind is a string value representing the REST resource this object represents.
  363. Servers may infer this from the endpoint the client submits requests to.
  364. Cannot be updated.
  365. In CamelCase.
  366. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  367. type: string
  368. metadata:
  369. type: object
  370. spec:
  371. description: ExternalSecretSpec defines the desired state of ExternalSecret.
  372. properties:
  373. data:
  374. description: Data defines the connection between the Kubernetes Secret
  375. keys and the Provider data
  376. items:
  377. description: ExternalSecretData defines the connection between the
  378. Kubernetes Secret key (spec.data.<key>) and the Provider data.
  379. properties:
  380. remoteRef:
  381. description: |-
  382. RemoteRef points to the remote secret and defines
  383. which secret (version/property/..) to fetch.
  384. properties:
  385. conversionStrategy:
  386. default: Default
  387. description: Used to define a conversion Strategy
  388. enum:
  389. - Default
  390. - Unicode
  391. type: string
  392. decodingStrategy:
  393. default: None
  394. description: Used to define a decoding Strategy
  395. enum:
  396. - Auto
  397. - Base64
  398. - Base64URL
  399. - None
  400. type: string
  401. key:
  402. description: Key is the key used in the Provider, mandatory
  403. type: string
  404. metadataPolicy:
  405. default: None
  406. description: Policy for fetching tags/labels from provider
  407. secrets, possible options are Fetch, None. Defaults to
  408. None
  409. enum:
  410. - None
  411. - Fetch
  412. type: string
  413. property:
  414. description: Used to select a specific property of the Provider
  415. value (if a map), if supported
  416. type: string
  417. version:
  418. description: Used to select a specific version of the Provider
  419. value, if supported
  420. type: string
  421. required:
  422. - key
  423. type: object
  424. secretKey:
  425. description: The key in the Kubernetes Secret to store the value.
  426. maxLength: 253
  427. minLength: 1
  428. pattern: ^[-._a-zA-Z0-9]+$
  429. type: string
  430. sourceRef:
  431. description: |-
  432. SourceRef allows you to override the source
  433. from which the value will be pulled.
  434. maxProperties: 1
  435. minProperties: 1
  436. properties:
  437. generatorRef:
  438. description: |-
  439. GeneratorRef points to a generator custom resource.
  440. Deprecated: The generatorRef is not implemented in .data[].
  441. this will be removed with v1.
  442. properties:
  443. apiVersion:
  444. default: generators.external-secrets.io/v1alpha1
  445. description: Specify the apiVersion of the generator
  446. resource
  447. type: string
  448. kind:
  449. description: Specify the Kind of the generator resource
  450. enum:
  451. - ACRAccessToken
  452. - ClusterGenerator
  453. - ECRAuthorizationToken
  454. - Fake
  455. - GCRAccessToken
  456. - GithubAccessToken
  457. - QuayAccessToken
  458. - Password
  459. - STSSessionToken
  460. - UUID
  461. - VaultDynamicSecret
  462. - Webhook
  463. type: string
  464. name:
  465. description: Specify the name of the generator resource
  466. maxLength: 253
  467. minLength: 1
  468. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  469. type: string
  470. required:
  471. - kind
  472. - name
  473. type: object
  474. storeRef:
  475. description: SecretStoreRef defines which SecretStore to
  476. fetch the ExternalSecret data.
  477. properties:
  478. kind:
  479. description: |-
  480. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  481. Defaults to `SecretStore`
  482. enum:
  483. - SecretStore
  484. - ClusterSecretStore
  485. type: string
  486. name:
  487. description: Name of the SecretStore resource
  488. maxLength: 253
  489. minLength: 1
  490. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  491. type: string
  492. type: object
  493. type: object
  494. required:
  495. - remoteRef
  496. - secretKey
  497. type: object
  498. type: array
  499. dataFrom:
  500. description: |-
  501. DataFrom is used to fetch all properties from a specific Provider data
  502. If multiple entries are specified, the Secret keys are merged in the specified order
  503. items:
  504. properties:
  505. extract:
  506. description: |-
  507. Used to extract multiple key/value pairs from one secret
  508. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  509. properties:
  510. conversionStrategy:
  511. default: Default
  512. description: Used to define a conversion Strategy
  513. enum:
  514. - Default
  515. - Unicode
  516. type: string
  517. decodingStrategy:
  518. default: None
  519. description: Used to define a decoding Strategy
  520. enum:
  521. - Auto
  522. - Base64
  523. - Base64URL
  524. - None
  525. type: string
  526. key:
  527. description: Key is the key used in the Provider, mandatory
  528. type: string
  529. metadataPolicy:
  530. default: None
  531. description: Policy for fetching tags/labels from provider
  532. secrets, possible options are Fetch, None. Defaults to
  533. None
  534. enum:
  535. - None
  536. - Fetch
  537. type: string
  538. property:
  539. description: Used to select a specific property of the Provider
  540. value (if a map), if supported
  541. type: string
  542. version:
  543. description: Used to select a specific version of the Provider
  544. value, if supported
  545. type: string
  546. required:
  547. - key
  548. type: object
  549. find:
  550. description: |-
  551. Used to find secrets based on tags or regular expressions
  552. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  553. properties:
  554. conversionStrategy:
  555. default: Default
  556. description: Used to define a conversion Strategy
  557. enum:
  558. - Default
  559. - Unicode
  560. type: string
  561. decodingStrategy:
  562. default: None
  563. description: Used to define a decoding Strategy
  564. enum:
  565. - Auto
  566. - Base64
  567. - Base64URL
  568. - None
  569. type: string
  570. name:
  571. description: Finds secrets based on the name.
  572. properties:
  573. regexp:
  574. description: Finds secrets base
  575. type: string
  576. type: object
  577. path:
  578. description: A root path to start the find operations.
  579. type: string
  580. tags:
  581. additionalProperties:
  582. type: string
  583. description: Find secrets based on tags.
  584. type: object
  585. type: object
  586. rewrite:
  587. description: |-
  588. Used to rewrite secret Keys after getting them from the secret Provider
  589. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  590. items:
  591. properties:
  592. regexp:
  593. description: |-
  594. Used to rewrite with regular expressions.
  595. The resulting key will be the output of a regexp.ReplaceAll operation.
  596. properties:
  597. source:
  598. description: Used to define the regular expression
  599. of a re.Compiler.
  600. type: string
  601. target:
  602. description: Used to define the target pattern of
  603. a ReplaceAll operation.
  604. type: string
  605. required:
  606. - source
  607. - target
  608. type: object
  609. transform:
  610. description: |-
  611. Used to apply string transformation on the secrets.
  612. The resulting key will be the output of the template applied by the operation.
  613. properties:
  614. template:
  615. description: |-
  616. Used to define the template to apply on the secret name.
  617. `.value ` will specify the secret name in the template.
  618. type: string
  619. required:
  620. - template
  621. type: object
  622. type: object
  623. type: array
  624. sourceRef:
  625. description: |-
  626. SourceRef points to a store or generator
  627. which contains secret values ready to use.
  628. Use this in combination with Extract or Find pull values out of
  629. a specific SecretStore.
  630. When sourceRef points to a generator Extract or Find is not supported.
  631. The generator returns a static map of values
  632. maxProperties: 1
  633. minProperties: 1
  634. properties:
  635. generatorRef:
  636. description: GeneratorRef points to a generator custom resource.
  637. properties:
  638. apiVersion:
  639. default: generators.external-secrets.io/v1alpha1
  640. description: Specify the apiVersion of the generator
  641. resource
  642. type: string
  643. kind:
  644. description: Specify the Kind of the generator resource
  645. enum:
  646. - ACRAccessToken
  647. - ClusterGenerator
  648. - ECRAuthorizationToken
  649. - Fake
  650. - GCRAccessToken
  651. - GithubAccessToken
  652. - QuayAccessToken
  653. - Password
  654. - STSSessionToken
  655. - UUID
  656. - VaultDynamicSecret
  657. - Webhook
  658. type: string
  659. name:
  660. description: Specify the name of the generator resource
  661. maxLength: 253
  662. minLength: 1
  663. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  664. type: string
  665. required:
  666. - kind
  667. - name
  668. type: object
  669. storeRef:
  670. description: SecretStoreRef defines which SecretStore to
  671. fetch the ExternalSecret data.
  672. properties:
  673. kind:
  674. description: |-
  675. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  676. Defaults to `SecretStore`
  677. enum:
  678. - SecretStore
  679. - ClusterSecretStore
  680. type: string
  681. name:
  682. description: Name of the SecretStore resource
  683. maxLength: 253
  684. minLength: 1
  685. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  686. type: string
  687. type: object
  688. type: object
  689. type: object
  690. type: array
  691. refreshInterval:
  692. default: 1h
  693. description: |-
  694. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  695. specified as Golang Duration strings.
  696. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  697. Example values: "1h", "2h30m", "5d", "10s"
  698. May be set to zero to fetch and create it once. Defaults to 1h.
  699. type: string
  700. secretStoreRef:
  701. description: SecretStoreRef defines which SecretStore to fetch the
  702. ExternalSecret data.
  703. properties:
  704. kind:
  705. description: |-
  706. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  707. Defaults to `SecretStore`
  708. enum:
  709. - SecretStore
  710. - ClusterSecretStore
  711. type: string
  712. name:
  713. description: Name of the SecretStore resource
  714. maxLength: 253
  715. minLength: 1
  716. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  717. type: string
  718. type: object
  719. target:
  720. default:
  721. creationPolicy: Owner
  722. deletionPolicy: Retain
  723. description: |-
  724. ExternalSecretTarget defines the Kubernetes Secret to be created
  725. There can be only one target per ExternalSecret.
  726. properties:
  727. creationPolicy:
  728. default: Owner
  729. description: |-
  730. CreationPolicy defines rules on how to create the resulting Secret.
  731. Defaults to "Owner"
  732. enum:
  733. - Owner
  734. - Orphan
  735. - Merge
  736. - None
  737. type: string
  738. deletionPolicy:
  739. default: Retain
  740. description: |-
  741. DeletionPolicy defines rules on how to delete the resulting Secret.
  742. Defaults to "Retain"
  743. enum:
  744. - Delete
  745. - Merge
  746. - Retain
  747. type: string
  748. immutable:
  749. description: Immutable defines if the final secret will be immutable
  750. type: boolean
  751. name:
  752. description: |-
  753. The name of the Secret resource to be managed.
  754. Defaults to the .metadata.name of the ExternalSecret resource
  755. maxLength: 253
  756. minLength: 1
  757. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  758. type: string
  759. template:
  760. description: Template defines a blueprint for the created Secret
  761. resource.
  762. properties:
  763. data:
  764. additionalProperties:
  765. type: string
  766. type: object
  767. engineVersion:
  768. default: v2
  769. description: |-
  770. EngineVersion specifies the template engine version
  771. that should be used to compile/execute the
  772. template specified in .data and .templateFrom[].
  773. enum:
  774. - v1
  775. - v2
  776. type: string
  777. mergePolicy:
  778. default: Replace
  779. enum:
  780. - Replace
  781. - Merge
  782. type: string
  783. metadata:
  784. description: ExternalSecretTemplateMetadata defines metadata
  785. fields for the Secret blueprint.
  786. properties:
  787. annotations:
  788. additionalProperties:
  789. type: string
  790. type: object
  791. labels:
  792. additionalProperties:
  793. type: string
  794. type: object
  795. type: object
  796. templateFrom:
  797. items:
  798. properties:
  799. configMap:
  800. properties:
  801. items:
  802. description: A list of keys in the ConfigMap/Secret
  803. to use as templates for Secret data
  804. items:
  805. properties:
  806. key:
  807. description: A key in the ConfigMap/Secret
  808. maxLength: 253
  809. minLength: 1
  810. pattern: ^[-._a-zA-Z0-9]+$
  811. type: string
  812. templateAs:
  813. default: Values
  814. enum:
  815. - Values
  816. - KeysAndValues
  817. type: string
  818. required:
  819. - key
  820. type: object
  821. type: array
  822. name:
  823. description: The name of the ConfigMap/Secret resource
  824. maxLength: 253
  825. minLength: 1
  826. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  827. type: string
  828. required:
  829. - items
  830. - name
  831. type: object
  832. literal:
  833. type: string
  834. secret:
  835. properties:
  836. items:
  837. description: A list of keys in the ConfigMap/Secret
  838. to use as templates for Secret data
  839. items:
  840. properties:
  841. key:
  842. description: A key in the ConfigMap/Secret
  843. maxLength: 253
  844. minLength: 1
  845. pattern: ^[-._a-zA-Z0-9]+$
  846. type: string
  847. templateAs:
  848. default: Values
  849. enum:
  850. - Values
  851. - KeysAndValues
  852. type: string
  853. required:
  854. - key
  855. type: object
  856. type: array
  857. name:
  858. description: The name of the ConfigMap/Secret resource
  859. maxLength: 253
  860. minLength: 1
  861. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  862. type: string
  863. required:
  864. - items
  865. - name
  866. type: object
  867. target:
  868. default: Data
  869. enum:
  870. - Data
  871. - Annotations
  872. - Labels
  873. type: string
  874. type: object
  875. type: array
  876. type:
  877. type: string
  878. type: object
  879. type: object
  880. type: object
  881. status:
  882. properties:
  883. binding:
  884. description: Binding represents a servicebinding.io Provisioned Service
  885. reference to the secret
  886. properties:
  887. name:
  888. default: ""
  889. description: |-
  890. Name of the referent.
  891. This field is effectively required, but due to backwards compatibility is
  892. allowed to be empty. Instances of this type with an empty value here are
  893. almost certainly wrong.
  894. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  895. type: string
  896. type: object
  897. x-kubernetes-map-type: atomic
  898. conditions:
  899. items:
  900. properties:
  901. lastTransitionTime:
  902. format: date-time
  903. type: string
  904. message:
  905. type: string
  906. reason:
  907. type: string
  908. status:
  909. type: string
  910. type:
  911. type: string
  912. required:
  913. - status
  914. - type
  915. type: object
  916. type: array
  917. refreshTime:
  918. description: |-
  919. refreshTime is the time and date the external secret was fetched and
  920. the target secret updated
  921. format: date-time
  922. nullable: true
  923. type: string
  924. syncedResourceVersion:
  925. description: SyncedResourceVersion keeps track of the last synced
  926. version
  927. type: string
  928. type: object
  929. type: object
  930. served: true
  931. storage: true
  932. subresources:
  933. status: {}