external-secrets.io_pushsecrets.yaml 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.12.1
  6. name: pushsecrets.external-secrets.io
  7. spec:
  8. group: external-secrets.io
  9. names:
  10. categories:
  11. - pushsecrets
  12. kind: PushSecret
  13. listKind: PushSecretList
  14. plural: pushsecrets
  15. singular: pushsecret
  16. scope: Namespaced
  17. versions:
  18. - additionalPrinterColumns:
  19. - jsonPath: .metadata.creationTimestamp
  20. name: AGE
  21. type: date
  22. - jsonPath: .status.conditions[?(@.type=="Ready")].reason
  23. name: Status
  24. type: string
  25. name: v1alpha1
  26. schema:
  27. openAPIV3Schema:
  28. properties:
  29. apiVersion:
  30. description: 'APIVersion defines the versioned schema of this representation
  31. of an object. Servers should convert recognized schemas to the latest
  32. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  33. type: string
  34. kind:
  35. description: 'Kind is a string value representing the REST resource this
  36. object represents. Servers may infer this from the endpoint the client
  37. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  38. type: string
  39. metadata:
  40. type: object
  41. spec:
  42. description: PushSecretSpec configures the behavior of the PushSecret.
  43. properties:
  44. data:
  45. description: Secret Data that should be pushed to providers
  46. items:
  47. properties:
  48. match:
  49. description: Match a given Secret Key to be pushed to the provider.
  50. properties:
  51. remoteRef:
  52. description: Remote Refs to push to providers.
  53. properties:
  54. property:
  55. description: Name of the property in the resulting secret
  56. type: string
  57. remoteKey:
  58. description: Name of the resulting provider secret.
  59. type: string
  60. required:
  61. - remoteKey
  62. type: object
  63. secretKey:
  64. description: Secret Key to be pushed
  65. type: string
  66. required:
  67. - remoteRef
  68. - secretKey
  69. type: object
  70. required:
  71. - match
  72. type: object
  73. type: array
  74. deletionPolicy:
  75. default: None
  76. description: 'Deletion Policy to handle Secrets in the provider. Possible
  77. Values: "Delete/None". Defaults to "None".'
  78. type: string
  79. refreshInterval:
  80. description: The Interval to which External Secrets will try to push
  81. a secret definition
  82. type: string
  83. secretStoreRefs:
  84. items:
  85. properties:
  86. kind:
  87. default: SecretStore
  88. description: Kind of the SecretStore resource (SecretStore or
  89. ClusterSecretStore) Defaults to `SecretStore`
  90. type: string
  91. labelSelector:
  92. description: Optionally, sync to secret stores with label selector
  93. properties:
  94. matchExpressions:
  95. description: matchExpressions is a list of label selector
  96. requirements. The requirements are ANDed.
  97. items:
  98. description: A label selector requirement is a selector
  99. that contains values, a key, and an operator that relates
  100. the key and values.
  101. properties:
  102. key:
  103. description: key is the label key that the selector
  104. applies to.
  105. type: string
  106. operator:
  107. description: operator represents a key's relationship
  108. to a set of values. Valid operators are In, NotIn,
  109. Exists and DoesNotExist.
  110. type: string
  111. values:
  112. description: values is an array of string values.
  113. If the operator is In or NotIn, the values array
  114. must be non-empty. If the operator is Exists or
  115. DoesNotExist, the values array must be empty. This
  116. array is replaced during a strategic merge patch.
  117. items:
  118. type: string
  119. type: array
  120. required:
  121. - key
  122. - operator
  123. type: object
  124. type: array
  125. matchLabels:
  126. additionalProperties:
  127. type: string
  128. description: matchLabels is a map of {key,value} pairs.
  129. A single {key,value} in the matchLabels map is equivalent
  130. to an element of matchExpressions, whose key field is
  131. "key", the operator is "In", and the values array contains
  132. only "value". The requirements are ANDed.
  133. type: object
  134. type: object
  135. x-kubernetes-map-type: atomic
  136. name:
  137. description: Optionally, sync to the SecretStore of the given
  138. name
  139. type: string
  140. type: object
  141. type: array
  142. selector:
  143. description: The Secret Selector (k8s source) for the Push Secret
  144. properties:
  145. secret:
  146. description: Select a Secret to Push.
  147. properties:
  148. name:
  149. description: Name of the Secret. The Secret must exist in
  150. the same namespace as the PushSecret manifest.
  151. type: string
  152. required:
  153. - name
  154. type: object
  155. required:
  156. - secret
  157. type: object
  158. required:
  159. - secretStoreRefs
  160. - selector
  161. type: object
  162. status:
  163. description: PushSecretStatus indicates the history of the status of PushSecret.
  164. properties:
  165. conditions:
  166. items:
  167. description: PushSecretStatusCondition indicates the status of the
  168. PushSecret.
  169. properties:
  170. lastTransitionTime:
  171. format: date-time
  172. type: string
  173. message:
  174. type: string
  175. reason:
  176. type: string
  177. status:
  178. type: string
  179. type:
  180. description: PushSecretConditionType indicates the condition
  181. of the PushSecret.
  182. type: string
  183. required:
  184. - status
  185. - type
  186. type: object
  187. type: array
  188. refreshTime:
  189. description: refreshTime is the time and date the external secret
  190. was fetched and the target secret updated
  191. format: date-time
  192. nullable: true
  193. type: string
  194. syncedPushSecrets:
  195. additionalProperties:
  196. additionalProperties:
  197. properties:
  198. match:
  199. description: Match a given Secret Key to be pushed to the
  200. provider.
  201. properties:
  202. remoteRef:
  203. description: Remote Refs to push to providers.
  204. properties:
  205. property:
  206. description: Name of the property in the resulting
  207. secret
  208. type: string
  209. remoteKey:
  210. description: Name of the resulting provider secret.
  211. type: string
  212. required:
  213. - remoteKey
  214. type: object
  215. secretKey:
  216. description: Secret Key to be pushed
  217. type: string
  218. required:
  219. - remoteRef
  220. - secretKey
  221. type: object
  222. required:
  223. - match
  224. type: object
  225. type: object
  226. description: Synced Push Secrets for later deletion. Matches Secret
  227. Stores to PushSecretData that was stored to that secretStore.
  228. type: object
  229. syncedResourceVersion:
  230. description: SyncedResourceVersion keeps track of the last synced
  231. version.
  232. type: string
  233. type: object
  234. type: object
  235. served: true
  236. storage: true
  237. subresources:
  238. status: {}