github.com/argoproj-labs/argocd-operator@v0.10.0/config/crd/bases/argoproj.io_argocdexports.yaml (about) 1 2 --- 3 apiVersion: apiextensions.k8s.io/v1 4 kind: CustomResourceDefinition 5 metadata: 6 annotations: 7 controller-gen.kubebuilder.io/version: v0.6.1 8 creationTimestamp: null 9 name: argocdexports.argoproj.io 10 spec: 11 group: argoproj.io 12 names: 13 kind: ArgoCDExport 14 listKind: ArgoCDExportList 15 plural: argocdexports 16 singular: argocdexport 17 scope: Namespaced 18 versions: 19 - name: v1alpha1 20 schema: 21 openAPIV3Schema: 22 description: ArgoCDExport is the Schema for the argocdexports API 23 properties: 24 apiVersion: 25 description: 'APIVersion defines the versioned schema of this representation 26 of an object. Servers should convert recognized schemas to the latest 27 internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' 28 type: string 29 kind: 30 description: 'Kind is a string value representing the REST resource this 31 object represents. Servers may infer this from the endpoint the client 32 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' 33 type: string 34 metadata: 35 type: object 36 spec: 37 description: ArgoCDExportSpec defines the desired state of ArgoCDExport 38 properties: 39 argocd: 40 description: Argocd is the name of the ArgoCD instance to export. 41 type: string 42 image: 43 description: Image is the container image to use for the export Job. 44 type: string 45 schedule: 46 description: Schedule in Cron format, see https://en.wikipedia.org/wiki/Cron. 47 type: string 48 storage: 49 description: Storage defines the storage configuration options. 50 properties: 51 backend: 52 description: Backend defines the storage backend to use, must 53 be "local" (the default), "aws", "azure" or "gcp". 54 type: string 55 pvc: 56 description: PVC is the desired characteristics for a PersistentVolumeClaim. 57 properties: 58 accessModes: 59 description: 'accessModes contains the desired access modes 60 the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1' 61 items: 62 type: string 63 type: array 64 dataSource: 65 description: 'dataSource field can be used to specify either: 66 * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot) 67 * An existing PVC (PersistentVolumeClaim) If the provisioner 68 or an external controller can support the specified data 69 source, it will create a new volume based on the contents 70 of the specified data source. When the AnyVolumeDataSource 71 feature gate is enabled, dataSource contents will be copied 72 to dataSourceRef, and dataSourceRef contents will be copied 73 to dataSource when dataSourceRef.namespace is not specified. 74 If the namespace is specified, then dataSourceRef will not 75 be copied to dataSource.' 76 properties: 77 apiGroup: 78 description: APIGroup is the group for the resource being 79 referenced. If APIGroup is not specified, the specified 80 Kind must be in the core API group. For any other third-party 81 types, APIGroup is required. 82 type: string 83 kind: 84 description: Kind is the type of resource being referenced 85 type: string 86 name: 87 description: Name is the name of resource being referenced 88 type: string 89 required: 90 - kind 91 - name 92 type: object 93 dataSourceRef: 94 description: 'dataSourceRef specifies the object from which 95 to populate the volume with data, if a non-empty volume 96 is desired. This may be any object from a non-empty API 97 group (non core object) or a PersistentVolumeClaim object. 98 When this field is specified, volume binding will only succeed 99 if the type of the specified object matches some installed 100 volume populator or dynamic provisioner. This field will 101 replace the functionality of the dataSource field and as 102 such if both fields are non-empty, they must have the same 103 value. For backwards compatibility, when namespace isn''t 104 specified in dataSourceRef, both fields (dataSource and 105 dataSourceRef) will be set to the same value automatically 106 if one of them is empty and the other is non-empty. When 107 namespace is specified in dataSourceRef, dataSource isn''t 108 set to the same value and must be empty. There are three 109 important differences between dataSource and dataSourceRef: 110 * While dataSource only allows two specific types of objects, 111 dataSourceRef allows any non-core object, as well as PersistentVolumeClaim 112 objects. * While dataSource ignores disallowed values (dropping 113 them), dataSourceRef preserves all values, and generates 114 an error if a disallowed value is specified. * While dataSource 115 only allows local objects, dataSourceRef allows objects in 116 any namespaces. (Beta) Using this field requires the AnyVolumeDataSource 117 feature gate to be enabled. (Alpha) Using the namespace 118 field of dataSourceRef requires the CrossNamespaceVolumeDataSource 119 feature gate to be enabled.' 120 properties: 121 apiGroup: 122 description: APIGroup is the group for the resource being 123 referenced. If APIGroup is not specified, the specified 124 Kind must be in the core API group. For any other third-party 125 types, APIGroup is required. 126 type: string 127 kind: 128 description: Kind is the type of resource being referenced 129 type: string 130 name: 131 description: Name is the name of resource being referenced 132 type: string 133 namespace: 134 description: Namespace is the namespace of resource being 135 referenced Note that when a namespace is specified, 136 a gateway.networking.k8s.io/ReferenceGrant object is 137 required in the referent namespace to allow that namespace's 138 owner to accept the reference. See the ReferenceGrant 139 documentation for details. (Alpha) This field requires 140 the CrossNamespaceVolumeDataSource feature gate to be 141 enabled. 142 type: string 143 required: 144 - kind 145 - name 146 type: object 147 resources: 148 description: 'resources represents the minimum resources the 149 volume should have. If RecoverVolumeExpansionFailure feature 150 is enabled users are allowed to specify resource requirements 151 that are lower than previous value but must still be higher 152 than capacity recorded in the status field of the claim. 153 More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' 154 properties: 155 claims: 156 description: "Claims lists the names of resources, defined 157 in spec.resourceClaims, that are used by this container. 158 \n This is an alpha field and requires enabling the 159 DynamicResourceAllocation feature gate. \n This field 160 is immutable. It can only be set for containers." 161 items: 162 description: ResourceClaim references one entry in PodSpec.ResourceClaims. 163 properties: 164 name: 165 description: Name must match the name of one entry 166 in pod.spec.resourceClaims of the Pod where this 167 field is used. It makes that resource available 168 inside a container. 169 type: string 170 required: 171 - name 172 type: object 173 type: array 174 x-kubernetes-list-map-keys: 175 - name 176 x-kubernetes-list-type: map 177 limits: 178 additionalProperties: 179 anyOf: 180 - type: integer 181 - type: string 182 pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ 183 x-kubernetes-int-or-string: true 184 description: 'Limits describes the maximum amount of compute 185 resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' 186 type: object 187 requests: 188 additionalProperties: 189 anyOf: 190 - type: integer 191 - type: string 192 pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ 193 x-kubernetes-int-or-string: true 194 description: 'Requests describes the minimum amount of 195 compute resources required. If Requests is omitted for 196 a container, it defaults to Limits if that is explicitly 197 specified, otherwise to an implementation-defined value. 198 Requests cannot exceed Limits. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/' 199 type: object 200 type: object 201 selector: 202 description: selector is a label query over volumes to consider 203 for binding. 204 properties: 205 matchExpressions: 206 description: matchExpressions is a list of label selector 207 requirements. The requirements are ANDed. 208 items: 209 description: A label selector requirement is a selector 210 that contains values, a key, and an operator that 211 relates the key and values. 212 properties: 213 key: 214 description: key is the label key that the selector 215 applies to. 216 type: string 217 operator: 218 description: operator represents a key's relationship 219 to a set of values. Valid operators are In, NotIn, 220 Exists and DoesNotExist. 221 type: string 222 values: 223 description: values is an array of string values. 224 If the operator is In or NotIn, the values array 225 must be non-empty. If the operator is Exists or 226 DoesNotExist, the values array must be empty. 227 This array is replaced during a strategic merge 228 patch. 229 items: 230 type: string 231 type: array 232 required: 233 - key 234 - operator 235 type: object 236 type: array 237 matchLabels: 238 additionalProperties: 239 type: string 240 description: matchLabels is a map of {key,value} pairs. 241 A single {key,value} in the matchLabels map is equivalent 242 to an element of matchExpressions, whose key field is 243 "key", the operator is "In", and the values array contains 244 only "value". The requirements are ANDed. 245 type: object 246 type: object 247 storageClassName: 248 description: 'storageClassName is the name of the StorageClass 249 required by the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1' 250 type: string 251 volumeMode: 252 description: volumeMode defines what type of volume is required 253 by the claim. Value of Filesystem is implied when not included 254 in claim spec. 255 type: string 256 volumeName: 257 description: volumeName is the binding reference to the PersistentVolume 258 backing this claim. 259 type: string 260 type: object 261 secretName: 262 description: SecretName is the name of a Secret with encryption 263 key, credentials, etc. 264 type: string 265 type: object 266 version: 267 description: Version is the tag/digest to use for the export Job container 268 image. 269 type: string 270 required: 271 - argocd 272 type: object 273 status: 274 description: ArgoCDExportStatus defines the observed state of ArgoCDExport 275 properties: 276 phase: 277 description: 'Phase is a simple, high-level summary of where the ArgoCDExport 278 is in its lifecycle. There are five possible phase values: Pending: 279 The ArgoCDExport has been accepted by the Kubernetes system, but 280 one or more of the required resources have not been created. Running: 281 All of the containers for the ArgoCDExport are still running, or 282 in the process of starting or restarting. Succeeded: All containers 283 for the ArgoCDExport have terminated in success, and will not be 284 restarted. Failed: At least one container has terminated in failure, 285 either exited with non-zero status or was terminated by the system. 286 Unknown: For some reason the state of the ArgoCDExport could not 287 be obtained.' 288 type: string 289 required: 290 - phase 291 type: object 292 type: object 293 served: true 294 storage: true 295 subresources: 296 status: {} 297 status: 298 acceptedNames: 299 kind: "" 300 plural: "" 301 conditions: [] 302 storedVersions: []