external-secrets.io_externalsecrets.yaml 42 KB

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