github.com/argoproj-labs/argocd-operator@v0.10.0/bundle/manifests/argoproj.io_argocdexports.yaml (about)

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