external-secrets.io_externalsecrets.yaml 41 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.17.1
  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. type: string
  470. name:
  471. description: Specify the name of the generator resource
  472. maxLength: 253
  473. minLength: 1
  474. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  475. type: string
  476. required:
  477. - kind
  478. - name
  479. type: object
  480. storeRef:
  481. description: SecretStoreRef defines which SecretStore to
  482. fetch the ExternalSecret data.
  483. properties:
  484. kind:
  485. description: |-
  486. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  487. Defaults to `SecretStore`
  488. enum:
  489. - SecretStore
  490. - ClusterSecretStore
  491. type: string
  492. name:
  493. description: Name of the SecretStore resource
  494. maxLength: 253
  495. minLength: 1
  496. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  497. type: string
  498. type: object
  499. type: object
  500. required:
  501. - remoteRef
  502. - secretKey
  503. type: object
  504. type: array
  505. dataFrom:
  506. description: |-
  507. DataFrom is used to fetch all properties from a specific Provider data
  508. If multiple entries are specified, the Secret keys are merged in the specified order
  509. items:
  510. properties:
  511. extract:
  512. description: |-
  513. Used to extract multiple key/value pairs from one secret
  514. Note: Extract does not support sourceRef.Generator or sourceRef.GeneratorRef.
  515. properties:
  516. conversionStrategy:
  517. default: Default
  518. description: Used to define a conversion Strategy
  519. enum:
  520. - Default
  521. - Unicode
  522. type: string
  523. decodingStrategy:
  524. default: None
  525. description: Used to define a decoding Strategy
  526. enum:
  527. - Auto
  528. - Base64
  529. - Base64URL
  530. - None
  531. type: string
  532. key:
  533. description: Key is the key used in the Provider, mandatory
  534. type: string
  535. metadataPolicy:
  536. default: None
  537. description: Policy for fetching tags/labels from provider
  538. secrets, possible options are Fetch, None. Defaults to
  539. None
  540. enum:
  541. - None
  542. - Fetch
  543. type: string
  544. property:
  545. description: Used to select a specific property of the Provider
  546. value (if a map), if supported
  547. type: string
  548. version:
  549. description: Used to select a specific version of the Provider
  550. value, if supported
  551. type: string
  552. required:
  553. - key
  554. type: object
  555. find:
  556. description: |-
  557. Used to find secrets based on tags or regular expressions
  558. Note: Find does not support sourceRef.Generator or sourceRef.GeneratorRef.
  559. properties:
  560. conversionStrategy:
  561. default: Default
  562. description: Used to define a conversion Strategy
  563. enum:
  564. - Default
  565. - Unicode
  566. type: string
  567. decodingStrategy:
  568. default: None
  569. description: Used to define a decoding Strategy
  570. enum:
  571. - Auto
  572. - Base64
  573. - Base64URL
  574. - None
  575. type: string
  576. name:
  577. description: Finds secrets based on the name.
  578. properties:
  579. regexp:
  580. description: Finds secrets base
  581. type: string
  582. type: object
  583. path:
  584. description: A root path to start the find operations.
  585. type: string
  586. tags:
  587. additionalProperties:
  588. type: string
  589. description: Find secrets based on tags.
  590. type: object
  591. type: object
  592. rewrite:
  593. description: |-
  594. Used to rewrite secret Keys after getting them from the secret Provider
  595. Multiple Rewrite operations can be provided. They are applied in a layered order (first to last)
  596. items:
  597. properties:
  598. regexp:
  599. description: |-
  600. Used to rewrite with regular expressions.
  601. The resulting key will be the output of a regexp.ReplaceAll operation.
  602. properties:
  603. source:
  604. description: Used to define the regular expression
  605. of a re.Compiler.
  606. type: string
  607. target:
  608. description: Used to define the target pattern of
  609. a ReplaceAll operation.
  610. type: string
  611. required:
  612. - source
  613. - target
  614. type: object
  615. transform:
  616. description: |-
  617. Used to apply string transformation on the secrets.
  618. The resulting key will be the output of the template applied by the operation.
  619. properties:
  620. template:
  621. description: |-
  622. Used to define the template to apply on the secret name.
  623. `.value ` will specify the secret name in the template.
  624. type: string
  625. required:
  626. - template
  627. type: object
  628. type: object
  629. type: array
  630. sourceRef:
  631. description: |-
  632. SourceRef points to a store or generator
  633. which contains secret values ready to use.
  634. Use this in combination with Extract or Find pull values out of
  635. a specific SecretStore.
  636. When sourceRef points to a generator Extract or Find is not supported.
  637. The generator returns a static map of values
  638. maxProperties: 1
  639. minProperties: 1
  640. properties:
  641. generatorRef:
  642. description: GeneratorRef points to a generator custom resource.
  643. properties:
  644. apiVersion:
  645. default: generators.external-secrets.io/v1alpha1
  646. description: Specify the apiVersion of the generator
  647. resource
  648. type: string
  649. kind:
  650. description: Specify the Kind of the generator resource
  651. enum:
  652. - ACRAccessToken
  653. - ClusterGenerator
  654. - ECRAuthorizationToken
  655. - Fake
  656. - GCRAccessToken
  657. - GithubAccessToken
  658. - QuayAccessToken
  659. - Password
  660. - STSSessionToken
  661. - UUID
  662. - VaultDynamicSecret
  663. - Webhook
  664. type: string
  665. name:
  666. description: Specify the name of the generator resource
  667. maxLength: 253
  668. minLength: 1
  669. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  670. type: string
  671. required:
  672. - kind
  673. - name
  674. type: object
  675. storeRef:
  676. description: SecretStoreRef defines which SecretStore to
  677. fetch the ExternalSecret data.
  678. properties:
  679. kind:
  680. description: |-
  681. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  682. Defaults to `SecretStore`
  683. enum:
  684. - SecretStore
  685. - ClusterSecretStore
  686. type: string
  687. name:
  688. description: Name of the SecretStore resource
  689. maxLength: 253
  690. minLength: 1
  691. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  692. type: string
  693. type: object
  694. type: object
  695. type: object
  696. type: array
  697. refreshInterval:
  698. default: 1h
  699. description: |-
  700. RefreshInterval is the amount of time before the values are read again from the SecretStore provider,
  701. specified as Golang Duration strings.
  702. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"
  703. Example values: "1h", "2h30m", "5d", "10s"
  704. May be set to zero to fetch and create it once. Defaults to 1h.
  705. type: string
  706. secretStoreRef:
  707. description: SecretStoreRef defines which SecretStore to fetch the
  708. ExternalSecret data.
  709. properties:
  710. kind:
  711. description: |-
  712. Kind of the SecretStore resource (SecretStore or ClusterSecretStore)
  713. Defaults to `SecretStore`
  714. enum:
  715. - SecretStore
  716. - ClusterSecretStore
  717. type: string
  718. name:
  719. description: Name of the SecretStore resource
  720. maxLength: 253
  721. minLength: 1
  722. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  723. type: string
  724. type: object
  725. target:
  726. default:
  727. creationPolicy: Owner
  728. deletionPolicy: Retain
  729. description: |-
  730. ExternalSecretTarget defines the Kubernetes Secret to be created
  731. There can be only one target per ExternalSecret.
  732. properties:
  733. creationPolicy:
  734. default: Owner
  735. description: |-
  736. CreationPolicy defines rules on how to create the resulting Secret.
  737. Defaults to "Owner"
  738. enum:
  739. - Owner
  740. - Orphan
  741. - Merge
  742. - None
  743. type: string
  744. deletionPolicy:
  745. default: Retain
  746. description: |-
  747. DeletionPolicy defines rules on how to delete the resulting Secret.
  748. Defaults to "Retain"
  749. enum:
  750. - Delete
  751. - Merge
  752. - Retain
  753. type: string
  754. immutable:
  755. description: Immutable defines if the final secret will be immutable
  756. type: boolean
  757. name:
  758. description: |-
  759. The name of the Secret resource to be managed.
  760. Defaults to the .metadata.name of the ExternalSecret resource
  761. maxLength: 253
  762. minLength: 1
  763. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  764. type: string
  765. template:
  766. description: Template defines a blueprint for the created Secret
  767. resource.
  768. properties:
  769. data:
  770. additionalProperties:
  771. type: string
  772. type: object
  773. engineVersion:
  774. default: v2
  775. description: |-
  776. EngineVersion specifies the template engine version
  777. that should be used to compile/execute the
  778. template specified in .data and .templateFrom[].
  779. enum:
  780. - v1
  781. - v2
  782. type: string
  783. mergePolicy:
  784. default: Replace
  785. enum:
  786. - Replace
  787. - Merge
  788. type: string
  789. metadata:
  790. description: ExternalSecretTemplateMetadata defines metadata
  791. fields for the Secret blueprint.
  792. properties:
  793. annotations:
  794. additionalProperties:
  795. type: string
  796. type: object
  797. labels:
  798. additionalProperties:
  799. type: string
  800. type: object
  801. type: object
  802. templateFrom:
  803. items:
  804. properties:
  805. configMap:
  806. properties:
  807. items:
  808. description: A list of keys in the ConfigMap/Secret
  809. to use as templates for Secret data
  810. items:
  811. properties:
  812. key:
  813. description: A key in the ConfigMap/Secret
  814. maxLength: 253
  815. minLength: 1
  816. pattern: ^[-._a-zA-Z0-9]+$
  817. type: string
  818. templateAs:
  819. default: Values
  820. enum:
  821. - Values
  822. - KeysAndValues
  823. type: string
  824. required:
  825. - key
  826. type: object
  827. type: array
  828. name:
  829. description: The name of the ConfigMap/Secret resource
  830. maxLength: 253
  831. minLength: 1
  832. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  833. type: string
  834. required:
  835. - items
  836. - name
  837. type: object
  838. literal:
  839. type: string
  840. secret:
  841. properties:
  842. items:
  843. description: A list of keys in the ConfigMap/Secret
  844. to use as templates for Secret data
  845. items:
  846. properties:
  847. key:
  848. description: A key in the ConfigMap/Secret
  849. maxLength: 253
  850. minLength: 1
  851. pattern: ^[-._a-zA-Z0-9]+$
  852. type: string
  853. templateAs:
  854. default: Values
  855. enum:
  856. - Values
  857. - KeysAndValues
  858. type: string
  859. required:
  860. - key
  861. type: object
  862. type: array
  863. name:
  864. description: The name of the ConfigMap/Secret resource
  865. maxLength: 253
  866. minLength: 1
  867. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  868. type: string
  869. required:
  870. - items
  871. - name
  872. type: object
  873. target:
  874. default: Data
  875. enum:
  876. - Data
  877. - Annotations
  878. - Labels
  879. type: string
  880. type: object
  881. type: array
  882. type:
  883. type: string
  884. type: object
  885. type: object
  886. type: object
  887. status:
  888. properties:
  889. binding:
  890. description: Binding represents a servicebinding.io Provisioned Service
  891. reference to the secret
  892. properties:
  893. name:
  894. default: ""
  895. description: |-
  896. Name of the referent.
  897. This field is effectively required, but due to backwards compatibility is
  898. allowed to be empty. Instances of this type with an empty value here are
  899. almost certainly wrong.
  900. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
  901. type: string
  902. type: object
  903. x-kubernetes-map-type: atomic
  904. conditions:
  905. items:
  906. properties:
  907. lastTransitionTime:
  908. format: date-time
  909. type: string
  910. message:
  911. type: string
  912. reason:
  913. type: string
  914. status:
  915. type: string
  916. type:
  917. type: string
  918. required:
  919. - status
  920. - type
  921. type: object
  922. type: array
  923. refreshTime:
  924. description: |-
  925. refreshTime is the time and date the external secret was fetched and
  926. the target secret updated
  927. format: date-time
  928. nullable: true
  929. type: string
  930. syncedResourceVersion:
  931. description: SyncedResourceVersion keeps track of the last synced
  932. version
  933. type: string
  934. type: object
  935. type: object
  936. served: true
  937. storage: true
  938. subresources:
  939. status: {}