---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    controller-gen.kubebuilder.io/version: v0.16.3
  name: multitenantnetworkcontainers.networking.azure.com
spec:
  group: networking.azure.com
  names:
    kind: MultiTenantNetworkContainer
    listKind: MultiTenantNetworkContainerList
    plural: multitenantnetworkcontainers
    singular: multitenantnetworkcontainer
  scope: Namespaced
  versions:
  - name: v1alpha1
    schema:
      openAPIV3Schema:
        description: MultiTenantNetworkContainer is the Schema for the MultiTenantnetworkcontainers
          API
        properties:
          apiVersion:
            description: |-
              APIVersion defines the versioned schema of this representation of an object.
              Servers should convert recognized schemas to the latest internal value, and
              may reject unrecognized values.
              More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
            type: string
          kind:
            description: |-
              Kind is a string value representing the REST resource this object represents.
              Servers may infer this from the endpoint the client submits requests to.
              Cannot be updated.
              In CamelCase.
              More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
            type: string
          metadata:
            type: object
          spec:
            description: MultiTenantNetworkContainerSpec defines the desired state
              of MultiTenantNetworkContainer
            properties:
              interfaceName:
                description: InterfaceName - the interface name for consuming Pod
                type: string
              network:
                description: Network - customer VNet GUID
                type: string
              node:
                description: Node - kubernetes node name
                type: string
              reservationID:
                description: ReservationID - reservation ID for allocating IP
                type: string
              reservationSetID:
                description: ReservationSetID - reservationSet for networkcontainer
                type: string
              subnet:
                description: Subnet - customer subnet name
                type: string
              uuid:
                description: UUID - network container UUID
                type: string
            type: object
          status:
            description: MultiTenantNetworkContainerStatus defines the observed state
              of MultiTenantNetworkContainer
            properties:
              gateway:
                description: The gateway IP address
                type: string
              ip:
                description: The IP address
                type: string
              ipSubnet:
                description: The subnet CIDR
                type: string
              multiTenantInfo:
                description: MultiTenantInfo holds the encap type and id
                properties:
                  encapType:
                    description: EncapType is type of encapsulation
                    type: string
                  id:
                    description: ID of encapsulation, can be vlanid, vxlanid, gre-key,
                      etc depending on EncapType
                    format: int64
                    type: integer
                type: object
              primaryInterfaceIdentifier:
                description: The primary interface identifier
                type: string
              state:
                description: The state of network container
                type: string
            type: object
        type: object
    served: true
    storage: true
    subresources:
      status: {}
