# Code generated by skv2. DO NOT EDIT.

apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    crd.solo.io/specHash: 5c760eb86c7e0b50
    crd.solo.io/version: 1.2.0
  labels:
    app: gloo-mesh
    app.kubernetes.io/name: gloo-mesh
  name: istioinstallations.admin.enterprise.mesh.gloo.solo.io
spec:
  group: admin.enterprise.mesh.gloo.solo.io
  names:
    kind: IstioInstallation
    listKind: IstioInstallationList
    plural: istioinstallations
    singular: istioinstallation
  scope: Namespaced
  versions:
  - name: v1alpha1
    schema:
      openAPIV3Schema:
        properties:
          spec:
            description: |-
              The IstioInstallation API and it's associated features are undergoing development so
                 this API is not currently supported.
            properties:
              clusterNames:
                description: The clusters where the IstioOperators should be installed.
                items:
                  type: string
                type: array
              istioOperatorSelector:
                description: Selector for the IstioOperator CRs that should be installed
                  on the managed clusters.
                properties:
                  expressions:
                    description: |-
                      Expressions allow for more flexible object label matching, such as equality-based requirements, set-based requirements, or a combination of both.
                      https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#equality-based-requirement
                    items:
                      properties:
                        key:
                          description: |-
                            Kubernetes label key, must conform to Kubernetes syntax requirements
                            https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#syntax-and-character-set
                          type: string
                        operator:
                          description: The operator can only be in, notin, =, ==,
                            !=, exists, ! (DoesNotExist), gt (GreaterThan), lt (LessThan).
                          enum:
                          - Equals
                          - DoubleEquals
                          - NotEquals
                          - In
                          - NotIn
                          - Exists
                          - DoesNotExist
                          - GreaterThan
                          - LessThan
                          type: string
                        values:
                          items:
                            type: string
                          type: array
                      type: object
                    type: array
                  labels:
                    additionalProperties:
                      type: string
                    description: Select objects whose labels match the ones specified
                      here.
                    type: object
                  namespaces:
                    description: |-
                      Select Objects in these namespaces. If omitted, Gloo Mesh will only select Objects in the same namespace
                      as the parent resource (e.g. VirtualGateway) that owns this selector.
                      The reserved value "*" can be used to select objects in all namespaces watched by Gloo Mesh.
                    items:
                      type: string
                    type: array
                type: object
            type: object
          status:
            properties:
              istioOperatorStatuses:
                additionalProperties:
                  properties:
                    message:
                      description: A human readable message about the current state
                        of the IstioOperator.
                      type: string
                    observedGeneration:
                      description: |-
                        The most recent generation observed in the the IstioOperator metadata.
                        If the `observedGeneration` does not match `metadata.generation`,
                        Gloo Mesh has not processed the most recent version of this resource.
                      format: int64
                      type: integer
                    revision:
                      description: The revision tag for the associated Istio components.
                      type: string
                    state:
                      description: The current state of the IstioOperator.
                      enum:
                      - PENDING
                      - INSTALLING
                      - HEALTHY
                      - ERROR
                      type: string
                  type: object
                description: |-
                  The status of each IstioOperator that should be installed by Gloo Mesh, where the
                  key is the concatenation of the IstioOperator's name, namespace, and cluster and
                  the value is the operator's status.
                type: object
              message:
                description: A human readable message about the current state of the
                  IstioInstallation.
                type: string
              observedGeneration:
                description: |-
                  The most recent generation observed in the the IstioInstallation metadata.
                  If the `observedGeneration` does not match `metadata.generation`,
                  Gloo Mesh has not processed the most recent version of this resource.
                format: int64
                type: integer
              state:
                description: The current state of the IstioOperator.
                enum:
                - PENDING
                - ACCEPTED
                - FAILED
                type: string
            type: object
        type: object
    served: true
    storage: true
    subresources:
      status: {}
