generators.external-secrets.io_ecrauthorizationtokens.yaml 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201
  1. apiVersion: apiextensions.k8s.io/v1
  2. kind: CustomResourceDefinition
  3. metadata:
  4. annotations:
  5. controller-gen.kubebuilder.io/version: v0.19.0
  6. labels:
  7. external-secrets.io/component: controller
  8. name: ecrauthorizationtokens.generators.external-secrets.io
  9. spec:
  10. group: generators.external-secrets.io
  11. names:
  12. categories:
  13. - external-secrets
  14. - external-secrets-generators
  15. kind: ECRAuthorizationToken
  16. listKind: ECRAuthorizationTokenList
  17. plural: ecrauthorizationtokens
  18. singular: ecrauthorizationtoken
  19. scope: Namespaced
  20. versions:
  21. - name: v1alpha1
  22. schema:
  23. openAPIV3Schema:
  24. description: |-
  25. ECRAuthorizationToken uses the GetAuthorizationToken API to retrieve an authorization token.
  26. The authorization token is valid for 12 hours.
  27. The authorizationToken returned is a base64 encoded string that can be decoded
  28. and used in a docker login command to authenticate to a registry.
  29. For more information, see Registry authentication (https://docs.aws.amazon.com/AmazonECR/latest/userguide/Registries.html#registry_auth) in the Amazon Elastic Container Registry User Guide.
  30. properties:
  31. apiVersion:
  32. description: |-
  33. APIVersion defines the versioned schema of this representation of an object.
  34. Servers should convert recognized schemas to the latest internal value, and
  35. may reject unrecognized values.
  36. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
  37. type: string
  38. kind:
  39. description: |-
  40. Kind is a string value representing the REST resource this object represents.
  41. Servers may infer this from the endpoint the client submits requests to.
  42. Cannot be updated.
  43. In CamelCase.
  44. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
  45. type: string
  46. metadata:
  47. type: object
  48. spec:
  49. description: ECRAuthorizationTokenSpec defines the desired state to generate
  50. an AWS ECR authorization token.
  51. properties:
  52. auth:
  53. description: Auth defines how to authenticate with AWS
  54. properties:
  55. jwt:
  56. description: AWSJWTAuth provides configuration to authenticate
  57. against AWS using service account tokens.
  58. properties:
  59. serviceAccountRef:
  60. description: ServiceAccountSelector is a reference to a ServiceAccount
  61. resource.
  62. properties:
  63. audiences:
  64. description: |-
  65. Audience specifies the `aud` claim for the service account token
  66. If the service account uses a well-known annotation for e.g. IRSA or GCP Workload Identity
  67. then this audiences will be appended to the list
  68. items:
  69. type: string
  70. type: array
  71. name:
  72. description: The name of the ServiceAccount resource being
  73. referred to.
  74. maxLength: 253
  75. minLength: 1
  76. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  77. type: string
  78. namespace:
  79. description: |-
  80. Namespace of the resource being referred to.
  81. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  82. maxLength: 63
  83. minLength: 1
  84. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  85. type: string
  86. required:
  87. - name
  88. type: object
  89. type: object
  90. secretRef:
  91. description: |-
  92. AWSAuthSecretRef holds secret references for AWS credentials
  93. both AccessKeyID and SecretAccessKey must be defined in order to properly authenticate.
  94. properties:
  95. accessKeyIDSecretRef:
  96. description: The AccessKeyID is used for authentication
  97. properties:
  98. key:
  99. description: |-
  100. A key in the referenced Secret.
  101. Some instances of this field may be defaulted, in others it may be required.
  102. maxLength: 253
  103. minLength: 1
  104. pattern: ^[-._a-zA-Z0-9]+$
  105. type: string
  106. name:
  107. description: The name of the Secret resource being referred
  108. to.
  109. maxLength: 253
  110. minLength: 1
  111. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  112. type: string
  113. namespace:
  114. description: |-
  115. The namespace of the Secret resource being referred to.
  116. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  117. maxLength: 63
  118. minLength: 1
  119. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  120. type: string
  121. type: object
  122. secretAccessKeySecretRef:
  123. description: The SecretAccessKey is used for authentication
  124. properties:
  125. key:
  126. description: |-
  127. A key in the referenced Secret.
  128. Some instances of this field may be defaulted, in others it may be required.
  129. maxLength: 253
  130. minLength: 1
  131. pattern: ^[-._a-zA-Z0-9]+$
  132. type: string
  133. name:
  134. description: The name of the Secret resource being referred
  135. to.
  136. maxLength: 253
  137. minLength: 1
  138. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  139. type: string
  140. namespace:
  141. description: |-
  142. The namespace of the Secret resource being referred to.
  143. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  144. maxLength: 63
  145. minLength: 1
  146. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  147. type: string
  148. type: object
  149. sessionTokenSecretRef:
  150. description: |-
  151. The SessionToken used for authentication
  152. This must be defined if AccessKeyID and SecretAccessKey are temporary credentials
  153. see: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html
  154. properties:
  155. key:
  156. description: |-
  157. A key in the referenced Secret.
  158. Some instances of this field may be defaulted, in others it may be required.
  159. maxLength: 253
  160. minLength: 1
  161. pattern: ^[-._a-zA-Z0-9]+$
  162. type: string
  163. name:
  164. description: The name of the Secret resource being referred
  165. to.
  166. maxLength: 253
  167. minLength: 1
  168. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
  169. type: string
  170. namespace:
  171. description: |-
  172. The namespace of the Secret resource being referred to.
  173. Ignored if referent is not cluster-scoped, otherwise defaults to the namespace of the referent.
  174. maxLength: 63
  175. minLength: 1
  176. pattern: ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
  177. type: string
  178. type: object
  179. type: object
  180. type: object
  181. region:
  182. description: Region specifies the region to operate in.
  183. type: string
  184. role:
  185. description: |-
  186. You can assume a role before making calls to the
  187. desired AWS service.
  188. type: string
  189. scope:
  190. description: |-
  191. Scope specifies the ECR service scope.
  192. Valid options are private and public.
  193. type: string
  194. required:
  195. - region
  196. type: object
  197. type: object
  198. served: true
  199. storage: true
  200. subresources:
  201. status: {}