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: []