apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    cert-manager.io/inject-ca-from: azureserviceoperator-system/azureserviceoperator-serving-cert
    controller-gen.kubebuilder.io/version: (devel)
  name: virtualnetworks.network.azure.com
spec:
  conversion:
    strategy: Webhook
    webhook:
      clientConfig:
        service:
          name: azureserviceoperator-webhook-service
          namespace: azureserviceoperator-system
          path: /convert
      conversionReviewVersions:
      - v1beta1
  group: network.azure.com
  names:
    kind: VirtualNetwork
    listKind: VirtualNetworkList
    plural: virtualnetworks
    singular: virtualnetwork
  preserveUnknownFields: false
  scope: Namespaced
  versions:
  - additionalPrinterColumns:
    - jsonPath: .status.conditions[?(@.type=='Ready')].status
      name: Ready
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].severity
      name: Severity
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].reason
      name: Reason
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].message
      name: Message
      type: string
    name: v1alpha1api20201101
    schema:
      openAPIV3Schema:
        description: 'Generated from: https://schema.management.azure.com/schemas/2020-11-01/Microsoft.Network.json#/resourceDefinitions/virtualNetworks'
        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:
            properties:
              addressSpace:
                description: 'AddressSpace: The AddressSpace that contains an array
                  of IP address ranges that can be used by subnets.'
                properties:
                  addressPrefixes:
                    description: 'AddressPrefixes: A list of address blocks reserved
                      for this virtual network in CIDR notation.'
                    items:
                      type: string
                    type: array
                required:
                - addressPrefixes
                type: object
              azureName:
                description: 'AzureName: The name of the resource in Azure. This is
                  often the same as the name of the resource in Kubernetes but it
                  doesn''t have to be.'
                type: string
              bgpCommunities:
                description: 'BgpCommunities: Bgp Communities sent over ExpressRoute
                  with each route corresponding to a prefix in this VNET.'
                properties:
                  virtualNetworkCommunity:
                    description: 'VirtualNetworkCommunity: The BGP community associated
                      with the virtual network.'
                    type: string
                required:
                - virtualNetworkCommunity
                type: object
              ddosProtectionPlan:
                description: 'DdosProtectionPlan: The DDoS protection plan associated
                  with the virtual network.'
                properties:
                  reference:
                    description: 'Reference: Resource ID.'
                    properties:
                      armId:
                        description: 'TODO: The below regex may be overly restrictive
                          ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                          The /resourcegroups/{resourceGroupName} bit is optional
                          as some resources are scoped at the subscription level ARMID
                          is mutually exclusive with Group, Kind, Namespace and Name.'
                        pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                        type: string
                      group:
                        description: Group is the Kubernetes group of the resource.
                        type: string
                      kind:
                        description: Kind is the Kubernetes kind of the resource.
                        type: string
                      name:
                        description: Name is the Kubernetes name of the resource.
                        type: string
                    type: object
                required:
                - reference
                type: object
              dhcpOptions:
                description: 'DhcpOptions: The dhcpOptions that contains an array
                  of DNS servers available to VMs deployed in the virtual network.'
                properties:
                  dnsServers:
                    description: 'DnsServers: The list of DNS servers IP addresses.'
                    items:
                      type: string
                    type: array
                required:
                - dnsServers
                type: object
              enableDdosProtection:
                description: 'EnableDdosProtection: Indicates if DDoS protection is
                  enabled for all the protected resources in the virtual network.
                  It requires a DDoS protection plan associated with the resource.'
                type: boolean
              enableVmProtection:
                description: 'EnableVmProtection: Indicates if VM protection is enabled
                  for all the subnets in the virtual network.'
                type: boolean
              extendedLocation:
                description: 'ExtendedLocation: The extended location of the virtual
                  network.'
                properties:
                  name:
                    description: 'Name: The name of the extended location.'
                    type: string
                  type:
                    description: 'Type: The type of the extended location.'
                    enum:
                    - EdgeZone
                    type: string
                required:
                - name
                - type
                type: object
              ipAllocations:
                description: 'IpAllocations: Array of IpAllocation which reference
                  this VNET.'
                items:
                  description: 'Generated from: https://schema.management.azure.com/schemas/2020-11-01/Microsoft.Network.json#/definitions/SubResource'
                  properties:
                    reference:
                      description: 'Reference: Resource ID.'
                      properties:
                        armId:
                          description: 'TODO: The below regex may be overly restrictive
                            ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                            The /resourcegroups/{resourceGroupName} bit is optional
                            as some resources are scoped at the subscription level
                            ARMID is mutually exclusive with Group, Kind, Namespace
                            and Name.'
                          pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                          type: string
                        group:
                          description: Group is the Kubernetes group of the resource.
                          type: string
                        kind:
                          description: Kind is the Kubernetes kind of the resource.
                          type: string
                        name:
                          description: Name is the Kubernetes name of the resource.
                          type: string
                      type: object
                  required:
                  - reference
                  type: object
                type: array
              location:
                description: 'Location: Location to deploy resource to'
                type: string
              owner:
                description: KnownResourceReference is a resource reference to a known
                  type.
                properties:
                  name:
                    description: This is the name of the Kubernetes resource to reference.
                    type: string
                required:
                - name
                type: object
              subnets:
                description: 'Subnets: A list of subnets in a Virtual Network.'
                items:
                  properties:
                    addressPrefix:
                      description: 'AddressPrefix: The address prefix for the subnet.'
                      type: string
                    addressPrefixes:
                      description: 'AddressPrefixes: List of address prefixes for
                        the subnet.'
                      items:
                        type: string
                      type: array
                    delegations:
                      description: 'Delegations: An array of references to the delegations
                        on the subnet.'
                      items:
                        properties:
                          name:
                            description: 'Name: The name of the resource that is unique
                              within a subnet. This name can be used to access the
                              resource.'
                            type: string
                          serviceName:
                            description: 'ServiceName: The name of the service to
                              whom the subnet should be delegated (e.g. Microsoft.Sql/servers).'
                            type: string
                        required:
                        - name
                        type: object
                      type: array
                    ipAllocations:
                      description: 'IpAllocations: Array of IpAllocation which reference
                        this subnet.'
                      items:
                        description: 'Generated from: https://schema.management.azure.com/schemas/2020-11-01/Microsoft.Network.json#/definitions/SubResource'
                        properties:
                          reference:
                            description: 'Reference: Resource ID.'
                            properties:
                              armId:
                                description: 'TODO: The below regex may be overly
                                  restrictive ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                  The /resourcegroups/{resourceGroupName} bit is optional
                                  as some resources are scoped at the subscription
                                  level ARMID is mutually exclusive with Group, Kind,
                                  Namespace and Name.'
                                pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                                type: string
                              group:
                                description: Group is the Kubernetes group of the
                                  resource.
                                type: string
                              kind:
                                description: Kind is the Kubernetes kind of the resource.
                                type: string
                              name:
                                description: Name is the Kubernetes name of the resource.
                                type: string
                            type: object
                        required:
                        - reference
                        type: object
                      type: array
                    name:
                      description: 'Name: The name of the resource that is unique
                        within a resource group. This name can be used to access the
                        resource.'
                      type: string
                    natGateway:
                      description: 'NatGateway: Nat gateway associated with this subnet.'
                      properties:
                        reference:
                          description: 'Reference: Resource ID.'
                          properties:
                            armId:
                              description: 'TODO: The below regex may be overly restrictive
                                ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                The /resourcegroups/{resourceGroupName} bit is optional
                                as some resources are scoped at the subscription level
                                ARMID is mutually exclusive with Group, Kind, Namespace
                                and Name.'
                              pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                              type: string
                            group:
                              description: Group is the Kubernetes group of the resource.
                              type: string
                            kind:
                              description: Kind is the Kubernetes kind of the resource.
                              type: string
                            name:
                              description: Name is the Kubernetes name of the resource.
                              type: string
                          type: object
                      required:
                      - reference
                      type: object
                    networkSecurityGroup:
                      description: 'NetworkSecurityGroup: The reference to the NetworkSecurityGroup
                        resource.'
                      properties:
                        reference:
                          description: 'Reference: Resource ID.'
                          properties:
                            armId:
                              description: 'TODO: The below regex may be overly restrictive
                                ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                The /resourcegroups/{resourceGroupName} bit is optional
                                as some resources are scoped at the subscription level
                                ARMID is mutually exclusive with Group, Kind, Namespace
                                and Name.'
                              pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                              type: string
                            group:
                              description: Group is the Kubernetes group of the resource.
                              type: string
                            kind:
                              description: Kind is the Kubernetes kind of the resource.
                              type: string
                            name:
                              description: Name is the Kubernetes name of the resource.
                              type: string
                          type: object
                      required:
                      - reference
                      type: object
                    privateEndpointNetworkPolicies:
                      description: 'PrivateEndpointNetworkPolicies: Enable or Disable
                        apply network policies on private end point in the subnet.'
                      type: string
                    privateLinkServiceNetworkPolicies:
                      description: 'PrivateLinkServiceNetworkPolicies: Enable or Disable
                        apply network policies on private link service in the subnet.'
                      type: string
                    routeTable:
                      description: 'RouteTable: The reference to the RouteTable resource.'
                      properties:
                        reference:
                          description: 'Reference: Resource ID.'
                          properties:
                            armId:
                              description: 'TODO: The below regex may be overly restrictive
                                ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                The /resourcegroups/{resourceGroupName} bit is optional
                                as some resources are scoped at the subscription level
                                ARMID is mutually exclusive with Group, Kind, Namespace
                                and Name.'
                              pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                              type: string
                            group:
                              description: Group is the Kubernetes group of the resource.
                              type: string
                            kind:
                              description: Kind is the Kubernetes kind of the resource.
                              type: string
                            name:
                              description: Name is the Kubernetes name of the resource.
                              type: string
                          type: object
                      required:
                      - reference
                      type: object
                    serviceEndpointPolicies:
                      description: 'ServiceEndpointPolicies: An array of service endpoint
                        policies.'
                      items:
                        description: 'Generated from: https://schema.management.azure.com/schemas/2020-11-01/Microsoft.Network.json#/definitions/SubResource'
                        properties:
                          reference:
                            description: 'Reference: Resource ID.'
                            properties:
                              armId:
                                description: 'TODO: The below regex may be overly
                                  restrictive ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                  The /resourcegroups/{resourceGroupName} bit is optional
                                  as some resources are scoped at the subscription
                                  level ARMID is mutually exclusive with Group, Kind,
                                  Namespace and Name.'
                                pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                                type: string
                              group:
                                description: Group is the Kubernetes group of the
                                  resource.
                                type: string
                              kind:
                                description: Kind is the Kubernetes kind of the resource.
                                type: string
                              name:
                                description: Name is the Kubernetes name of the resource.
                                type: string
                            type: object
                        required:
                        - reference
                        type: object
                      type: array
                    serviceEndpoints:
                      description: 'ServiceEndpoints: An array of service endpoints.'
                      items:
                        description: 'Generated from: https://schema.management.azure.com/schemas/2020-11-01/Microsoft.Network.json#/definitions/ServiceEndpointPropertiesFormat'
                        properties:
                          locations:
                            description: 'Locations: A list of locations.'
                            items:
                              type: string
                            type: array
                          service:
                            description: 'Service: The type of the endpoint service.'
                            type: string
                        type: object
                      type: array
                  required:
                  - name
                  type: object
                type: array
              tags:
                additionalProperties:
                  type: string
                description: 'Tags: Name-value pairs to add to the resource'
                type: object
            required:
            - addressSpace
            - owner
            type: object
          status:
            properties:
              addressSpace:
                description: 'AddressSpace: The AddressSpace that contains an array
                  of IP address ranges that can be used by subnets.'
                properties:
                  addressPrefixes:
                    description: 'AddressPrefixes: A list of address blocks reserved
                      for this virtual network in CIDR notation.'
                    items:
                      type: string
                    type: array
                type: object
              bgpCommunities:
                description: 'BgpCommunities: Bgp Communities sent over ExpressRoute
                  with each route corresponding to a prefix in this VNET.'
                properties:
                  regionalCommunity:
                    description: 'RegionalCommunity: The BGP community associated
                      with the region of the virtual network.'
                    type: string
                  virtualNetworkCommunity:
                    description: 'VirtualNetworkCommunity: The BGP community associated
                      with the virtual network.'
                    type: string
                required:
                - virtualNetworkCommunity
                type: object
              conditions:
                description: 'Conditions: The observed state of the resource'
                items:
                  description: Condition defines an extension to status (an observation)
                    of a resource
                  properties:
                    lastTransitionTime:
                      description: LastTransitionTime is the last time the condition
                        transitioned from one status to another.
                      format: date-time
                      type: string
                    message:
                      description: Message is a human readable message indicating
                        details about the transition. This field may be empty.
                      type: string
                    observedGeneration:
                      description: ObservedGeneration is the .metadata.generation
                        that the condition was set based upon. For instance, if .metadata.generation
                        is currently 12, but the .status.condition[x].observedGeneration
                        is 9, the condition is out of date with respect to the current
                        state of the instance.
                      format: int64
                      type: integer
                    reason:
                      description: Reason for the condition's last transition. Reasons
                        are upper CamelCase (PascalCase) with no spaces. A reason
                        is always provided, this field will not be empty.
                      type: string
                    severity:
                      description: Severity with which to treat failures of this type
                        of condition. For conditions which have positive polarity
                        (Status == True is their normal/healthy state), this will
                        be omitted when Status == True For conditions which have negative
                        polarity (Status == False is their normal/healthy state),
                        this will be omitted when Status == False. This is omitted
                        in all cases when Status == Unknown
                      type: string
                    status:
                      description: Status of the condition, one of True, False, or
                        Unknown.
                      type: string
                    type:
                      description: Type of condition.
                      type: string
                  required:
                  - lastTransitionTime
                  - reason
                  - status
                  - type
                  type: object
                type: array
              ddosProtectionPlan:
                description: 'DdosProtectionPlan: The DDoS protection plan associated
                  with the virtual network.'
                properties:
                  id:
                    description: 'Id: Resource ID.'
                    type: string
                type: object
              dhcpOptions:
                description: 'DhcpOptions: The dhcpOptions that contains an array
                  of DNS servers available to VMs deployed in the virtual network.'
                properties:
                  dnsServers:
                    description: 'DnsServers: The list of DNS servers IP addresses.'
                    items:
                      type: string
                    type: array
                type: object
              enableDdosProtection:
                description: 'EnableDdosProtection: Indicates if DDoS protection is
                  enabled for all the protected resources in the virtual network.
                  It requires a DDoS protection plan associated with the resource.'
                type: boolean
              enableVmProtection:
                description: 'EnableVmProtection: Indicates if VM protection is enabled
                  for all the subnets in the virtual network.'
                type: boolean
              etag:
                description: 'Etag: A unique read-only string that changes whenever
                  the resource is updated.'
                type: string
              extendedLocation:
                description: 'ExtendedLocation: The extended location of the virtual
                  network.'
                properties:
                  name:
                    description: 'Name: The name of the extended location.'
                    type: string
                  type:
                    description: 'Type: The type of the extended location.'
                    type: string
                required:
                - name
                - type
                type: object
              id:
                description: 'Id: Resource ID.'
                type: string
              ipAllocations:
                description: 'IpAllocations: Array of IpAllocation which reference
                  this VNET.'
                items:
                  properties:
                    id:
                      description: 'Id: Resource ID.'
                      type: string
                  type: object
                type: array
              location:
                description: 'Location: Resource location.'
                type: string
              name:
                description: 'Name: Resource name.'
                type: string
              provisioningState:
                description: 'ProvisioningState: The provisioning state of the virtual
                  network resource.'
                type: string
              resourceGuid:
                description: 'ResourceGuid: The resourceGuid property of the Virtual
                  Network resource.'
                type: string
              subnets:
                description: 'Subnets: A list of subnets in a Virtual Network.'
                items:
                  properties:
                    id:
                      description: 'Id: Resource ID.'
                      type: string
                  type: object
                type: array
              tags:
                additionalProperties:
                  type: string
                description: 'Tags: Resource tags.'
                type: object
              type:
                description: 'Type: Resource type.'
                type: string
              virtualNetworkPeerings:
                description: 'VirtualNetworkPeerings: A list of peerings in a Virtual
                  Network.'
                items:
                  properties:
                    id:
                      description: 'Id: Resource ID.'
                      type: string
                  type: object
                type: array
            type: object
        type: object
    served: true
    storage: false
    subresources:
      status: {}
  - additionalPrinterColumns:
    - jsonPath: .status.conditions[?(@.type=='Ready')].status
      name: Ready
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].severity
      name: Severity
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].reason
      name: Reason
      type: string
    - jsonPath: .status.conditions[?(@.type=='Ready')].message
      name: Message
      type: string
    name: v1alpha1api20201101storage
    schema:
      openAPIV3Schema:
        description: 'Storage version of v1alpha1api20201101.VirtualNetwork Generated
          from: https://schema.management.azure.com/schemas/2020-11-01/Microsoft.Network.json#/resourceDefinitions/virtualNetworks'
        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: Storage version of v1alpha1api20201101.VirtualNetworks_Spec
            properties:
              $propertyBag:
                additionalProperties:
                  type: string
                description: PropertyBag is an unordered set of stashed information
                  that used for properties not directly supported by storage resources,
                  allowing for full fidelity round trip conversions
                type: object
              addressSpace:
                description: 'Storage version of v1alpha1api20201101.AddressSpace
                  Generated from: https://schema.management.azure.com/schemas/2020-11-01/Microsoft.Network.json#/definitions/AddressSpace'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  addressPrefixes:
                    items:
                      type: string
                    type: array
                type: object
              azureName:
                description: 'AzureName: The name of the resource in Azure. This is
                  often the same as the name of the resource in Kubernetes but it
                  doesn''t have to be.'
                type: string
              bgpCommunities:
                description: 'Storage version of v1alpha1api20201101.VirtualNetworkBgpCommunities
                  Generated from: https://schema.management.azure.com/schemas/2020-11-01/Microsoft.Network.json#/definitions/VirtualNetworkBgpCommunities'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  virtualNetworkCommunity:
                    type: string
                type: object
              ddosProtectionPlan:
                description: 'Storage version of v1alpha1api20201101.SubResource Generated
                  from: https://schema.management.azure.com/schemas/2020-11-01/Microsoft.Network.json#/definitions/SubResource'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  reference:
                    description: 'Reference: Resource ID.'
                    properties:
                      armId:
                        description: 'TODO: The below regex may be overly restrictive
                          ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                          The /resourcegroups/{resourceGroupName} bit is optional
                          as some resources are scoped at the subscription level ARMID
                          is mutually exclusive with Group, Kind, Namespace and Name.'
                        pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                        type: string
                      group:
                        description: Group is the Kubernetes group of the resource.
                        type: string
                      kind:
                        description: Kind is the Kubernetes kind of the resource.
                        type: string
                      name:
                        description: Name is the Kubernetes name of the resource.
                        type: string
                    type: object
                required:
                - reference
                type: object
              dhcpOptions:
                description: 'Storage version of v1alpha1api20201101.DhcpOptions Generated
                  from: https://schema.management.azure.com/schemas/2020-11-01/Microsoft.Network.json#/definitions/DhcpOptions'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  dnsServers:
                    items:
                      type: string
                    type: array
                type: object
              enableDdosProtection:
                type: boolean
              enableVmProtection:
                type: boolean
              extendedLocation:
                description: 'Storage version of v1alpha1api20201101.ExtendedLocation
                  Generated from: https://schema.management.azure.com/schemas/2020-11-01/Microsoft.Network.json#/definitions/ExtendedLocation'
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  name:
                    type: string
                  type:
                    type: string
                type: object
              ipAllocations:
                items:
                  description: 'Storage version of v1alpha1api20201101.SubResource
                    Generated from: https://schema.management.azure.com/schemas/2020-11-01/Microsoft.Network.json#/definitions/SubResource'
                  properties:
                    $propertyBag:
                      additionalProperties:
                        type: string
                      description: PropertyBag is an unordered set of stashed information
                        that used for properties not directly supported by storage
                        resources, allowing for full fidelity round trip conversions
                      type: object
                    reference:
                      description: 'Reference: Resource ID.'
                      properties:
                        armId:
                          description: 'TODO: The below regex may be overly restrictive
                            ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                            The /resourcegroups/{resourceGroupName} bit is optional
                            as some resources are scoped at the subscription level
                            ARMID is mutually exclusive with Group, Kind, Namespace
                            and Name.'
                          pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                          type: string
                        group:
                          description: Group is the Kubernetes group of the resource.
                          type: string
                        kind:
                          description: Kind is the Kubernetes kind of the resource.
                          type: string
                        name:
                          description: Name is the Kubernetes name of the resource.
                          type: string
                      type: object
                  required:
                  - reference
                  type: object
                type: array
              location:
                type: string
              originalVersion:
                type: string
              owner:
                description: KnownResourceReference is a resource reference to a known
                  type.
                properties:
                  name:
                    description: This is the name of the Kubernetes resource to reference.
                    type: string
                required:
                - name
                type: object
              subnets:
                items:
                  description: Storage version of v1alpha1api20201101.VirtualNetworks_Spec_Properties_Subnets
                  properties:
                    $propertyBag:
                      additionalProperties:
                        type: string
                      description: PropertyBag is an unordered set of stashed information
                        that used for properties not directly supported by storage
                        resources, allowing for full fidelity round trip conversions
                      type: object
                    addressPrefix:
                      type: string
                    addressPrefixes:
                      items:
                        type: string
                      type: array
                    delegations:
                      items:
                        description: Storage version of v1alpha1api20201101.VirtualNetworks_Spec_Properties_Subnets_Properties_Delegations
                        properties:
                          $propertyBag:
                            additionalProperties:
                              type: string
                            description: PropertyBag is an unordered set of stashed
                              information that used for properties not directly supported
                              by storage resources, allowing for full fidelity round
                              trip conversions
                            type: object
                          name:
                            type: string
                          serviceName:
                            type: string
                        type: object
                      type: array
                    ipAllocations:
                      items:
                        description: 'Storage version of v1alpha1api20201101.SubResource
                          Generated from: https://schema.management.azure.com/schemas/2020-11-01/Microsoft.Network.json#/definitions/SubResource'
                        properties:
                          $propertyBag:
                            additionalProperties:
                              type: string
                            description: PropertyBag is an unordered set of stashed
                              information that used for properties not directly supported
                              by storage resources, allowing for full fidelity round
                              trip conversions
                            type: object
                          reference:
                            description: 'Reference: Resource ID.'
                            properties:
                              armId:
                                description: 'TODO: The below regex may be overly
                                  restrictive ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                  The /resourcegroups/{resourceGroupName} bit is optional
                                  as some resources are scoped at the subscription
                                  level ARMID is mutually exclusive with Group, Kind,
                                  Namespace and Name.'
                                pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                                type: string
                              group:
                                description: Group is the Kubernetes group of the
                                  resource.
                                type: string
                              kind:
                                description: Kind is the Kubernetes kind of the resource.
                                type: string
                              name:
                                description: Name is the Kubernetes name of the resource.
                                type: string
                            type: object
                        required:
                        - reference
                        type: object
                      type: array
                    name:
                      type: string
                    natGateway:
                      description: 'Storage version of v1alpha1api20201101.SubResource
                        Generated from: https://schema.management.azure.com/schemas/2020-11-01/Microsoft.Network.json#/definitions/SubResource'
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        reference:
                          description: 'Reference: Resource ID.'
                          properties:
                            armId:
                              description: 'TODO: The below regex may be overly restrictive
                                ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                The /resourcegroups/{resourceGroupName} bit is optional
                                as some resources are scoped at the subscription level
                                ARMID is mutually exclusive with Group, Kind, Namespace
                                and Name.'
                              pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                              type: string
                            group:
                              description: Group is the Kubernetes group of the resource.
                              type: string
                            kind:
                              description: Kind is the Kubernetes kind of the resource.
                              type: string
                            name:
                              description: Name is the Kubernetes name of the resource.
                              type: string
                          type: object
                      required:
                      - reference
                      type: object
                    networkSecurityGroup:
                      description: 'Storage version of v1alpha1api20201101.SubResource
                        Generated from: https://schema.management.azure.com/schemas/2020-11-01/Microsoft.Network.json#/definitions/SubResource'
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        reference:
                          description: 'Reference: Resource ID.'
                          properties:
                            armId:
                              description: 'TODO: The below regex may be overly restrictive
                                ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                The /resourcegroups/{resourceGroupName} bit is optional
                                as some resources are scoped at the subscription level
                                ARMID is mutually exclusive with Group, Kind, Namespace
                                and Name.'
                              pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                              type: string
                            group:
                              description: Group is the Kubernetes group of the resource.
                              type: string
                            kind:
                              description: Kind is the Kubernetes kind of the resource.
                              type: string
                            name:
                              description: Name is the Kubernetes name of the resource.
                              type: string
                          type: object
                      required:
                      - reference
                      type: object
                    privateEndpointNetworkPolicies:
                      type: string
                    privateLinkServiceNetworkPolicies:
                      type: string
                    routeTable:
                      description: 'Storage version of v1alpha1api20201101.SubResource
                        Generated from: https://schema.management.azure.com/schemas/2020-11-01/Microsoft.Network.json#/definitions/SubResource'
                      properties:
                        $propertyBag:
                          additionalProperties:
                            type: string
                          description: PropertyBag is an unordered set of stashed
                            information that used for properties not directly supported
                            by storage resources, allowing for full fidelity round
                            trip conversions
                          type: object
                        reference:
                          description: 'Reference: Resource ID.'
                          properties:
                            armId:
                              description: 'TODO: The below regex may be overly restrictive
                                ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                The /resourcegroups/{resourceGroupName} bit is optional
                                as some resources are scoped at the subscription level
                                ARMID is mutually exclusive with Group, Kind, Namespace
                                and Name.'
                              pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                              type: string
                            group:
                              description: Group is the Kubernetes group of the resource.
                              type: string
                            kind:
                              description: Kind is the Kubernetes kind of the resource.
                              type: string
                            name:
                              description: Name is the Kubernetes name of the resource.
                              type: string
                          type: object
                      required:
                      - reference
                      type: object
                    serviceEndpointPolicies:
                      items:
                        description: 'Storage version of v1alpha1api20201101.SubResource
                          Generated from: https://schema.management.azure.com/schemas/2020-11-01/Microsoft.Network.json#/definitions/SubResource'
                        properties:
                          $propertyBag:
                            additionalProperties:
                              type: string
                            description: PropertyBag is an unordered set of stashed
                              information that used for properties not directly supported
                              by storage resources, allowing for full fidelity round
                              trip conversions
                            type: object
                          reference:
                            description: 'Reference: Resource ID.'
                            properties:
                              armId:
                                description: 'TODO: The below regex may be overly
                                  restrictive ARMID is a string of the form /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
                                  The /resourcegroups/{resourceGroupName} bit is optional
                                  as some resources are scoped at the subscription
                                  level ARMID is mutually exclusive with Group, Kind,
                                  Namespace and Name.'
                                pattern: (?i)^/subscriptions/([^/]+)(/resourcegroups/([^/]+))?/providers/([^/]+)/([^/]+/[^/]+)(/([^/]+/[^/]+))*$
                                type: string
                              group:
                                description: Group is the Kubernetes group of the
                                  resource.
                                type: string
                              kind:
                                description: Kind is the Kubernetes kind of the resource.
                                type: string
                              name:
                                description: Name is the Kubernetes name of the resource.
                                type: string
                            type: object
                        required:
                        - reference
                        type: object
                      type: array
                    serviceEndpoints:
                      items:
                        description: 'Storage version of v1alpha1api20201101.ServiceEndpointPropertiesFormat
                          Generated from: https://schema.management.azure.com/schemas/2020-11-01/Microsoft.Network.json#/definitions/ServiceEndpointPropertiesFormat'
                        properties:
                          $propertyBag:
                            additionalProperties:
                              type: string
                            description: PropertyBag is an unordered set of stashed
                              information that used for properties not directly supported
                              by storage resources, allowing for full fidelity round
                              trip conversions
                            type: object
                          locations:
                            items:
                              type: string
                            type: array
                          service:
                            type: string
                        type: object
                      type: array
                  type: object
                type: array
              tags:
                additionalProperties:
                  type: string
                type: object
            required:
            - owner
            type: object
          status:
            description: Storage version of v1alpha1api20201101.VirtualNetwork_Status
            properties:
              $propertyBag:
                additionalProperties:
                  type: string
                description: PropertyBag is an unordered set of stashed information
                  that used for properties not directly supported by storage resources,
                  allowing for full fidelity round trip conversions
                type: object
              addressSpace:
                description: Storage version of v1alpha1api20201101.AddressSpace_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  addressPrefixes:
                    items:
                      type: string
                    type: array
                type: object
              bgpCommunities:
                description: Storage version of v1alpha1api20201101.VirtualNetworkBgpCommunities_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  regionalCommunity:
                    type: string
                  virtualNetworkCommunity:
                    type: string
                type: object
              conditions:
                items:
                  description: Condition defines an extension to status (an observation)
                    of a resource
                  properties:
                    lastTransitionTime:
                      description: LastTransitionTime is the last time the condition
                        transitioned from one status to another.
                      format: date-time
                      type: string
                    message:
                      description: Message is a human readable message indicating
                        details about the transition. This field may be empty.
                      type: string
                    observedGeneration:
                      description: ObservedGeneration is the .metadata.generation
                        that the condition was set based upon. For instance, if .metadata.generation
                        is currently 12, but the .status.condition[x].observedGeneration
                        is 9, the condition is out of date with respect to the current
                        state of the instance.
                      format: int64
                      type: integer
                    reason:
                      description: Reason for the condition's last transition. Reasons
                        are upper CamelCase (PascalCase) with no spaces. A reason
                        is always provided, this field will not be empty.
                      type: string
                    severity:
                      description: Severity with which to treat failures of this type
                        of condition. For conditions which have positive polarity
                        (Status == True is their normal/healthy state), this will
                        be omitted when Status == True For conditions which have negative
                        polarity (Status == False is their normal/healthy state),
                        this will be omitted when Status == False. This is omitted
                        in all cases when Status == Unknown
                      type: string
                    status:
                      description: Status of the condition, one of True, False, or
                        Unknown.
                      type: string
                    type:
                      description: Type of condition.
                      type: string
                  required:
                  - lastTransitionTime
                  - reason
                  - status
                  - type
                  type: object
                type: array
              ddosProtectionPlan:
                description: Storage version of v1alpha1api20201101.SubResource_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  id:
                    type: string
                type: object
              dhcpOptions:
                description: Storage version of v1alpha1api20201101.DhcpOptions_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  dnsServers:
                    items:
                      type: string
                    type: array
                type: object
              enableDdosProtection:
                type: boolean
              enableVmProtection:
                type: boolean
              etag:
                type: string
              extendedLocation:
                description: Storage version of v1alpha1api20201101.ExtendedLocation_Status
                properties:
                  $propertyBag:
                    additionalProperties:
                      type: string
                    description: PropertyBag is an unordered set of stashed information
                      that used for properties not directly supported by storage resources,
                      allowing for full fidelity round trip conversions
                    type: object
                  name:
                    type: string
                  type:
                    type: string
                type: object
              id:
                type: string
              ipAllocations:
                items:
                  description: Storage version of v1alpha1api20201101.SubResource_Status
                  properties:
                    $propertyBag:
                      additionalProperties:
                        type: string
                      description: PropertyBag is an unordered set of stashed information
                        that used for properties not directly supported by storage
                        resources, allowing for full fidelity round trip conversions
                      type: object
                    id:
                      type: string
                  type: object
                type: array
              location:
                type: string
              name:
                type: string
              provisioningState:
                type: string
              resourceGuid:
                type: string
              subnets:
                items:
                  description: Storage version of v1alpha1api20201101.Subnet_Status_VirtualNetwork_SubResourceEmbedded
                  properties:
                    $propertyBag:
                      additionalProperties:
                        type: string
                      description: PropertyBag is an unordered set of stashed information
                        that used for properties not directly supported by storage
                        resources, allowing for full fidelity round trip conversions
                      type: object
                    id:
                      type: string
                  type: object
                type: array
              tags:
                additionalProperties:
                  type: string
                type: object
              type:
                type: string
              virtualNetworkPeerings:
                items:
                  description: Storage version of v1alpha1api20201101.VirtualNetworkPeering_Status_SubResourceEmbedded
                  properties:
                    $propertyBag:
                      additionalProperties:
                        type: string
                      description: PropertyBag is an unordered set of stashed information
                        that used for properties not directly supported by storage
                        resources, allowing for full fidelity round trip conversions
                      type: object
                    id:
                      type: string
                  type: object
                type: array
            type: object
        type: object
    served: true
    storage: true
    subresources:
      status: {}
status:
  acceptedNames:
    kind: ""
    plural: ""
  conditions: []
  storedVersions: []
