From 714cfcb7837928f07ce941553fe18d1aed8a8036 Mon Sep 17 00:00:00 2001 From: Feng Zhou Date: Tue, 22 Oct 2019 07:14:18 +0000 Subject: [PATCH 1/3] add network v2019_09_01 --- .../network/_network_management_client.py | 362 +- .../azure/mgmt/network/_operations_mixin.py | 16 +- .../azure/mgmt/network/models.py | 3 +- .../mgmt/network/v2019_09_01/__init__.py | 19 + .../network/v2019_09_01/_configuration.py | 50 + .../v2019_09_01/_network_management_client.py | 486 + .../network/v2019_09_01/models/__init__.py | 1486 ++ .../network/v2019_09_01/models/_models.py | 16319 ++++++++++++++++ .../network/v2019_09_01/models/_models_py3.py | 16319 ++++++++++++++++ .../_network_management_client_enums.py | 922 + .../v2019_09_01/models/_paged_models.py | 1054 + .../v2019_09_01/operations/__init__.py | 192 + .../_application_gateways_operations.py | 1259 ++ ..._application_security_groups_operations.py | 497 + .../_available_delegations_operations.py | 110 + ..._available_endpoint_services_operations.py | 109 + ...lable_private_endpoint_types_operations.py | 183 + ...e_resource_group_delegations_operations.py | 113 + .../_available_service_aliases_operations.py | 183 + .../_azure_firewall_fqdn_tags_operations.py | 106 + .../operations/_azure_firewalls_operations.py | 489 + .../operations/_bastion_hosts_operations.py | 420 + .../_bgp_service_communities_operations.py | 106 + .../_connection_monitors_operations.py | 706 + .../_ddos_custom_policies_operations.py | 355 + .../_ddos_protection_plans_operations.py | 497 + .../_default_security_rules_operations.py | 179 + ...route_circuit_authorizations_operations.py | 379 + ...ss_route_circuit_connections_operations.py | 394 + ...press_route_circuit_peerings_operations.py | 371 + .../_express_route_circuits_operations.py | 928 + .../_express_route_connections_operations.py | 364 + ...te_cross_connection_peerings_operations.py | 378 + ...ress_route_cross_connections_operations.py | 729 + .../_express_route_gateways_operations.py | 405 + .../_express_route_links_operations.py | 179 + ...xpress_route_ports_locations_operations.py | 169 + .../_express_route_ports_operations.py | 494 + ...ress_route_service_providers_operations.py | 106 + .../_firewall_policies_operations.py | 425 + ..._firewall_policy_rule_groups_operations.py | 369 + ..._virtual_network_connections_operations.py | 177 + .../_inbound_nat_rules_operations.py | 373 + .../operations/_ip_groups_operations.py | 487 + ...lancer_backend_address_pools_operations.py | 177 + ...r_frontend_ip_configurations_operations.py | 177 + ...alancer_load_balancing_rules_operations.py | 176 + ..._balancer_network_interfaces_operations.py | 112 + ...load_balancer_outbound_rules_operations.py | 176 + .../_load_balancer_probes_operations.py | 176 + .../operations/_load_balancers_operations.py | 493 + .../_local_network_gateways_operations.py | 429 + .../operations/_nat_gateways_operations.py | 495 + ..._interface_ip_configurations_operations.py | 178 + ...ork_interface_load_balancers_operations.py | 112 + ...interface_tap_configurations_operations.py | 373 + .../_network_interfaces_operations.py | 1091 ++ .../_network_management_client_operations.py | 265 + .../_network_profiles_operations.py | 494 + .../_network_security_groups_operations.py | 499 + .../_network_watchers_operations.py | 1672 ++ .../v2019_09_01/operations/_operations.py | 102 + .../_p2s_vpn_gateways_operations.py | 803 + .../operations/_packet_captures_operations.py | 543 + ...ss_route_circuit_connections_operations.py | 188 + .../_private_endpoints_operations.py | 419 + .../_private_link_services_operations.py | 1006 + .../_public_ip_addresses_operations.py | 745 + .../_public_ip_prefixes_operations.py | 494 + .../_resource_navigation_links_operations.py | 106 + .../_route_filter_rules_operations.py | 369 + .../operations/_route_filters_operations.py | 494 + .../operations/_route_tables_operations.py | 493 + .../operations/_routes_operations.py | 368 + .../operations/_security_rules_operations.py | 374 + .../_service_association_links_operations.py | 106 + .../_service_endpoint_policies_operations.py | 499 + ..._endpoint_policy_definitions_operations.py | 382 + .../operations/_service_tags_operations.py | 101 + .../operations/_subnets_operations.py | 563 + .../operations/_usages_operations.py | 109 + ..._virtual_hub_route_table_v2s_operations.py | 369 + .../operations/_virtual_hubs_operations.py | 491 + ..._network_gateway_connections_operations.py | 958 + .../_virtual_network_gateways_operations.py | 1948 ++ .../_virtual_network_peerings_operations.py | 371 + .../_virtual_network_taps_operations.py | 490 + .../_virtual_networks_operations.py | 631 + .../_virtual_router_peerings_operations.py | 364 + .../operations/_virtual_routers_operations.py | 418 + .../operations/_virtual_wans_operations.py | 492 + .../operations/_vpn_connections_operations.py | 370 + .../operations/_vpn_gateways_operations.py | 584 + .../_vpn_link_connections_operations.py | 116 + ..._associated_with_virtual_wan_operations.py | 138 + .../_vpn_server_configurations_operations.py | 500 + .../_vpn_site_link_connections_operations.py | 107 + .../operations/_vpn_site_links_operations.py | 177 + .../_vpn_sites_configuration_operations.py | 137 + .../operations/_vpn_sites_operations.py | 492 + ...pplication_firewall_policies_operations.py | 390 + .../azure/mgmt/network/v2019_09_01/version.py | 13 + ...st_mgmt_network.test_dns_availability.yaml | 8 +- ....test_express_route_service_providers.yaml | 8 +- ...test_mgmt_network.test_load_balancers.yaml | 353 +- ...t_network.test_network_interface_card.yaml | 224 +- ..._network.test_network_security_groups.yaml | 717 +- ...mgmt_network.test_public_ip_addresses.yaml | 124 +- .../test_mgmt_network.test_routes.yaml | 194 +- .../test_mgmt_network.test_subnets.yaml | 164 +- .../test_mgmt_network.test_usages.yaml | 90 +- ...st_virtual_network_gateway_operations.yaml | 2010 +- ...st_mgmt_network.test_virtual_networks.yaml | 156 +- 113 files changed, 76348 insertions(+), 1882 deletions(-) create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/__init__.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/_configuration.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/_network_management_client.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/__init__.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/_models.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/_models_py3.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/_network_management_client_enums.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/_paged_models.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/__init__.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_application_gateways_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_application_security_groups_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_delegations_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_endpoint_services_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_private_endpoint_types_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_resource_group_delegations_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_service_aliases_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_azure_firewall_fqdn_tags_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_azure_firewalls_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_bastion_hosts_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_bgp_service_communities_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_connection_monitors_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_ddos_custom_policies_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_ddos_protection_plans_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_default_security_rules_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_circuit_authorizations_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_circuit_connections_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_circuit_peerings_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_circuits_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_connections_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_cross_connection_peerings_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_cross_connections_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_gateways_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_links_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_ports_locations_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_ports_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_service_providers_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_firewall_policies_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_firewall_policy_rule_groups_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_hub_virtual_network_connections_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_inbound_nat_rules_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_ip_groups_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_backend_address_pools_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_frontend_ip_configurations_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_load_balancing_rules_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_network_interfaces_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_outbound_rules_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_probes_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancers_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_local_network_gateways_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_nat_gateways_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_interface_ip_configurations_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_interface_load_balancers_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_interface_tap_configurations_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_interfaces_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_management_client_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_profiles_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_security_groups_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_watchers_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_p2s_vpn_gateways_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_packet_captures_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_peer_express_route_circuit_connections_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_private_endpoints_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_private_link_services_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_public_ip_addresses_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_public_ip_prefixes_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_resource_navigation_links_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_route_filter_rules_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_route_filters_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_route_tables_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_routes_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_security_rules_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_service_association_links_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_service_endpoint_policies_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_service_endpoint_policy_definitions_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_service_tags_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_subnets_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_usages_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_hub_route_table_v2s_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_hubs_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_network_gateway_connections_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_network_gateways_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_network_peerings_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_network_taps_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_networks_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_router_peerings_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_routers_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_wans_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_connections_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_gateways_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_link_connections_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_server_configurations_associated_with_virtual_wan_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_server_configurations_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_site_link_connections_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_site_links_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_sites_configuration_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_sites_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_web_application_firewall_policies_operations.py create mode 100644 sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/version.py diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/_network_management_client.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/_network_management_client.py index 5d48cba5c8e4..a049c96b5d55 100644 --- a/sdk/network/azure-mgmt-network/azure/mgmt/network/_network_management_client.py +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/_network_management_client.py @@ -46,12 +46,13 @@ class NetworkManagementClient(NetworkManagementClientOperationsMixin, MultiApiCl :type profile: azure.profiles.KnownProfiles """ - DEFAULT_API_VERSION = '2019-08-01' + DEFAULT_API_VERSION = '2019-09-01' _PROFILE_TAG = "azure.mgmt.network.NetworkManagementClient" LATEST_PROFILE = ProfileDefinition({ _PROFILE_TAG: { None: DEFAULT_API_VERSION, 'interface_endpoints': '2019-02-01', + 'p2s_vpn_server_configurations': '2019-07-01', 'virtual_wa_ns': '2018-07-01', }}, _PROFILE_TAG + " latest" @@ -97,6 +98,7 @@ def models(cls, api_version=DEFAULT_API_VERSION): * 2019-06-01: :mod:`v2019_06_01.models` * 2019-07-01: :mod:`v2019_07_01.models` * 2019-08-01: :mod:`v2019_08_01.models` + * 2019-09-01: :mod:`v2019_09_01.models` """ if api_version == '2015-06-15': from .v2015_06_15 import models @@ -167,6 +169,9 @@ def models(cls, api_version=DEFAULT_API_VERSION): elif api_version == '2019-08-01': from .v2019_08_01 import models return models + elif api_version == '2019-09-01': + from .v2019_09_01 import models + return models raise NotImplementedError("APIVersion {} is not available".format(api_version)) @property @@ -196,6 +201,7 @@ def application_gateways(self): * 2019-06-01: :class:`ApplicationGatewaysOperations` * 2019-07-01: :class:`ApplicationGatewaysOperations` * 2019-08-01: :class:`ApplicationGatewaysOperations` + * 2019-09-01: :class:`ApplicationGatewaysOperations` """ api_version = self._get_api_version('application_gateways') if api_version == '2015-06-15': @@ -244,6 +250,8 @@ def application_gateways(self): from .v2019_07_01.operations import ApplicationGatewaysOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ApplicationGatewaysOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ApplicationGatewaysOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -269,6 +277,7 @@ def application_security_groups(self): * 2019-06-01: :class:`ApplicationSecurityGroupsOperations` * 2019-07-01: :class:`ApplicationSecurityGroupsOperations` * 2019-08-01: :class:`ApplicationSecurityGroupsOperations` + * 2019-09-01: :class:`ApplicationSecurityGroupsOperations` """ api_version = self._get_api_version('application_security_groups') if api_version == '2017-09-01': @@ -305,6 +314,8 @@ def application_security_groups(self): from .v2019_07_01.operations import ApplicationSecurityGroupsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ApplicationSecurityGroupsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ApplicationSecurityGroupsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -322,6 +333,7 @@ def available_delegations(self): * 2019-06-01: :class:`AvailableDelegationsOperations` * 2019-07-01: :class:`AvailableDelegationsOperations` * 2019-08-01: :class:`AvailableDelegationsOperations` + * 2019-09-01: :class:`AvailableDelegationsOperations` """ api_version = self._get_api_version('available_delegations') if api_version == '2018-08-01': @@ -342,6 +354,8 @@ def available_delegations(self): from .v2019_07_01.operations import AvailableDelegationsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import AvailableDelegationsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import AvailableDelegationsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -369,6 +383,7 @@ def available_endpoint_services(self): * 2019-06-01: :class:`AvailableEndpointServicesOperations` * 2019-07-01: :class:`AvailableEndpointServicesOperations` * 2019-08-01: :class:`AvailableEndpointServicesOperations` + * 2019-09-01: :class:`AvailableEndpointServicesOperations` """ api_version = self._get_api_version('available_endpoint_services') if api_version == '2017-06-01': @@ -409,6 +424,8 @@ def available_endpoint_services(self): from .v2019_07_01.operations import AvailableEndpointServicesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import AvailableEndpointServicesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import AvailableEndpointServicesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -421,6 +438,7 @@ def available_private_endpoint_types(self): * 2019-06-01: :class:`AvailablePrivateEndpointTypesOperations` * 2019-07-01: :class:`AvailablePrivateEndpointTypesOperations` * 2019-08-01: :class:`AvailablePrivateEndpointTypesOperations` + * 2019-09-01: :class:`AvailablePrivateEndpointTypesOperations` """ api_version = self._get_api_version('available_private_endpoint_types') if api_version == '2019-04-01': @@ -431,6 +449,8 @@ def available_private_endpoint_types(self): from .v2019_07_01.operations import AvailablePrivateEndpointTypesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import AvailablePrivateEndpointTypesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import AvailablePrivateEndpointTypesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -448,6 +468,7 @@ def available_resource_group_delegations(self): * 2019-06-01: :class:`AvailableResourceGroupDelegationsOperations` * 2019-07-01: :class:`AvailableResourceGroupDelegationsOperations` * 2019-08-01: :class:`AvailableResourceGroupDelegationsOperations` + * 2019-09-01: :class:`AvailableResourceGroupDelegationsOperations` """ api_version = self._get_api_version('available_resource_group_delegations') if api_version == '2018-08-01': @@ -468,6 +489,8 @@ def available_resource_group_delegations(self): from .v2019_07_01.operations import AvailableResourceGroupDelegationsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import AvailableResourceGroupDelegationsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import AvailableResourceGroupDelegationsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -477,10 +500,13 @@ def available_service_aliases(self): """Instance depends on the API version: * 2019-08-01: :class:`AvailableServiceAliasesOperations` + * 2019-09-01: :class:`AvailableServiceAliasesOperations` """ api_version = self._get_api_version('available_service_aliases') if api_version == '2019-08-01': from .v2019_08_01.operations import AvailableServiceAliasesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import AvailableServiceAliasesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -498,6 +524,7 @@ def azure_firewall_fqdn_tags(self): * 2019-06-01: :class:`AzureFirewallFqdnTagsOperations` * 2019-07-01: :class:`AzureFirewallFqdnTagsOperations` * 2019-08-01: :class:`AzureFirewallFqdnTagsOperations` + * 2019-09-01: :class:`AzureFirewallFqdnTagsOperations` """ api_version = self._get_api_version('azure_firewall_fqdn_tags') if api_version == '2018-08-01': @@ -518,6 +545,8 @@ def azure_firewall_fqdn_tags(self): from .v2019_07_01.operations import AzureFirewallFqdnTagsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import AzureFirewallFqdnTagsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import AzureFirewallFqdnTagsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -538,6 +567,7 @@ def azure_firewalls(self): * 2019-06-01: :class:`AzureFirewallsOperations` * 2019-07-01: :class:`AzureFirewallsOperations` * 2019-08-01: :class:`AzureFirewallsOperations` + * 2019-09-01: :class:`AzureFirewallsOperations` """ api_version = self._get_api_version('azure_firewalls') if api_version == '2018-04-01': @@ -564,6 +594,8 @@ def azure_firewalls(self): from .v2019_07_01.operations import AzureFirewallsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import AzureFirewallsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import AzureFirewallsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -576,6 +608,7 @@ def bastion_hosts(self): * 2019-06-01: :class:`BastionHostsOperations` * 2019-07-01: :class:`BastionHostsOperations` * 2019-08-01: :class:`BastionHostsOperations` + * 2019-09-01: :class:`BastionHostsOperations` """ api_version = self._get_api_version('bastion_hosts') if api_version == '2019-04-01': @@ -586,6 +619,8 @@ def bastion_hosts(self): from .v2019_07_01.operations import BastionHostsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import BastionHostsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import BastionHostsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -615,6 +650,7 @@ def bgp_service_communities(self): * 2019-06-01: :class:`BgpServiceCommunitiesOperations` * 2019-07-01: :class:`BgpServiceCommunitiesOperations` * 2019-08-01: :class:`BgpServiceCommunitiesOperations` + * 2019-09-01: :class:`BgpServiceCommunitiesOperations` """ api_version = self._get_api_version('bgp_service_communities') if api_version == '2016-12-01': @@ -659,6 +695,8 @@ def bgp_service_communities(self): from .v2019_07_01.operations import BgpServiceCommunitiesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import BgpServiceCommunitiesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import BgpServiceCommunitiesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -683,6 +721,7 @@ def connection_monitors(self): * 2019-06-01: :class:`ConnectionMonitorsOperations` * 2019-07-01: :class:`ConnectionMonitorsOperations` * 2019-08-01: :class:`ConnectionMonitorsOperations` + * 2019-09-01: :class:`ConnectionMonitorsOperations` """ api_version = self._get_api_version('connection_monitors') if api_version == '2017-10-01': @@ -717,6 +756,8 @@ def connection_monitors(self): from .v2019_07_01.operations import ConnectionMonitorsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ConnectionMonitorsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ConnectionMonitorsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -732,6 +773,7 @@ def ddos_custom_policies(self): * 2019-06-01: :class:`DdosCustomPoliciesOperations` * 2019-07-01: :class:`DdosCustomPoliciesOperations` * 2019-08-01: :class:`DdosCustomPoliciesOperations` + * 2019-09-01: :class:`DdosCustomPoliciesOperations` """ api_version = self._get_api_version('ddos_custom_policies') if api_version == '2018-11-01': @@ -748,6 +790,8 @@ def ddos_custom_policies(self): from .v2019_07_01.operations import DdosCustomPoliciesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import DdosCustomPoliciesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import DdosCustomPoliciesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -769,6 +813,7 @@ def ddos_protection_plans(self): * 2019-06-01: :class:`DdosProtectionPlansOperations` * 2019-07-01: :class:`DdosProtectionPlansOperations` * 2019-08-01: :class:`DdosProtectionPlansOperations` + * 2019-09-01: :class:`DdosProtectionPlansOperations` """ api_version = self._get_api_version('ddos_protection_plans') if api_version == '2018-02-01': @@ -797,6 +842,8 @@ def ddos_protection_plans(self): from .v2019_07_01.operations import DdosProtectionPlansOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import DdosProtectionPlansOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import DdosProtectionPlansOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -824,6 +871,7 @@ def default_security_rules(self): * 2019-06-01: :class:`DefaultSecurityRulesOperations` * 2019-07-01: :class:`DefaultSecurityRulesOperations` * 2019-08-01: :class:`DefaultSecurityRulesOperations` + * 2019-09-01: :class:`DefaultSecurityRulesOperations` """ api_version = self._get_api_version('default_security_rules') if api_version == '2017-06-01': @@ -864,6 +912,8 @@ def default_security_rules(self): from .v2019_07_01.operations import DefaultSecurityRulesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import DefaultSecurityRulesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import DefaultSecurityRulesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -895,6 +945,7 @@ def express_route_circuit_authorizations(self): * 2019-06-01: :class:`ExpressRouteCircuitAuthorizationsOperations` * 2019-07-01: :class:`ExpressRouteCircuitAuthorizationsOperations` * 2019-08-01: :class:`ExpressRouteCircuitAuthorizationsOperations` + * 2019-09-01: :class:`ExpressRouteCircuitAuthorizationsOperations` """ api_version = self._get_api_version('express_route_circuit_authorizations') if api_version == '2015-06-15': @@ -943,6 +994,8 @@ def express_route_circuit_authorizations(self): from .v2019_07_01.operations import ExpressRouteCircuitAuthorizationsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ExpressRouteCircuitAuthorizationsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ExpressRouteCircuitAuthorizationsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -964,6 +1017,7 @@ def express_route_circuit_connections(self): * 2019-06-01: :class:`ExpressRouteCircuitConnectionsOperations` * 2019-07-01: :class:`ExpressRouteCircuitConnectionsOperations` * 2019-08-01: :class:`ExpressRouteCircuitConnectionsOperations` + * 2019-09-01: :class:`ExpressRouteCircuitConnectionsOperations` """ api_version = self._get_api_version('express_route_circuit_connections') if api_version == '2018-02-01': @@ -992,6 +1046,8 @@ def express_route_circuit_connections(self): from .v2019_07_01.operations import ExpressRouteCircuitConnectionsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ExpressRouteCircuitConnectionsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ExpressRouteCircuitConnectionsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1023,6 +1079,7 @@ def express_route_circuit_peerings(self): * 2019-06-01: :class:`ExpressRouteCircuitPeeringsOperations` * 2019-07-01: :class:`ExpressRouteCircuitPeeringsOperations` * 2019-08-01: :class:`ExpressRouteCircuitPeeringsOperations` + * 2019-09-01: :class:`ExpressRouteCircuitPeeringsOperations` """ api_version = self._get_api_version('express_route_circuit_peerings') if api_version == '2015-06-15': @@ -1071,6 +1128,8 @@ def express_route_circuit_peerings(self): from .v2019_07_01.operations import ExpressRouteCircuitPeeringsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ExpressRouteCircuitPeeringsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ExpressRouteCircuitPeeringsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1102,6 +1161,7 @@ def express_route_circuits(self): * 2019-06-01: :class:`ExpressRouteCircuitsOperations` * 2019-07-01: :class:`ExpressRouteCircuitsOperations` * 2019-08-01: :class:`ExpressRouteCircuitsOperations` + * 2019-09-01: :class:`ExpressRouteCircuitsOperations` """ api_version = self._get_api_version('express_route_circuits') if api_version == '2015-06-15': @@ -1150,6 +1210,8 @@ def express_route_circuits(self): from .v2019_07_01.operations import ExpressRouteCircuitsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ExpressRouteCircuitsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ExpressRouteCircuitsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1167,6 +1229,7 @@ def express_route_connections(self): * 2019-06-01: :class:`ExpressRouteConnectionsOperations` * 2019-07-01: :class:`ExpressRouteConnectionsOperations` * 2019-08-01: :class:`ExpressRouteConnectionsOperations` + * 2019-09-01: :class:`ExpressRouteConnectionsOperations` """ api_version = self._get_api_version('express_route_connections') if api_version == '2018-08-01': @@ -1187,6 +1250,8 @@ def express_route_connections(self): from .v2019_07_01.operations import ExpressRouteConnectionsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ExpressRouteConnectionsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ExpressRouteConnectionsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1208,6 +1273,7 @@ def express_route_cross_connection_peerings(self): * 2019-06-01: :class:`ExpressRouteCrossConnectionPeeringsOperations` * 2019-07-01: :class:`ExpressRouteCrossConnectionPeeringsOperations` * 2019-08-01: :class:`ExpressRouteCrossConnectionPeeringsOperations` + * 2019-09-01: :class:`ExpressRouteCrossConnectionPeeringsOperations` """ api_version = self._get_api_version('express_route_cross_connection_peerings') if api_version == '2018-02-01': @@ -1236,6 +1302,8 @@ def express_route_cross_connection_peerings(self): from .v2019_07_01.operations import ExpressRouteCrossConnectionPeeringsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ExpressRouteCrossConnectionPeeringsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ExpressRouteCrossConnectionPeeringsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1257,6 +1325,7 @@ def express_route_cross_connections(self): * 2019-06-01: :class:`ExpressRouteCrossConnectionsOperations` * 2019-07-01: :class:`ExpressRouteCrossConnectionsOperations` * 2019-08-01: :class:`ExpressRouteCrossConnectionsOperations` + * 2019-09-01: :class:`ExpressRouteCrossConnectionsOperations` """ api_version = self._get_api_version('express_route_cross_connections') if api_version == '2018-02-01': @@ -1285,6 +1354,8 @@ def express_route_cross_connections(self): from .v2019_07_01.operations import ExpressRouteCrossConnectionsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ExpressRouteCrossConnectionsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ExpressRouteCrossConnectionsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1302,6 +1373,7 @@ def express_route_gateways(self): * 2019-06-01: :class:`ExpressRouteGatewaysOperations` * 2019-07-01: :class:`ExpressRouteGatewaysOperations` * 2019-08-01: :class:`ExpressRouteGatewaysOperations` + * 2019-09-01: :class:`ExpressRouteGatewaysOperations` """ api_version = self._get_api_version('express_route_gateways') if api_version == '2018-08-01': @@ -1322,6 +1394,8 @@ def express_route_gateways(self): from .v2019_07_01.operations import ExpressRouteGatewaysOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ExpressRouteGatewaysOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ExpressRouteGatewaysOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1339,6 +1413,7 @@ def express_route_links(self): * 2019-06-01: :class:`ExpressRouteLinksOperations` * 2019-07-01: :class:`ExpressRouteLinksOperations` * 2019-08-01: :class:`ExpressRouteLinksOperations` + * 2019-09-01: :class:`ExpressRouteLinksOperations` """ api_version = self._get_api_version('express_route_links') if api_version == '2018-08-01': @@ -1359,6 +1434,8 @@ def express_route_links(self): from .v2019_07_01.operations import ExpressRouteLinksOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ExpressRouteLinksOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ExpressRouteLinksOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1376,6 +1453,7 @@ def express_route_ports(self): * 2019-06-01: :class:`ExpressRoutePortsOperations` * 2019-07-01: :class:`ExpressRoutePortsOperations` * 2019-08-01: :class:`ExpressRoutePortsOperations` + * 2019-09-01: :class:`ExpressRoutePortsOperations` """ api_version = self._get_api_version('express_route_ports') if api_version == '2018-08-01': @@ -1396,6 +1474,8 @@ def express_route_ports(self): from .v2019_07_01.operations import ExpressRoutePortsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ExpressRoutePortsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ExpressRoutePortsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1413,6 +1493,7 @@ def express_route_ports_locations(self): * 2019-06-01: :class:`ExpressRoutePortsLocationsOperations` * 2019-07-01: :class:`ExpressRoutePortsLocationsOperations` * 2019-08-01: :class:`ExpressRoutePortsLocationsOperations` + * 2019-09-01: :class:`ExpressRoutePortsLocationsOperations` """ api_version = self._get_api_version('express_route_ports_locations') if api_version == '2018-08-01': @@ -1433,6 +1514,8 @@ def express_route_ports_locations(self): from .v2019_07_01.operations import ExpressRoutePortsLocationsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ExpressRoutePortsLocationsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ExpressRoutePortsLocationsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1464,6 +1547,7 @@ def express_route_service_providers(self): * 2019-06-01: :class:`ExpressRouteServiceProvidersOperations` * 2019-07-01: :class:`ExpressRouteServiceProvidersOperations` * 2019-08-01: :class:`ExpressRouteServiceProvidersOperations` + * 2019-09-01: :class:`ExpressRouteServiceProvidersOperations` """ api_version = self._get_api_version('express_route_service_providers') if api_version == '2015-06-15': @@ -1512,6 +1596,8 @@ def express_route_service_providers(self): from .v2019_07_01.operations import ExpressRouteServiceProvidersOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ExpressRouteServiceProvidersOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ExpressRouteServiceProvidersOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1523,6 +1609,7 @@ def firewall_policies(self): * 2019-06-01: :class:`FirewallPoliciesOperations` * 2019-07-01: :class:`FirewallPoliciesOperations` * 2019-08-01: :class:`FirewallPoliciesOperations` + * 2019-09-01: :class:`FirewallPoliciesOperations` """ api_version = self._get_api_version('firewall_policies') if api_version == '2019-06-01': @@ -1531,6 +1618,8 @@ def firewall_policies(self): from .v2019_07_01.operations import FirewallPoliciesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import FirewallPoliciesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import FirewallPoliciesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1542,6 +1631,7 @@ def firewall_policy_rule_groups(self): * 2019-06-01: :class:`FirewallPolicyRuleGroupsOperations` * 2019-07-01: :class:`FirewallPolicyRuleGroupsOperations` * 2019-08-01: :class:`FirewallPolicyRuleGroupsOperations` + * 2019-09-01: :class:`FirewallPolicyRuleGroupsOperations` """ api_version = self._get_api_version('firewall_policy_rule_groups') if api_version == '2019-06-01': @@ -1550,6 +1640,8 @@ def firewall_policy_rule_groups(self): from .v2019_07_01.operations import FirewallPolicyRuleGroupsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import FirewallPolicyRuleGroupsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import FirewallPolicyRuleGroupsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1570,6 +1662,7 @@ def hub_virtual_network_connections(self): * 2019-06-01: :class:`HubVirtualNetworkConnectionsOperations` * 2019-07-01: :class:`HubVirtualNetworkConnectionsOperations` * 2019-08-01: :class:`HubVirtualNetworkConnectionsOperations` + * 2019-09-01: :class:`HubVirtualNetworkConnectionsOperations` """ api_version = self._get_api_version('hub_virtual_network_connections') if api_version == '2018-04-01': @@ -1596,6 +1689,8 @@ def hub_virtual_network_connections(self): from .v2019_07_01.operations import HubVirtualNetworkConnectionsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import HubVirtualNetworkConnectionsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import HubVirtualNetworkConnectionsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1623,6 +1718,7 @@ def inbound_nat_rules(self): * 2019-06-01: :class:`InboundNatRulesOperations` * 2019-07-01: :class:`InboundNatRulesOperations` * 2019-08-01: :class:`InboundNatRulesOperations` + * 2019-09-01: :class:`InboundNatRulesOperations` """ api_version = self._get_api_version('inbound_nat_rules') if api_version == '2017-06-01': @@ -1663,6 +1759,8 @@ def inbound_nat_rules(self): from .v2019_07_01.operations import InboundNatRulesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import InboundNatRulesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import InboundNatRulesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1692,6 +1790,19 @@ def interface_endpoints(self): raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + @property + def ip_groups(self): + """Instance depends on the API version: + + * 2019-09-01: :class:`IpGroupsOperations` + """ + api_version = self._get_api_version('ip_groups') + if api_version == '2019-09-01': + from .v2019_09_01.operations import IpGroupsOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + @property def load_balancer_backend_address_pools(self): """Instance depends on the API version: @@ -1715,6 +1826,7 @@ def load_balancer_backend_address_pools(self): * 2019-06-01: :class:`LoadBalancerBackendAddressPoolsOperations` * 2019-07-01: :class:`LoadBalancerBackendAddressPoolsOperations` * 2019-08-01: :class:`LoadBalancerBackendAddressPoolsOperations` + * 2019-09-01: :class:`LoadBalancerBackendAddressPoolsOperations` """ api_version = self._get_api_version('load_balancer_backend_address_pools') if api_version == '2017-06-01': @@ -1755,6 +1867,8 @@ def load_balancer_backend_address_pools(self): from .v2019_07_01.operations import LoadBalancerBackendAddressPoolsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import LoadBalancerBackendAddressPoolsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import LoadBalancerBackendAddressPoolsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1782,6 +1896,7 @@ def load_balancer_frontend_ip_configurations(self): * 2019-06-01: :class:`LoadBalancerFrontendIPConfigurationsOperations` * 2019-07-01: :class:`LoadBalancerFrontendIPConfigurationsOperations` * 2019-08-01: :class:`LoadBalancerFrontendIPConfigurationsOperations` + * 2019-09-01: :class:`LoadBalancerFrontendIPConfigurationsOperations` """ api_version = self._get_api_version('load_balancer_frontend_ip_configurations') if api_version == '2017-06-01': @@ -1822,6 +1937,8 @@ def load_balancer_frontend_ip_configurations(self): from .v2019_07_01.operations import LoadBalancerFrontendIPConfigurationsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import LoadBalancerFrontendIPConfigurationsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import LoadBalancerFrontendIPConfigurationsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1849,6 +1966,7 @@ def load_balancer_load_balancing_rules(self): * 2019-06-01: :class:`LoadBalancerLoadBalancingRulesOperations` * 2019-07-01: :class:`LoadBalancerLoadBalancingRulesOperations` * 2019-08-01: :class:`LoadBalancerLoadBalancingRulesOperations` + * 2019-09-01: :class:`LoadBalancerLoadBalancingRulesOperations` """ api_version = self._get_api_version('load_balancer_load_balancing_rules') if api_version == '2017-06-01': @@ -1889,6 +2007,8 @@ def load_balancer_load_balancing_rules(self): from .v2019_07_01.operations import LoadBalancerLoadBalancingRulesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import LoadBalancerLoadBalancingRulesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import LoadBalancerLoadBalancingRulesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1916,6 +2036,7 @@ def load_balancer_network_interfaces(self): * 2019-06-01: :class:`LoadBalancerNetworkInterfacesOperations` * 2019-07-01: :class:`LoadBalancerNetworkInterfacesOperations` * 2019-08-01: :class:`LoadBalancerNetworkInterfacesOperations` + * 2019-09-01: :class:`LoadBalancerNetworkInterfacesOperations` """ api_version = self._get_api_version('load_balancer_network_interfaces') if api_version == '2017-06-01': @@ -1956,6 +2077,8 @@ def load_balancer_network_interfaces(self): from .v2019_07_01.operations import LoadBalancerNetworkInterfacesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import LoadBalancerNetworkInterfacesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import LoadBalancerNetworkInterfacesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -1973,6 +2096,7 @@ def load_balancer_outbound_rules(self): * 2019-06-01: :class:`LoadBalancerOutboundRulesOperations` * 2019-07-01: :class:`LoadBalancerOutboundRulesOperations` * 2019-08-01: :class:`LoadBalancerOutboundRulesOperations` + * 2019-09-01: :class:`LoadBalancerOutboundRulesOperations` """ api_version = self._get_api_version('load_balancer_outbound_rules') if api_version == '2018-08-01': @@ -1993,6 +2117,8 @@ def load_balancer_outbound_rules(self): from .v2019_07_01.operations import LoadBalancerOutboundRulesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import LoadBalancerOutboundRulesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import LoadBalancerOutboundRulesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2020,6 +2146,7 @@ def load_balancer_probes(self): * 2019-06-01: :class:`LoadBalancerProbesOperations` * 2019-07-01: :class:`LoadBalancerProbesOperations` * 2019-08-01: :class:`LoadBalancerProbesOperations` + * 2019-09-01: :class:`LoadBalancerProbesOperations` """ api_version = self._get_api_version('load_balancer_probes') if api_version == '2017-06-01': @@ -2060,6 +2187,8 @@ def load_balancer_probes(self): from .v2019_07_01.operations import LoadBalancerProbesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import LoadBalancerProbesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import LoadBalancerProbesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2091,6 +2220,7 @@ def load_balancers(self): * 2019-06-01: :class:`LoadBalancersOperations` * 2019-07-01: :class:`LoadBalancersOperations` * 2019-08-01: :class:`LoadBalancersOperations` + * 2019-09-01: :class:`LoadBalancersOperations` """ api_version = self._get_api_version('load_balancers') if api_version == '2015-06-15': @@ -2139,6 +2269,8 @@ def load_balancers(self): from .v2019_07_01.operations import LoadBalancersOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import LoadBalancersOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import LoadBalancersOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2170,6 +2302,7 @@ def local_network_gateways(self): * 2019-06-01: :class:`LocalNetworkGatewaysOperations` * 2019-07-01: :class:`LocalNetworkGatewaysOperations` * 2019-08-01: :class:`LocalNetworkGatewaysOperations` + * 2019-09-01: :class:`LocalNetworkGatewaysOperations` """ api_version = self._get_api_version('local_network_gateways') if api_version == '2015-06-15': @@ -2218,6 +2351,8 @@ def local_network_gateways(self): from .v2019_07_01.operations import LocalNetworkGatewaysOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import LocalNetworkGatewaysOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import LocalNetworkGatewaysOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2231,6 +2366,7 @@ def nat_gateways(self): * 2019-06-01: :class:`NatGatewaysOperations` * 2019-07-01: :class:`NatGatewaysOperations` * 2019-08-01: :class:`NatGatewaysOperations` + * 2019-09-01: :class:`NatGatewaysOperations` """ api_version = self._get_api_version('nat_gateways') if api_version == '2019-02-01': @@ -2243,6 +2379,8 @@ def nat_gateways(self): from .v2019_07_01.operations import NatGatewaysOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import NatGatewaysOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import NatGatewaysOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2270,6 +2408,7 @@ def network_interface_ip_configurations(self): * 2019-06-01: :class:`NetworkInterfaceIPConfigurationsOperations` * 2019-07-01: :class:`NetworkInterfaceIPConfigurationsOperations` * 2019-08-01: :class:`NetworkInterfaceIPConfigurationsOperations` + * 2019-09-01: :class:`NetworkInterfaceIPConfigurationsOperations` """ api_version = self._get_api_version('network_interface_ip_configurations') if api_version == '2017-06-01': @@ -2310,6 +2449,8 @@ def network_interface_ip_configurations(self): from .v2019_07_01.operations import NetworkInterfaceIPConfigurationsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import NetworkInterfaceIPConfigurationsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import NetworkInterfaceIPConfigurationsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2337,6 +2478,7 @@ def network_interface_load_balancers(self): * 2019-06-01: :class:`NetworkInterfaceLoadBalancersOperations` * 2019-07-01: :class:`NetworkInterfaceLoadBalancersOperations` * 2019-08-01: :class:`NetworkInterfaceLoadBalancersOperations` + * 2019-09-01: :class:`NetworkInterfaceLoadBalancersOperations` """ api_version = self._get_api_version('network_interface_load_balancers') if api_version == '2017-06-01': @@ -2377,6 +2519,8 @@ def network_interface_load_balancers(self): from .v2019_07_01.operations import NetworkInterfaceLoadBalancersOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import NetworkInterfaceLoadBalancersOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import NetworkInterfaceLoadBalancersOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2394,6 +2538,7 @@ def network_interface_tap_configurations(self): * 2019-06-01: :class:`NetworkInterfaceTapConfigurationsOperations` * 2019-07-01: :class:`NetworkInterfaceTapConfigurationsOperations` * 2019-08-01: :class:`NetworkInterfaceTapConfigurationsOperations` + * 2019-09-01: :class:`NetworkInterfaceTapConfigurationsOperations` """ api_version = self._get_api_version('network_interface_tap_configurations') if api_version == '2018-08-01': @@ -2414,6 +2559,8 @@ def network_interface_tap_configurations(self): from .v2019_07_01.operations import NetworkInterfaceTapConfigurationsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import NetworkInterfaceTapConfigurationsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import NetworkInterfaceTapConfigurationsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2445,6 +2592,7 @@ def network_interfaces(self): * 2019-06-01: :class:`NetworkInterfacesOperations` * 2019-07-01: :class:`NetworkInterfacesOperations` * 2019-08-01: :class:`NetworkInterfacesOperations` + * 2019-09-01: :class:`NetworkInterfacesOperations` """ api_version = self._get_api_version('network_interfaces') if api_version == '2015-06-15': @@ -2493,6 +2641,8 @@ def network_interfaces(self): from .v2019_07_01.operations import NetworkInterfacesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import NetworkInterfacesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import NetworkInterfacesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2510,6 +2660,7 @@ def network_profiles(self): * 2019-06-01: :class:`NetworkProfilesOperations` * 2019-07-01: :class:`NetworkProfilesOperations` * 2019-08-01: :class:`NetworkProfilesOperations` + * 2019-09-01: :class:`NetworkProfilesOperations` """ api_version = self._get_api_version('network_profiles') if api_version == '2018-08-01': @@ -2530,6 +2681,8 @@ def network_profiles(self): from .v2019_07_01.operations import NetworkProfilesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import NetworkProfilesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import NetworkProfilesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2561,6 +2714,7 @@ def network_security_groups(self): * 2019-06-01: :class:`NetworkSecurityGroupsOperations` * 2019-07-01: :class:`NetworkSecurityGroupsOperations` * 2019-08-01: :class:`NetworkSecurityGroupsOperations` + * 2019-09-01: :class:`NetworkSecurityGroupsOperations` """ api_version = self._get_api_version('network_security_groups') if api_version == '2015-06-15': @@ -2609,6 +2763,8 @@ def network_security_groups(self): from .v2019_07_01.operations import NetworkSecurityGroupsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import NetworkSecurityGroupsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import NetworkSecurityGroupsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2639,6 +2795,7 @@ def network_watchers(self): * 2019-06-01: :class:`NetworkWatchersOperations` * 2019-07-01: :class:`NetworkWatchersOperations` * 2019-08-01: :class:`NetworkWatchersOperations` + * 2019-09-01: :class:`NetworkWatchersOperations` """ api_version = self._get_api_version('network_watchers') if api_version == '2016-09-01': @@ -2685,6 +2842,8 @@ def network_watchers(self): from .v2019_07_01.operations import NetworkWatchersOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import NetworkWatchersOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import NetworkWatchersOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2710,6 +2869,7 @@ def operations(self): * 2019-06-01: :class:`Operations` * 2019-07-01: :class:`Operations` * 2019-08-01: :class:`Operations` + * 2019-09-01: :class:`Operations` """ api_version = self._get_api_version('operations') if api_version == '2017-09-01': @@ -2746,6 +2906,82 @@ def operations(self): from .v2019_07_01.operations import Operations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import Operations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import Operations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + + @property + def p2s_vpn_gateways(self): + """Instance depends on the API version: + + * 2018-08-01: :class:`P2sVpnGatewaysOperations` + * 2018-10-01: :class:`P2sVpnGatewaysOperations` + * 2018-11-01: :class:`P2sVpnGatewaysOperations` + * 2018-12-01: :class:`P2sVpnGatewaysOperations` + * 2019-02-01: :class:`P2sVpnGatewaysOperations` + * 2019-04-01: :class:`P2sVpnGatewaysOperations` + * 2019-06-01: :class:`P2sVpnGatewaysOperations` + * 2019-07-01: :class:`P2sVpnGatewaysOperations` + * 2019-08-01: :class:`P2sVpnGatewaysOperations` + * 2019-09-01: :class:`P2sVpnGatewaysOperations` + """ + api_version = self._get_api_version('p2s_vpn_gateways') + if api_version == '2018-08-01': + from .v2018_08_01.operations import P2sVpnGatewaysOperations as OperationClass + elif api_version == '2018-10-01': + from .v2018_10_01.operations import P2sVpnGatewaysOperations as OperationClass + elif api_version == '2018-11-01': + from .v2018_11_01.operations import P2sVpnGatewaysOperations as OperationClass + elif api_version == '2018-12-01': + from .v2018_12_01.operations import P2sVpnGatewaysOperations as OperationClass + elif api_version == '2019-02-01': + from .v2019_02_01.operations import P2sVpnGatewaysOperations as OperationClass + elif api_version == '2019-04-01': + from .v2019_04_01.operations import P2sVpnGatewaysOperations as OperationClass + elif api_version == '2019-06-01': + from .v2019_06_01.operations import P2sVpnGatewaysOperations as OperationClass + elif api_version == '2019-07-01': + from .v2019_07_01.operations import P2sVpnGatewaysOperations as OperationClass + elif api_version == '2019-08-01': + from .v2019_08_01.operations import P2sVpnGatewaysOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import P2sVpnGatewaysOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + + @property + def p2s_vpn_server_configurations(self): + """Instance depends on the API version: + + * 2018-08-01: :class:`P2sVpnServerConfigurationsOperations` + * 2018-10-01: :class:`P2sVpnServerConfigurationsOperations` + * 2018-11-01: :class:`P2sVpnServerConfigurationsOperations` + * 2018-12-01: :class:`P2sVpnServerConfigurationsOperations` + * 2019-02-01: :class:`P2sVpnServerConfigurationsOperations` + * 2019-04-01: :class:`P2sVpnServerConfigurationsOperations` + * 2019-06-01: :class:`P2sVpnServerConfigurationsOperations` + * 2019-07-01: :class:`P2sVpnServerConfigurationsOperations` + """ + api_version = self._get_api_version('p2s_vpn_server_configurations') + if api_version == '2018-08-01': + from .v2018_08_01.operations import P2sVpnServerConfigurationsOperations as OperationClass + elif api_version == '2018-10-01': + from .v2018_10_01.operations import P2sVpnServerConfigurationsOperations as OperationClass + elif api_version == '2018-11-01': + from .v2018_11_01.operations import P2sVpnServerConfigurationsOperations as OperationClass + elif api_version == '2018-12-01': + from .v2018_12_01.operations import P2sVpnServerConfigurationsOperations as OperationClass + elif api_version == '2019-02-01': + from .v2019_02_01.operations import P2sVpnServerConfigurationsOperations as OperationClass + elif api_version == '2019-04-01': + from .v2019_04_01.operations import P2sVpnServerConfigurationsOperations as OperationClass + elif api_version == '2019-06-01': + from .v2019_06_01.operations import P2sVpnServerConfigurationsOperations as OperationClass + elif api_version == '2019-07-01': + from .v2019_07_01.operations import P2sVpnServerConfigurationsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2776,6 +3012,7 @@ def packet_captures(self): * 2019-06-01: :class:`PacketCapturesOperations` * 2019-07-01: :class:`PacketCapturesOperations` * 2019-08-01: :class:`PacketCapturesOperations` + * 2019-09-01: :class:`PacketCapturesOperations` """ api_version = self._get_api_version('packet_captures') if api_version == '2016-09-01': @@ -2822,6 +3059,8 @@ def packet_captures(self): from .v2019_07_01.operations import PacketCapturesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import PacketCapturesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import PacketCapturesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2836,6 +3075,7 @@ def peer_express_route_circuit_connections(self): * 2019-06-01: :class:`PeerExpressRouteCircuitConnectionsOperations` * 2019-07-01: :class:`PeerExpressRouteCircuitConnectionsOperations` * 2019-08-01: :class:`PeerExpressRouteCircuitConnectionsOperations` + * 2019-09-01: :class:`PeerExpressRouteCircuitConnectionsOperations` """ api_version = self._get_api_version('peer_express_route_circuit_connections') if api_version == '2018-12-01': @@ -2850,6 +3090,8 @@ def peer_express_route_circuit_connections(self): from .v2019_07_01.operations import PeerExpressRouteCircuitConnectionsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import PeerExpressRouteCircuitConnectionsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import PeerExpressRouteCircuitConnectionsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2862,6 +3104,7 @@ def private_endpoints(self): * 2019-06-01: :class:`PrivateEndpointsOperations` * 2019-07-01: :class:`PrivateEndpointsOperations` * 2019-08-01: :class:`PrivateEndpointsOperations` + * 2019-09-01: :class:`PrivateEndpointsOperations` """ api_version = self._get_api_version('private_endpoints') if api_version == '2019-04-01': @@ -2872,6 +3115,8 @@ def private_endpoints(self): from .v2019_07_01.operations import PrivateEndpointsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import PrivateEndpointsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import PrivateEndpointsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2884,6 +3129,7 @@ def private_link_services(self): * 2019-06-01: :class:`PrivateLinkServicesOperations` * 2019-07-01: :class:`PrivateLinkServicesOperations` * 2019-08-01: :class:`PrivateLinkServicesOperations` + * 2019-09-01: :class:`PrivateLinkServicesOperations` """ api_version = self._get_api_version('private_link_services') if api_version == '2019-04-01': @@ -2894,6 +3140,8 @@ def private_link_services(self): from .v2019_07_01.operations import PrivateLinkServicesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import PrivateLinkServicesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import PrivateLinkServicesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2925,6 +3173,7 @@ def public_ip_addresses(self): * 2019-06-01: :class:`PublicIPAddressesOperations` * 2019-07-01: :class:`PublicIPAddressesOperations` * 2019-08-01: :class:`PublicIPAddressesOperations` + * 2019-09-01: :class:`PublicIPAddressesOperations` """ api_version = self._get_api_version('public_ip_addresses') if api_version == '2015-06-15': @@ -2973,6 +3222,8 @@ def public_ip_addresses(self): from .v2019_07_01.operations import PublicIPAddressesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import PublicIPAddressesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import PublicIPAddressesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -2991,6 +3242,7 @@ def public_ip_prefixes(self): * 2019-06-01: :class:`PublicIPPrefixesOperations` * 2019-07-01: :class:`PublicIPPrefixesOperations` * 2019-08-01: :class:`PublicIPPrefixesOperations` + * 2019-09-01: :class:`PublicIPPrefixesOperations` """ api_version = self._get_api_version('public_ip_prefixes') if api_version == '2018-07-01': @@ -3013,6 +3265,8 @@ def public_ip_prefixes(self): from .v2019_07_01.operations import PublicIPPrefixesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import PublicIPPrefixesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import PublicIPPrefixesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -3026,6 +3280,7 @@ def resource_navigation_links(self): * 2019-06-01: :class:`ResourceNavigationLinksOperations` * 2019-07-01: :class:`ResourceNavigationLinksOperations` * 2019-08-01: :class:`ResourceNavigationLinksOperations` + * 2019-09-01: :class:`ResourceNavigationLinksOperations` """ api_version = self._get_api_version('resource_navigation_links') if api_version == '2019-02-01': @@ -3038,6 +3293,8 @@ def resource_navigation_links(self): from .v2019_07_01.operations import ResourceNavigationLinksOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ResourceNavigationLinksOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ResourceNavigationLinksOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -3067,6 +3324,7 @@ def route_filter_rules(self): * 2019-06-01: :class:`RouteFilterRulesOperations` * 2019-07-01: :class:`RouteFilterRulesOperations` * 2019-08-01: :class:`RouteFilterRulesOperations` + * 2019-09-01: :class:`RouteFilterRulesOperations` """ api_version = self._get_api_version('route_filter_rules') if api_version == '2016-12-01': @@ -3111,6 +3369,8 @@ def route_filter_rules(self): from .v2019_07_01.operations import RouteFilterRulesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import RouteFilterRulesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import RouteFilterRulesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -3140,6 +3400,7 @@ def route_filters(self): * 2019-06-01: :class:`RouteFiltersOperations` * 2019-07-01: :class:`RouteFiltersOperations` * 2019-08-01: :class:`RouteFiltersOperations` + * 2019-09-01: :class:`RouteFiltersOperations` """ api_version = self._get_api_version('route_filters') if api_version == '2016-12-01': @@ -3184,6 +3445,8 @@ def route_filters(self): from .v2019_07_01.operations import RouteFiltersOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import RouteFiltersOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import RouteFiltersOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -3215,6 +3478,7 @@ def route_tables(self): * 2019-06-01: :class:`RouteTablesOperations` * 2019-07-01: :class:`RouteTablesOperations` * 2019-08-01: :class:`RouteTablesOperations` + * 2019-09-01: :class:`RouteTablesOperations` """ api_version = self._get_api_version('route_tables') if api_version == '2015-06-15': @@ -3263,6 +3527,8 @@ def route_tables(self): from .v2019_07_01.operations import RouteTablesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import RouteTablesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import RouteTablesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -3294,6 +3560,7 @@ def routes(self): * 2019-06-01: :class:`RoutesOperations` * 2019-07-01: :class:`RoutesOperations` * 2019-08-01: :class:`RoutesOperations` + * 2019-09-01: :class:`RoutesOperations` """ api_version = self._get_api_version('routes') if api_version == '2015-06-15': @@ -3342,6 +3609,8 @@ def routes(self): from .v2019_07_01.operations import RoutesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import RoutesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import RoutesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -3373,6 +3642,7 @@ def security_rules(self): * 2019-06-01: :class:`SecurityRulesOperations` * 2019-07-01: :class:`SecurityRulesOperations` * 2019-08-01: :class:`SecurityRulesOperations` + * 2019-09-01: :class:`SecurityRulesOperations` """ api_version = self._get_api_version('security_rules') if api_version == '2015-06-15': @@ -3421,6 +3691,8 @@ def security_rules(self): from .v2019_07_01.operations import SecurityRulesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import SecurityRulesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import SecurityRulesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -3434,6 +3706,7 @@ def service_association_links(self): * 2019-06-01: :class:`ServiceAssociationLinksOperations` * 2019-07-01: :class:`ServiceAssociationLinksOperations` * 2019-08-01: :class:`ServiceAssociationLinksOperations` + * 2019-09-01: :class:`ServiceAssociationLinksOperations` """ api_version = self._get_api_version('service_association_links') if api_version == '2019-02-01': @@ -3446,6 +3719,8 @@ def service_association_links(self): from .v2019_07_01.operations import ServiceAssociationLinksOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ServiceAssociationLinksOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ServiceAssociationLinksOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -3464,6 +3739,7 @@ def service_endpoint_policies(self): * 2019-06-01: :class:`ServiceEndpointPoliciesOperations` * 2019-07-01: :class:`ServiceEndpointPoliciesOperations` * 2019-08-01: :class:`ServiceEndpointPoliciesOperations` + * 2019-09-01: :class:`ServiceEndpointPoliciesOperations` """ api_version = self._get_api_version('service_endpoint_policies') if api_version == '2018-07-01': @@ -3486,6 +3762,8 @@ def service_endpoint_policies(self): from .v2019_07_01.operations import ServiceEndpointPoliciesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ServiceEndpointPoliciesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ServiceEndpointPoliciesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -3504,6 +3782,7 @@ def service_endpoint_policy_definitions(self): * 2019-06-01: :class:`ServiceEndpointPolicyDefinitionsOperations` * 2019-07-01: :class:`ServiceEndpointPolicyDefinitionsOperations` * 2019-08-01: :class:`ServiceEndpointPolicyDefinitionsOperations` + * 2019-09-01: :class:`ServiceEndpointPolicyDefinitionsOperations` """ api_version = self._get_api_version('service_endpoint_policy_definitions') if api_version == '2018-07-01': @@ -3526,6 +3805,8 @@ def service_endpoint_policy_definitions(self): from .v2019_07_01.operations import ServiceEndpointPolicyDefinitionsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ServiceEndpointPolicyDefinitionsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ServiceEndpointPolicyDefinitionsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -3538,6 +3819,7 @@ def service_tags(self): * 2019-06-01: :class:`ServiceTagsOperations` * 2019-07-01: :class:`ServiceTagsOperations` * 2019-08-01: :class:`ServiceTagsOperations` + * 2019-09-01: :class:`ServiceTagsOperations` """ api_version = self._get_api_version('service_tags') if api_version == '2019-04-01': @@ -3548,6 +3830,8 @@ def service_tags(self): from .v2019_07_01.operations import ServiceTagsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import ServiceTagsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import ServiceTagsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -3579,6 +3863,7 @@ def subnets(self): * 2019-06-01: :class:`SubnetsOperations` * 2019-07-01: :class:`SubnetsOperations` * 2019-08-01: :class:`SubnetsOperations` + * 2019-09-01: :class:`SubnetsOperations` """ api_version = self._get_api_version('subnets') if api_version == '2015-06-15': @@ -3627,6 +3912,8 @@ def subnets(self): from .v2019_07_01.operations import SubnetsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import SubnetsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import SubnetsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -3658,6 +3945,7 @@ def usages(self): * 2019-06-01: :class:`UsagesOperations` * 2019-07-01: :class:`UsagesOperations` * 2019-08-01: :class:`UsagesOperations` + * 2019-09-01: :class:`UsagesOperations` """ api_version = self._get_api_version('usages') if api_version == '2015-06-15': @@ -3706,6 +3994,21 @@ def usages(self): from .v2019_07_01.operations import UsagesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import UsagesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import UsagesOperations as OperationClass + else: + raise NotImplementedError("APIVersion {} is not available".format(api_version)) + return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) + + @property + def virtual_hub_route_table_v2s(self): + """Instance depends on the API version: + + * 2019-09-01: :class:`VirtualHubRouteTableV2sOperations` + """ + api_version = self._get_api_version('virtual_hub_route_table_v2s') + if api_version == '2019-09-01': + from .v2019_09_01.operations import VirtualHubRouteTableV2sOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -3726,6 +4029,7 @@ def virtual_hubs(self): * 2019-06-01: :class:`VirtualHubsOperations` * 2019-07-01: :class:`VirtualHubsOperations` * 2019-08-01: :class:`VirtualHubsOperations` + * 2019-09-01: :class:`VirtualHubsOperations` """ api_version = self._get_api_version('virtual_hubs') if api_version == '2018-04-01': @@ -3752,6 +4056,8 @@ def virtual_hubs(self): from .v2019_07_01.operations import VirtualHubsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import VirtualHubsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import VirtualHubsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -3783,6 +4089,7 @@ def virtual_network_gateway_connections(self): * 2019-06-01: :class:`VirtualNetworkGatewayConnectionsOperations` * 2019-07-01: :class:`VirtualNetworkGatewayConnectionsOperations` * 2019-08-01: :class:`VirtualNetworkGatewayConnectionsOperations` + * 2019-09-01: :class:`VirtualNetworkGatewayConnectionsOperations` """ api_version = self._get_api_version('virtual_network_gateway_connections') if api_version == '2015-06-15': @@ -3831,6 +4138,8 @@ def virtual_network_gateway_connections(self): from .v2019_07_01.operations import VirtualNetworkGatewayConnectionsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import VirtualNetworkGatewayConnectionsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import VirtualNetworkGatewayConnectionsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -3862,6 +4171,7 @@ def virtual_network_gateways(self): * 2019-06-01: :class:`VirtualNetworkGatewaysOperations` * 2019-07-01: :class:`VirtualNetworkGatewaysOperations` * 2019-08-01: :class:`VirtualNetworkGatewaysOperations` + * 2019-09-01: :class:`VirtualNetworkGatewaysOperations` """ api_version = self._get_api_version('virtual_network_gateways') if api_version == '2015-06-15': @@ -3910,6 +4220,8 @@ def virtual_network_gateways(self): from .v2019_07_01.operations import VirtualNetworkGatewaysOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import VirtualNetworkGatewaysOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import VirtualNetworkGatewaysOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -3940,6 +4252,7 @@ def virtual_network_peerings(self): * 2019-06-01: :class:`VirtualNetworkPeeringsOperations` * 2019-07-01: :class:`VirtualNetworkPeeringsOperations` * 2019-08-01: :class:`VirtualNetworkPeeringsOperations` + * 2019-09-01: :class:`VirtualNetworkPeeringsOperations` """ api_version = self._get_api_version('virtual_network_peerings') if api_version == '2016-09-01': @@ -3986,6 +4299,8 @@ def virtual_network_peerings(self): from .v2019_07_01.operations import VirtualNetworkPeeringsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import VirtualNetworkPeeringsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import VirtualNetworkPeeringsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -4003,6 +4318,7 @@ def virtual_network_taps(self): * 2019-06-01: :class:`VirtualNetworkTapsOperations` * 2019-07-01: :class:`VirtualNetworkTapsOperations` * 2019-08-01: :class:`VirtualNetworkTapsOperations` + * 2019-09-01: :class:`VirtualNetworkTapsOperations` """ api_version = self._get_api_version('virtual_network_taps') if api_version == '2018-08-01': @@ -4023,6 +4339,8 @@ def virtual_network_taps(self): from .v2019_07_01.operations import VirtualNetworkTapsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import VirtualNetworkTapsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import VirtualNetworkTapsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -4054,6 +4372,7 @@ def virtual_networks(self): * 2019-06-01: :class:`VirtualNetworksOperations` * 2019-07-01: :class:`VirtualNetworksOperations` * 2019-08-01: :class:`VirtualNetworksOperations` + * 2019-09-01: :class:`VirtualNetworksOperations` """ api_version = self._get_api_version('virtual_networks') if api_version == '2015-06-15': @@ -4102,6 +4421,8 @@ def virtual_networks(self): from .v2019_07_01.operations import VirtualNetworksOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import VirtualNetworksOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import VirtualNetworksOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -4112,12 +4433,15 @@ def virtual_router_peerings(self): * 2019-07-01: :class:`VirtualRouterPeeringsOperations` * 2019-08-01: :class:`VirtualRouterPeeringsOperations` + * 2019-09-01: :class:`VirtualRouterPeeringsOperations` """ api_version = self._get_api_version('virtual_router_peerings') if api_version == '2019-07-01': from .v2019_07_01.operations import VirtualRouterPeeringsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import VirtualRouterPeeringsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import VirtualRouterPeeringsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -4128,12 +4452,15 @@ def virtual_routers(self): * 2019-07-01: :class:`VirtualRoutersOperations` * 2019-08-01: :class:`VirtualRoutersOperations` + * 2019-09-01: :class:`VirtualRoutersOperations` """ api_version = self._get_api_version('virtual_routers') if api_version == '2019-07-01': from .v2019_07_01.operations import VirtualRoutersOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import VirtualRoutersOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import VirtualRoutersOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -4170,6 +4497,7 @@ def virtual_wans(self): * 2019-06-01: :class:`VirtualWansOperations` * 2019-07-01: :class:`VirtualWansOperations` * 2019-08-01: :class:`VirtualWansOperations` + * 2019-09-01: :class:`VirtualWansOperations` """ api_version = self._get_api_version('virtual_wans') if api_version == '2018-08-01': @@ -4190,6 +4518,8 @@ def virtual_wans(self): from .v2019_07_01.operations import VirtualWansOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import VirtualWansOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import VirtualWansOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -4210,6 +4540,7 @@ def vpn_connections(self): * 2019-06-01: :class:`VpnConnectionsOperations` * 2019-07-01: :class:`VpnConnectionsOperations` * 2019-08-01: :class:`VpnConnectionsOperations` + * 2019-09-01: :class:`VpnConnectionsOperations` """ api_version = self._get_api_version('vpn_connections') if api_version == '2018-04-01': @@ -4236,6 +4567,8 @@ def vpn_connections(self): from .v2019_07_01.operations import VpnConnectionsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import VpnConnectionsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import VpnConnectionsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -4256,6 +4589,7 @@ def vpn_gateways(self): * 2019-06-01: :class:`VpnGatewaysOperations` * 2019-07-01: :class:`VpnGatewaysOperations` * 2019-08-01: :class:`VpnGatewaysOperations` + * 2019-09-01: :class:`VpnGatewaysOperations` """ api_version = self._get_api_version('vpn_gateways') if api_version == '2018-04-01': @@ -4282,6 +4616,8 @@ def vpn_gateways(self): from .v2019_07_01.operations import VpnGatewaysOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import VpnGatewaysOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import VpnGatewaysOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -4293,6 +4629,7 @@ def vpn_link_connections(self): * 2019-06-01: :class:`VpnLinkConnectionsOperations` * 2019-07-01: :class:`VpnLinkConnectionsOperations` * 2019-08-01: :class:`VpnLinkConnectionsOperations` + * 2019-09-01: :class:`VpnLinkConnectionsOperations` """ api_version = self._get_api_version('vpn_link_connections') if api_version == '2019-06-01': @@ -4301,6 +4638,8 @@ def vpn_link_connections(self): from .v2019_07_01.operations import VpnLinkConnectionsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import VpnLinkConnectionsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import VpnLinkConnectionsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -4310,10 +4649,13 @@ def vpn_server_configurations(self): """Instance depends on the API version: * 2019-08-01: :class:`VpnServerConfigurationsOperations` + * 2019-09-01: :class:`VpnServerConfigurationsOperations` """ api_version = self._get_api_version('vpn_server_configurations') if api_version == '2019-08-01': from .v2019_08_01.operations import VpnServerConfigurationsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import VpnServerConfigurationsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -4323,10 +4665,13 @@ def vpn_server_configurations_associated_with_virtual_wan(self): """Instance depends on the API version: * 2019-08-01: :class:`VpnServerConfigurationsAssociatedWithVirtualWanOperations` + * 2019-09-01: :class:`VpnServerConfigurationsAssociatedWithVirtualWanOperations` """ api_version = self._get_api_version('vpn_server_configurations_associated_with_virtual_wan') if api_version == '2019-08-01': from .v2019_08_01.operations import VpnServerConfigurationsAssociatedWithVirtualWanOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import VpnServerConfigurationsAssociatedWithVirtualWanOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -4338,6 +4683,7 @@ def vpn_site_link_connections(self): * 2019-06-01: :class:`VpnSiteLinkConnectionsOperations` * 2019-07-01: :class:`VpnSiteLinkConnectionsOperations` * 2019-08-01: :class:`VpnSiteLinkConnectionsOperations` + * 2019-09-01: :class:`VpnSiteLinkConnectionsOperations` """ api_version = self._get_api_version('vpn_site_link_connections') if api_version == '2019-06-01': @@ -4346,6 +4692,8 @@ def vpn_site_link_connections(self): from .v2019_07_01.operations import VpnSiteLinkConnectionsOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import VpnSiteLinkConnectionsOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import VpnSiteLinkConnectionsOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -4357,6 +4705,7 @@ def vpn_site_links(self): * 2019-06-01: :class:`VpnSiteLinksOperations` * 2019-07-01: :class:`VpnSiteLinksOperations` * 2019-08-01: :class:`VpnSiteLinksOperations` + * 2019-09-01: :class:`VpnSiteLinksOperations` """ api_version = self._get_api_version('vpn_site_links') if api_version == '2019-06-01': @@ -4365,6 +4714,8 @@ def vpn_site_links(self): from .v2019_07_01.operations import VpnSiteLinksOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import VpnSiteLinksOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import VpnSiteLinksOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -4385,6 +4736,7 @@ def vpn_sites(self): * 2019-06-01: :class:`VpnSitesOperations` * 2019-07-01: :class:`VpnSitesOperations` * 2019-08-01: :class:`VpnSitesOperations` + * 2019-09-01: :class:`VpnSitesOperations` """ api_version = self._get_api_version('vpn_sites') if api_version == '2018-04-01': @@ -4411,6 +4763,8 @@ def vpn_sites(self): from .v2019_07_01.operations import VpnSitesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import VpnSitesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import VpnSitesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -4431,6 +4785,7 @@ def vpn_sites_configuration(self): * 2019-06-01: :class:`VpnSitesConfigurationOperations` * 2019-07-01: :class:`VpnSitesConfigurationOperations` * 2019-08-01: :class:`VpnSitesConfigurationOperations` + * 2019-09-01: :class:`VpnSitesConfigurationOperations` """ api_version = self._get_api_version('vpn_sites_configuration') if api_version == '2018-04-01': @@ -4457,6 +4812,8 @@ def vpn_sites_configuration(self): from .v2019_07_01.operations import VpnSitesConfigurationOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import VpnSitesConfigurationOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import VpnSitesConfigurationOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) @@ -4471,6 +4828,7 @@ def web_application_firewall_policies(self): * 2019-06-01: :class:`WebApplicationFirewallPoliciesOperations` * 2019-07-01: :class:`WebApplicationFirewallPoliciesOperations` * 2019-08-01: :class:`WebApplicationFirewallPoliciesOperations` + * 2019-09-01: :class:`WebApplicationFirewallPoliciesOperations` """ api_version = self._get_api_version('web_application_firewall_policies') if api_version == '2018-12-01': @@ -4485,6 +4843,8 @@ def web_application_firewall_policies(self): from .v2019_07_01.operations import WebApplicationFirewallPoliciesOperations as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import WebApplicationFirewallPoliciesOperations as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import WebApplicationFirewallPoliciesOperations as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) return OperationClass(self._client, self.config, Serializer(self._models_dict(api_version)), Deserializer(self._models_dict(api_version))) diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/_operations_mixin.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/_operations_mixin.py index e029fab820af..b064f1de9b2a 100644 --- a/sdk/network/azure-mgmt-network/azure/mgmt/network/_operations_mixin.py +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/_operations_mixin.py @@ -31,7 +31,7 @@ def check_dns_name_availability(self, location, domain_name_label, custom_header overrides`. :return: DnsNameAvailabilityResult or ClientRawResponse if raw=true :rtype: - ~azure.mgmt.network.v2019_08_01.models.DnsNameAvailabilityResult or + ~azure.mgmt.network.v2019_09_01.models.DnsNameAvailabilityResult or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` @@ -83,6 +83,8 @@ def check_dns_name_availability(self, location, domain_name_label, custom_header from .v2019_07_01.operations import NetworkManagementClientOperationsMixin as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import NetworkManagementClientOperationsMixin as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import NetworkManagementClientOperationsMixin as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) mixin_instance = OperationClass() @@ -108,7 +110,7 @@ def generatevirtualwanvpnserverconfigurationvpnprofile(self, resource_group_name :param authentication_method: VPN client authentication method. Possible values include: 'EAPTLS', 'EAPMSCHAPv2' :type authentication_method: str or - ~azure.mgmt.network.v2019_08_01.models.AuthenticationMethod + ~azure.mgmt.network.v2019_09_01.models.AuthenticationMethod :param dict custom_headers: headers that will be added to the request :param bool raw: The poller return type is ClientRawResponse, the direct response alongside the deserialized response @@ -117,15 +119,17 @@ def generatevirtualwanvpnserverconfigurationvpnprofile(self, resource_group_name :return: An instance of LROPoller that returns VpnProfileResponse or ClientRawResponse if raw==True :rtype: - ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_08_01.models.VpnProfileResponse] + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VpnProfileResponse] or - ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_08_01.models.VpnProfileResponse]] + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VpnProfileResponse]] :raises: :class:`CloudError` """ api_version = self._get_api_version('generatevirtualwanvpnserverconfigurationvpnprofile') if api_version == '2019-08-01': from .v2019_08_01.operations import NetworkManagementClientOperationsMixin as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import NetworkManagementClientOperationsMixin as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) mixin_instance = OperationClass() @@ -150,7 +154,7 @@ def supported_security_providers(self, resource_group_name, virtual_wan_name, cu overrides`. :return: VirtualWanSecurityProviders or ClientRawResponse if raw=true :rtype: - ~azure.mgmt.network.v2019_08_01.models.VirtualWanSecurityProviders or + ~azure.mgmt.network.v2019_09_01.models.VirtualWanSecurityProviders or ~msrest.pipeline.ClientRawResponse :raises: :class:`CloudError` @@ -174,6 +178,8 @@ def supported_security_providers(self, resource_group_name, virtual_wan_name, cu from .v2019_07_01.operations import NetworkManagementClientOperationsMixin as OperationClass elif api_version == '2019-08-01': from .v2019_08_01.operations import NetworkManagementClientOperationsMixin as OperationClass + elif api_version == '2019-09-01': + from .v2019_09_01.operations import NetworkManagementClientOperationsMixin as OperationClass else: raise NotImplementedError("APIVersion {} is not available".format(api_version)) mixin_instance = OperationClass() diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/models.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/models.py index 9de914d4c624..8206be69af7f 100644 --- a/sdk/network/azure-mgmt-network/azure/mgmt/network/models.py +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/models.py @@ -6,4 +6,5 @@ # -------------------------------------------------------------------------- from .v2018_07_01.models import * from .v2019_02_01.models import * -from .v2019_08_01.models import * +from .v2019_07_01.models import * +from .v2019_09_01.models import * diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/__init__.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/__init__.py new file mode 100644 index 000000000000..6011c1a921c6 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/__init__.py @@ -0,0 +1,19 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from ._configuration import NetworkManagementClientConfiguration +from ._network_management_client import NetworkManagementClient +__all__ = ['NetworkManagementClient', 'NetworkManagementClientConfiguration'] + +from .version import VERSION + +__version__ = VERSION + diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/_configuration.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/_configuration.py new file mode 100644 index 000000000000..a7dd38c001c1 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/_configuration.py @@ -0,0 +1,50 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- +from msrestazure import AzureConfiguration + +from .version import VERSION + + +class NetworkManagementClientConfiguration(AzureConfiguration): + """Configuration for NetworkManagementClient + Note that all parameters used to create this instance are saved as instance + attributes. + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: The subscription credentials which uniquely + identify the Microsoft Azure subscription. The subscription ID forms part + of the URI for every service call. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + if credentials is None: + raise ValueError("Parameter 'credentials' must not be None.") + if subscription_id is None: + raise ValueError("Parameter 'subscription_id' must not be None.") + if not base_url: + base_url = 'https://management.azure.com' + + super(NetworkManagementClientConfiguration, self).__init__(base_url) + + # Starting Autorest.Python 4.0.64, make connection pool activated by default + self.keep_alive = True + + self.add_user_agent('azure-mgmt-network/{}'.format(VERSION)) + self.add_user_agent('Azure-SDK-For-Python') + + self.credentials = credentials + self.subscription_id = subscription_id diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/_network_management_client.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/_network_management_client.py new file mode 100644 index 000000000000..0347c2db071a --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/_network_management_client.py @@ -0,0 +1,486 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.service_client import SDKClient +from msrest import Serializer, Deserializer + +from ._configuration import NetworkManagementClientConfiguration +from .operations import NetworkManagementClientOperationsMixin +from .operations import ApplicationGatewaysOperations +from .operations import ApplicationSecurityGroupsOperations +from .operations import AvailableDelegationsOperations +from .operations import AvailableResourceGroupDelegationsOperations +from .operations import AvailableServiceAliasesOperations +from .operations import AzureFirewallsOperations +from .operations import AzureFirewallFqdnTagsOperations +from .operations import BastionHostsOperations +from .operations import DdosCustomPoliciesOperations +from .operations import DdosProtectionPlansOperations +from .operations import AvailableEndpointServicesOperations +from .operations import ExpressRouteCircuitAuthorizationsOperations +from .operations import ExpressRouteCircuitPeeringsOperations +from .operations import ExpressRouteCircuitConnectionsOperations +from .operations import PeerExpressRouteCircuitConnectionsOperations +from .operations import ExpressRouteCircuitsOperations +from .operations import ExpressRouteServiceProvidersOperations +from .operations import ExpressRouteCrossConnectionsOperations +from .operations import ExpressRouteCrossConnectionPeeringsOperations +from .operations import ExpressRouteGatewaysOperations +from .operations import ExpressRouteConnectionsOperations +from .operations import ExpressRoutePortsLocationsOperations +from .operations import ExpressRoutePortsOperations +from .operations import ExpressRouteLinksOperations +from .operations import FirewallPoliciesOperations +from .operations import FirewallPolicyRuleGroupsOperations +from .operations import IpGroupsOperations +from .operations import LoadBalancersOperations +from .operations import LoadBalancerBackendAddressPoolsOperations +from .operations import LoadBalancerFrontendIPConfigurationsOperations +from .operations import InboundNatRulesOperations +from .operations import LoadBalancerLoadBalancingRulesOperations +from .operations import LoadBalancerOutboundRulesOperations +from .operations import LoadBalancerNetworkInterfacesOperations +from .operations import LoadBalancerProbesOperations +from .operations import NatGatewaysOperations +from .operations import NetworkInterfacesOperations +from .operations import NetworkInterfaceIPConfigurationsOperations +from .operations import NetworkInterfaceLoadBalancersOperations +from .operations import NetworkInterfaceTapConfigurationsOperations +from .operations import NetworkProfilesOperations +from .operations import NetworkSecurityGroupsOperations +from .operations import SecurityRulesOperations +from .operations import DefaultSecurityRulesOperations +from .operations import NetworkWatchersOperations +from .operations import PacketCapturesOperations +from .operations import ConnectionMonitorsOperations +from .operations import Operations +from .operations import PrivateEndpointsOperations +from .operations import AvailablePrivateEndpointTypesOperations +from .operations import PrivateLinkServicesOperations +from .operations import PublicIPAddressesOperations +from .operations import PublicIPPrefixesOperations +from .operations import RouteFiltersOperations +from .operations import RouteFilterRulesOperations +from .operations import RouteTablesOperations +from .operations import RoutesOperations +from .operations import BgpServiceCommunitiesOperations +from .operations import ServiceEndpointPoliciesOperations +from .operations import ServiceEndpointPolicyDefinitionsOperations +from .operations import ServiceTagsOperations +from .operations import UsagesOperations +from .operations import VirtualNetworksOperations +from .operations import SubnetsOperations +from .operations import ResourceNavigationLinksOperations +from .operations import ServiceAssociationLinksOperations +from .operations import VirtualNetworkPeeringsOperations +from .operations import VirtualNetworkGatewaysOperations +from .operations import VirtualNetworkGatewayConnectionsOperations +from .operations import LocalNetworkGatewaysOperations +from .operations import VirtualNetworkTapsOperations +from .operations import VirtualRoutersOperations +from .operations import VirtualRouterPeeringsOperations +from .operations import VirtualWansOperations +from .operations import VpnSitesOperations +from .operations import VpnSiteLinksOperations +from .operations import VpnSitesConfigurationOperations +from .operations import VpnServerConfigurationsOperations +from .operations import VirtualHubsOperations +from .operations import HubVirtualNetworkConnectionsOperations +from .operations import VpnGatewaysOperations +from .operations import VpnConnectionsOperations +from .operations import VpnSiteLinkConnectionsOperations +from .operations import VpnLinkConnectionsOperations +from .operations import P2sVpnGatewaysOperations +from .operations import VpnServerConfigurationsAssociatedWithVirtualWanOperations +from .operations import VirtualHubRouteTableV2sOperations +from .operations import WebApplicationFirewallPoliciesOperations +from . import models + + +class NetworkManagementClient(NetworkManagementClientOperationsMixin, SDKClient): + """Network Client + + :ivar config: Configuration for client. + :vartype config: NetworkManagementClientConfiguration + + :ivar application_gateways: ApplicationGateways operations + :vartype application_gateways: azure.mgmt.network.v2019_09_01.operations.ApplicationGatewaysOperations + :ivar application_security_groups: ApplicationSecurityGroups operations + :vartype application_security_groups: azure.mgmt.network.v2019_09_01.operations.ApplicationSecurityGroupsOperations + :ivar available_delegations: AvailableDelegations operations + :vartype available_delegations: azure.mgmt.network.v2019_09_01.operations.AvailableDelegationsOperations + :ivar available_resource_group_delegations: AvailableResourceGroupDelegations operations + :vartype available_resource_group_delegations: azure.mgmt.network.v2019_09_01.operations.AvailableResourceGroupDelegationsOperations + :ivar available_service_aliases: AvailableServiceAliases operations + :vartype available_service_aliases: azure.mgmt.network.v2019_09_01.operations.AvailableServiceAliasesOperations + :ivar azure_firewalls: AzureFirewalls operations + :vartype azure_firewalls: azure.mgmt.network.v2019_09_01.operations.AzureFirewallsOperations + :ivar azure_firewall_fqdn_tags: AzureFirewallFqdnTags operations + :vartype azure_firewall_fqdn_tags: azure.mgmt.network.v2019_09_01.operations.AzureFirewallFqdnTagsOperations + :ivar bastion_hosts: BastionHosts operations + :vartype bastion_hosts: azure.mgmt.network.v2019_09_01.operations.BastionHostsOperations + :ivar ddos_custom_policies: DdosCustomPolicies operations + :vartype ddos_custom_policies: azure.mgmt.network.v2019_09_01.operations.DdosCustomPoliciesOperations + :ivar ddos_protection_plans: DdosProtectionPlans operations + :vartype ddos_protection_plans: azure.mgmt.network.v2019_09_01.operations.DdosProtectionPlansOperations + :ivar available_endpoint_services: AvailableEndpointServices operations + :vartype available_endpoint_services: azure.mgmt.network.v2019_09_01.operations.AvailableEndpointServicesOperations + :ivar express_route_circuit_authorizations: ExpressRouteCircuitAuthorizations operations + :vartype express_route_circuit_authorizations: azure.mgmt.network.v2019_09_01.operations.ExpressRouteCircuitAuthorizationsOperations + :ivar express_route_circuit_peerings: ExpressRouteCircuitPeerings operations + :vartype express_route_circuit_peerings: azure.mgmt.network.v2019_09_01.operations.ExpressRouteCircuitPeeringsOperations + :ivar express_route_circuit_connections: ExpressRouteCircuitConnections operations + :vartype express_route_circuit_connections: azure.mgmt.network.v2019_09_01.operations.ExpressRouteCircuitConnectionsOperations + :ivar peer_express_route_circuit_connections: PeerExpressRouteCircuitConnections operations + :vartype peer_express_route_circuit_connections: azure.mgmt.network.v2019_09_01.operations.PeerExpressRouteCircuitConnectionsOperations + :ivar express_route_circuits: ExpressRouteCircuits operations + :vartype express_route_circuits: azure.mgmt.network.v2019_09_01.operations.ExpressRouteCircuitsOperations + :ivar express_route_service_providers: ExpressRouteServiceProviders operations + :vartype express_route_service_providers: azure.mgmt.network.v2019_09_01.operations.ExpressRouteServiceProvidersOperations + :ivar express_route_cross_connections: ExpressRouteCrossConnections operations + :vartype express_route_cross_connections: azure.mgmt.network.v2019_09_01.operations.ExpressRouteCrossConnectionsOperations + :ivar express_route_cross_connection_peerings: ExpressRouteCrossConnectionPeerings operations + :vartype express_route_cross_connection_peerings: azure.mgmt.network.v2019_09_01.operations.ExpressRouteCrossConnectionPeeringsOperations + :ivar express_route_gateways: ExpressRouteGateways operations + :vartype express_route_gateways: azure.mgmt.network.v2019_09_01.operations.ExpressRouteGatewaysOperations + :ivar express_route_connections: ExpressRouteConnections operations + :vartype express_route_connections: azure.mgmt.network.v2019_09_01.operations.ExpressRouteConnectionsOperations + :ivar express_route_ports_locations: ExpressRoutePortsLocations operations + :vartype express_route_ports_locations: azure.mgmt.network.v2019_09_01.operations.ExpressRoutePortsLocationsOperations + :ivar express_route_ports: ExpressRoutePorts operations + :vartype express_route_ports: azure.mgmt.network.v2019_09_01.operations.ExpressRoutePortsOperations + :ivar express_route_links: ExpressRouteLinks operations + :vartype express_route_links: azure.mgmt.network.v2019_09_01.operations.ExpressRouteLinksOperations + :ivar firewall_policies: FirewallPolicies operations + :vartype firewall_policies: azure.mgmt.network.v2019_09_01.operations.FirewallPoliciesOperations + :ivar firewall_policy_rule_groups: FirewallPolicyRuleGroups operations + :vartype firewall_policy_rule_groups: azure.mgmt.network.v2019_09_01.operations.FirewallPolicyRuleGroupsOperations + :ivar ip_groups: IpGroups operations + :vartype ip_groups: azure.mgmt.network.v2019_09_01.operations.IpGroupsOperations + :ivar load_balancers: LoadBalancers operations + :vartype load_balancers: azure.mgmt.network.v2019_09_01.operations.LoadBalancersOperations + :ivar load_balancer_backend_address_pools: LoadBalancerBackendAddressPools operations + :vartype load_balancer_backend_address_pools: azure.mgmt.network.v2019_09_01.operations.LoadBalancerBackendAddressPoolsOperations + :ivar load_balancer_frontend_ip_configurations: LoadBalancerFrontendIPConfigurations operations + :vartype load_balancer_frontend_ip_configurations: azure.mgmt.network.v2019_09_01.operations.LoadBalancerFrontendIPConfigurationsOperations + :ivar inbound_nat_rules: InboundNatRules operations + :vartype inbound_nat_rules: azure.mgmt.network.v2019_09_01.operations.InboundNatRulesOperations + :ivar load_balancer_load_balancing_rules: LoadBalancerLoadBalancingRules operations + :vartype load_balancer_load_balancing_rules: azure.mgmt.network.v2019_09_01.operations.LoadBalancerLoadBalancingRulesOperations + :ivar load_balancer_outbound_rules: LoadBalancerOutboundRules operations + :vartype load_balancer_outbound_rules: azure.mgmt.network.v2019_09_01.operations.LoadBalancerOutboundRulesOperations + :ivar load_balancer_network_interfaces: LoadBalancerNetworkInterfaces operations + :vartype load_balancer_network_interfaces: azure.mgmt.network.v2019_09_01.operations.LoadBalancerNetworkInterfacesOperations + :ivar load_balancer_probes: LoadBalancerProbes operations + :vartype load_balancer_probes: azure.mgmt.network.v2019_09_01.operations.LoadBalancerProbesOperations + :ivar nat_gateways: NatGateways operations + :vartype nat_gateways: azure.mgmt.network.v2019_09_01.operations.NatGatewaysOperations + :ivar network_interfaces: NetworkInterfaces operations + :vartype network_interfaces: azure.mgmt.network.v2019_09_01.operations.NetworkInterfacesOperations + :ivar network_interface_ip_configurations: NetworkInterfaceIPConfigurations operations + :vartype network_interface_ip_configurations: azure.mgmt.network.v2019_09_01.operations.NetworkInterfaceIPConfigurationsOperations + :ivar network_interface_load_balancers: NetworkInterfaceLoadBalancers operations + :vartype network_interface_load_balancers: azure.mgmt.network.v2019_09_01.operations.NetworkInterfaceLoadBalancersOperations + :ivar network_interface_tap_configurations: NetworkInterfaceTapConfigurations operations + :vartype network_interface_tap_configurations: azure.mgmt.network.v2019_09_01.operations.NetworkInterfaceTapConfigurationsOperations + :ivar network_profiles: NetworkProfiles operations + :vartype network_profiles: azure.mgmt.network.v2019_09_01.operations.NetworkProfilesOperations + :ivar network_security_groups: NetworkSecurityGroups operations + :vartype network_security_groups: azure.mgmt.network.v2019_09_01.operations.NetworkSecurityGroupsOperations + :ivar security_rules: SecurityRules operations + :vartype security_rules: azure.mgmt.network.v2019_09_01.operations.SecurityRulesOperations + :ivar default_security_rules: DefaultSecurityRules operations + :vartype default_security_rules: azure.mgmt.network.v2019_09_01.operations.DefaultSecurityRulesOperations + :ivar network_watchers: NetworkWatchers operations + :vartype network_watchers: azure.mgmt.network.v2019_09_01.operations.NetworkWatchersOperations + :ivar packet_captures: PacketCaptures operations + :vartype packet_captures: azure.mgmt.network.v2019_09_01.operations.PacketCapturesOperations + :ivar connection_monitors: ConnectionMonitors operations + :vartype connection_monitors: azure.mgmt.network.v2019_09_01.operations.ConnectionMonitorsOperations + :ivar operations: Operations operations + :vartype operations: azure.mgmt.network.v2019_09_01.operations.Operations + :ivar private_endpoints: PrivateEndpoints operations + :vartype private_endpoints: azure.mgmt.network.v2019_09_01.operations.PrivateEndpointsOperations + :ivar available_private_endpoint_types: AvailablePrivateEndpointTypes operations + :vartype available_private_endpoint_types: azure.mgmt.network.v2019_09_01.operations.AvailablePrivateEndpointTypesOperations + :ivar private_link_services: PrivateLinkServices operations + :vartype private_link_services: azure.mgmt.network.v2019_09_01.operations.PrivateLinkServicesOperations + :ivar public_ip_addresses: PublicIPAddresses operations + :vartype public_ip_addresses: azure.mgmt.network.v2019_09_01.operations.PublicIPAddressesOperations + :ivar public_ip_prefixes: PublicIPPrefixes operations + :vartype public_ip_prefixes: azure.mgmt.network.v2019_09_01.operations.PublicIPPrefixesOperations + :ivar route_filters: RouteFilters operations + :vartype route_filters: azure.mgmt.network.v2019_09_01.operations.RouteFiltersOperations + :ivar route_filter_rules: RouteFilterRules operations + :vartype route_filter_rules: azure.mgmt.network.v2019_09_01.operations.RouteFilterRulesOperations + :ivar route_tables: RouteTables operations + :vartype route_tables: azure.mgmt.network.v2019_09_01.operations.RouteTablesOperations + :ivar routes: Routes operations + :vartype routes: azure.mgmt.network.v2019_09_01.operations.RoutesOperations + :ivar bgp_service_communities: BgpServiceCommunities operations + :vartype bgp_service_communities: azure.mgmt.network.v2019_09_01.operations.BgpServiceCommunitiesOperations + :ivar service_endpoint_policies: ServiceEndpointPolicies operations + :vartype service_endpoint_policies: azure.mgmt.network.v2019_09_01.operations.ServiceEndpointPoliciesOperations + :ivar service_endpoint_policy_definitions: ServiceEndpointPolicyDefinitions operations + :vartype service_endpoint_policy_definitions: azure.mgmt.network.v2019_09_01.operations.ServiceEndpointPolicyDefinitionsOperations + :ivar service_tags: ServiceTags operations + :vartype service_tags: azure.mgmt.network.v2019_09_01.operations.ServiceTagsOperations + :ivar usages: Usages operations + :vartype usages: azure.mgmt.network.v2019_09_01.operations.UsagesOperations + :ivar virtual_networks: VirtualNetworks operations + :vartype virtual_networks: azure.mgmt.network.v2019_09_01.operations.VirtualNetworksOperations + :ivar subnets: Subnets operations + :vartype subnets: azure.mgmt.network.v2019_09_01.operations.SubnetsOperations + :ivar resource_navigation_links: ResourceNavigationLinks operations + :vartype resource_navigation_links: azure.mgmt.network.v2019_09_01.operations.ResourceNavigationLinksOperations + :ivar service_association_links: ServiceAssociationLinks operations + :vartype service_association_links: azure.mgmt.network.v2019_09_01.operations.ServiceAssociationLinksOperations + :ivar virtual_network_peerings: VirtualNetworkPeerings operations + :vartype virtual_network_peerings: azure.mgmt.network.v2019_09_01.operations.VirtualNetworkPeeringsOperations + :ivar virtual_network_gateways: VirtualNetworkGateways operations + :vartype virtual_network_gateways: azure.mgmt.network.v2019_09_01.operations.VirtualNetworkGatewaysOperations + :ivar virtual_network_gateway_connections: VirtualNetworkGatewayConnections operations + :vartype virtual_network_gateway_connections: azure.mgmt.network.v2019_09_01.operations.VirtualNetworkGatewayConnectionsOperations + :ivar local_network_gateways: LocalNetworkGateways operations + :vartype local_network_gateways: azure.mgmt.network.v2019_09_01.operations.LocalNetworkGatewaysOperations + :ivar virtual_network_taps: VirtualNetworkTaps operations + :vartype virtual_network_taps: azure.mgmt.network.v2019_09_01.operations.VirtualNetworkTapsOperations + :ivar virtual_routers: VirtualRouters operations + :vartype virtual_routers: azure.mgmt.network.v2019_09_01.operations.VirtualRoutersOperations + :ivar virtual_router_peerings: VirtualRouterPeerings operations + :vartype virtual_router_peerings: azure.mgmt.network.v2019_09_01.operations.VirtualRouterPeeringsOperations + :ivar virtual_wans: VirtualWans operations + :vartype virtual_wans: azure.mgmt.network.v2019_09_01.operations.VirtualWansOperations + :ivar vpn_sites: VpnSites operations + :vartype vpn_sites: azure.mgmt.network.v2019_09_01.operations.VpnSitesOperations + :ivar vpn_site_links: VpnSiteLinks operations + :vartype vpn_site_links: azure.mgmt.network.v2019_09_01.operations.VpnSiteLinksOperations + :ivar vpn_sites_configuration: VpnSitesConfiguration operations + :vartype vpn_sites_configuration: azure.mgmt.network.v2019_09_01.operations.VpnSitesConfigurationOperations + :ivar vpn_server_configurations: VpnServerConfigurations operations + :vartype vpn_server_configurations: azure.mgmt.network.v2019_09_01.operations.VpnServerConfigurationsOperations + :ivar virtual_hubs: VirtualHubs operations + :vartype virtual_hubs: azure.mgmt.network.v2019_09_01.operations.VirtualHubsOperations + :ivar hub_virtual_network_connections: HubVirtualNetworkConnections operations + :vartype hub_virtual_network_connections: azure.mgmt.network.v2019_09_01.operations.HubVirtualNetworkConnectionsOperations + :ivar vpn_gateways: VpnGateways operations + :vartype vpn_gateways: azure.mgmt.network.v2019_09_01.operations.VpnGatewaysOperations + :ivar vpn_connections: VpnConnections operations + :vartype vpn_connections: azure.mgmt.network.v2019_09_01.operations.VpnConnectionsOperations + :ivar vpn_site_link_connections: VpnSiteLinkConnections operations + :vartype vpn_site_link_connections: azure.mgmt.network.v2019_09_01.operations.VpnSiteLinkConnectionsOperations + :ivar vpn_link_connections: VpnLinkConnections operations + :vartype vpn_link_connections: azure.mgmt.network.v2019_09_01.operations.VpnLinkConnectionsOperations + :ivar p2s_vpn_gateways: P2sVpnGateways operations + :vartype p2s_vpn_gateways: azure.mgmt.network.v2019_09_01.operations.P2sVpnGatewaysOperations + :ivar vpn_server_configurations_associated_with_virtual_wan: VpnServerConfigurationsAssociatedWithVirtualWan operations + :vartype vpn_server_configurations_associated_with_virtual_wan: azure.mgmt.network.v2019_09_01.operations.VpnServerConfigurationsAssociatedWithVirtualWanOperations + :ivar virtual_hub_route_table_v2s: VirtualHubRouteTableV2s operations + :vartype virtual_hub_route_table_v2s: azure.mgmt.network.v2019_09_01.operations.VirtualHubRouteTableV2sOperations + :ivar web_application_firewall_policies: WebApplicationFirewallPolicies operations + :vartype web_application_firewall_policies: azure.mgmt.network.v2019_09_01.operations.WebApplicationFirewallPoliciesOperations + + :param credentials: Credentials needed for the client to connect to Azure. + :type credentials: :mod:`A msrestazure Credentials + object` + :param subscription_id: The subscription credentials which uniquely + identify the Microsoft Azure subscription. The subscription ID forms part + of the URI for every service call. + :type subscription_id: str + :param str base_url: Service URL + """ + + def __init__( + self, credentials, subscription_id, base_url=None): + + self.config = NetworkManagementClientConfiguration(credentials, subscription_id, base_url) + super(NetworkManagementClient, self).__init__(self.config.credentials, self.config) + + client_models = {k: v for k, v in models.__dict__.items() if isinstance(v, type)} + self._serialize = Serializer(client_models) + self._deserialize = Deserializer(client_models) + + self.application_gateways = ApplicationGatewaysOperations( + self._client, self.config, self._serialize, self._deserialize) + self.application_security_groups = ApplicationSecurityGroupsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.available_delegations = AvailableDelegationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.available_resource_group_delegations = AvailableResourceGroupDelegationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.available_service_aliases = AvailableServiceAliasesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.azure_firewalls = AzureFirewallsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.azure_firewall_fqdn_tags = AzureFirewallFqdnTagsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.bastion_hosts = BastionHostsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.ddos_custom_policies = DdosCustomPoliciesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.ddos_protection_plans = DdosProtectionPlansOperations( + self._client, self.config, self._serialize, self._deserialize) + self.available_endpoint_services = AvailableEndpointServicesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_circuit_authorizations = ExpressRouteCircuitAuthorizationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_circuit_peerings = ExpressRouteCircuitPeeringsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_circuit_connections = ExpressRouteCircuitConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.peer_express_route_circuit_connections = PeerExpressRouteCircuitConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_circuits = ExpressRouteCircuitsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_service_providers = ExpressRouteServiceProvidersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_cross_connections = ExpressRouteCrossConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_cross_connection_peerings = ExpressRouteCrossConnectionPeeringsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_gateways = ExpressRouteGatewaysOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_connections = ExpressRouteConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_ports_locations = ExpressRoutePortsLocationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_ports = ExpressRoutePortsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.express_route_links = ExpressRouteLinksOperations( + self._client, self.config, self._serialize, self._deserialize) + self.firewall_policies = FirewallPoliciesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.firewall_policy_rule_groups = FirewallPolicyRuleGroupsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.ip_groups = IpGroupsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.load_balancers = LoadBalancersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.load_balancer_backend_address_pools = LoadBalancerBackendAddressPoolsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.load_balancer_frontend_ip_configurations = LoadBalancerFrontendIPConfigurationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.inbound_nat_rules = InboundNatRulesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.load_balancer_load_balancing_rules = LoadBalancerLoadBalancingRulesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.load_balancer_outbound_rules = LoadBalancerOutboundRulesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.load_balancer_network_interfaces = LoadBalancerNetworkInterfacesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.load_balancer_probes = LoadBalancerProbesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.nat_gateways = NatGatewaysOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_interfaces = NetworkInterfacesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_interface_ip_configurations = NetworkInterfaceIPConfigurationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_interface_load_balancers = NetworkInterfaceLoadBalancersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_interface_tap_configurations = NetworkInterfaceTapConfigurationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_profiles = NetworkProfilesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_security_groups = NetworkSecurityGroupsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.security_rules = SecurityRulesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.default_security_rules = DefaultSecurityRulesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.network_watchers = NetworkWatchersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.packet_captures = PacketCapturesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.connection_monitors = ConnectionMonitorsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.operations = Operations( + self._client, self.config, self._serialize, self._deserialize) + self.private_endpoints = PrivateEndpointsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.available_private_endpoint_types = AvailablePrivateEndpointTypesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.private_link_services = PrivateLinkServicesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.public_ip_addresses = PublicIPAddressesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.public_ip_prefixes = PublicIPPrefixesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.route_filters = RouteFiltersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.route_filter_rules = RouteFilterRulesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.route_tables = RouteTablesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.routes = RoutesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.bgp_service_communities = BgpServiceCommunitiesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.service_endpoint_policies = ServiceEndpointPoliciesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.service_endpoint_policy_definitions = ServiceEndpointPolicyDefinitionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.service_tags = ServiceTagsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.usages = UsagesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_networks = VirtualNetworksOperations( + self._client, self.config, self._serialize, self._deserialize) + self.subnets = SubnetsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.resource_navigation_links = ResourceNavigationLinksOperations( + self._client, self.config, self._serialize, self._deserialize) + self.service_association_links = ServiceAssociationLinksOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_network_peerings = VirtualNetworkPeeringsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_network_gateways = VirtualNetworkGatewaysOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_network_gateway_connections = VirtualNetworkGatewayConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.local_network_gateways = LocalNetworkGatewaysOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_network_taps = VirtualNetworkTapsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_routers = VirtualRoutersOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_router_peerings = VirtualRouterPeeringsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_wans = VirtualWansOperations( + self._client, self.config, self._serialize, self._deserialize) + self.vpn_sites = VpnSitesOperations( + self._client, self.config, self._serialize, self._deserialize) + self.vpn_site_links = VpnSiteLinksOperations( + self._client, self.config, self._serialize, self._deserialize) + self.vpn_sites_configuration = VpnSitesConfigurationOperations( + self._client, self.config, self._serialize, self._deserialize) + self.vpn_server_configurations = VpnServerConfigurationsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_hubs = VirtualHubsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.hub_virtual_network_connections = HubVirtualNetworkConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.vpn_gateways = VpnGatewaysOperations( + self._client, self.config, self._serialize, self._deserialize) + self.vpn_connections = VpnConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.vpn_site_link_connections = VpnSiteLinkConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.vpn_link_connections = VpnLinkConnectionsOperations( + self._client, self.config, self._serialize, self._deserialize) + self.p2s_vpn_gateways = P2sVpnGatewaysOperations( + self._client, self.config, self._serialize, self._deserialize) + self.vpn_server_configurations_associated_with_virtual_wan = VpnServerConfigurationsAssociatedWithVirtualWanOperations( + self._client, self.config, self._serialize, self._deserialize) + self.virtual_hub_route_table_v2s = VirtualHubRouteTableV2sOperations( + self._client, self.config, self._serialize, self._deserialize) + self.web_application_firewall_policies = WebApplicationFirewallPoliciesOperations( + self._client, self.config, self._serialize, self._deserialize) diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/__init__.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/__init__.py new file mode 100644 index 000000000000..0c8ebf4d2469 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/__init__.py @@ -0,0 +1,1486 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +try: + from ._models_py3 import AadAuthenticationParameters + from ._models_py3 import AddressSpace + from ._models_py3 import ApplicationGateway + from ._models_py3 import ApplicationGatewayAuthenticationCertificate + from ._models_py3 import ApplicationGatewayAutoscaleConfiguration + from ._models_py3 import ApplicationGatewayAvailableSslOptions + from ._models_py3 import ApplicationGatewayAvailableWafRuleSetsResult + from ._models_py3 import ApplicationGatewayBackendAddress + from ._models_py3 import ApplicationGatewayBackendAddressPool + from ._models_py3 import ApplicationGatewayBackendHealth + from ._models_py3 import ApplicationGatewayBackendHealthHttpSettings + from ._models_py3 import ApplicationGatewayBackendHealthOnDemand + from ._models_py3 import ApplicationGatewayBackendHealthPool + from ._models_py3 import ApplicationGatewayBackendHealthServer + from ._models_py3 import ApplicationGatewayBackendHttpSettings + from ._models_py3 import ApplicationGatewayConnectionDraining + from ._models_py3 import ApplicationGatewayCustomError + from ._models_py3 import ApplicationGatewayFirewallDisabledRuleGroup + from ._models_py3 import ApplicationGatewayFirewallExclusion + from ._models_py3 import ApplicationGatewayFirewallRule + from ._models_py3 import ApplicationGatewayFirewallRuleGroup + from ._models_py3 import ApplicationGatewayFirewallRuleSet + from ._models_py3 import ApplicationGatewayFrontendIPConfiguration + from ._models_py3 import ApplicationGatewayFrontendPort + from ._models_py3 import ApplicationGatewayHeaderConfiguration + from ._models_py3 import ApplicationGatewayHttpListener + from ._models_py3 import ApplicationGatewayIPConfiguration + from ._models_py3 import ApplicationGatewayOnDemandProbe + from ._models_py3 import ApplicationGatewayPathRule + from ._models_py3 import ApplicationGatewayProbe + from ._models_py3 import ApplicationGatewayProbeHealthResponseMatch + from ._models_py3 import ApplicationGatewayRedirectConfiguration + from ._models_py3 import ApplicationGatewayRequestRoutingRule + from ._models_py3 import ApplicationGatewayRewriteRule + from ._models_py3 import ApplicationGatewayRewriteRuleActionSet + from ._models_py3 import ApplicationGatewayRewriteRuleCondition + from ._models_py3 import ApplicationGatewayRewriteRuleSet + from ._models_py3 import ApplicationGatewaySku + from ._models_py3 import ApplicationGatewaySslCertificate + from ._models_py3 import ApplicationGatewaySslPolicy + from ._models_py3 import ApplicationGatewaySslPredefinedPolicy + from ._models_py3 import ApplicationGatewayTrustedRootCertificate + from ._models_py3 import ApplicationGatewayUrlPathMap + from ._models_py3 import ApplicationGatewayWebApplicationFirewallConfiguration + from ._models_py3 import ApplicationRuleCondition + from ._models_py3 import ApplicationSecurityGroup + from ._models_py3 import AutoApprovedPrivateLinkService + from ._models_py3 import Availability + from ._models_py3 import AvailableDelegation + from ._models_py3 import AvailablePrivateEndpointType + from ._models_py3 import AvailableProvidersList + from ._models_py3 import AvailableProvidersListCity + from ._models_py3 import AvailableProvidersListCountry + from ._models_py3 import AvailableProvidersListParameters + from ._models_py3 import AvailableProvidersListState + from ._models_py3 import AvailableServiceAlias + from ._models_py3 import AzureAsyncOperationResult + from ._models_py3 import AzureFirewall + from ._models_py3 import AzureFirewallApplicationRule + from ._models_py3 import AzureFirewallApplicationRuleCollection + from ._models_py3 import AzureFirewallApplicationRuleProtocol + from ._models_py3 import AzureFirewallFqdnTag + from ._models_py3 import AzureFirewallIPConfiguration + from ._models_py3 import AzureFirewallNatRCAction + from ._models_py3 import AzureFirewallNatRule + from ._models_py3 import AzureFirewallNatRuleCollection + from ._models_py3 import AzureFirewallNetworkRule + from ._models_py3 import AzureFirewallNetworkRuleCollection + from ._models_py3 import AzureFirewallPublicIPAddress + from ._models_py3 import AzureFirewallRCAction + from ._models_py3 import AzureFirewallSku + from ._models_py3 import AzureReachabilityReport + from ._models_py3 import AzureReachabilityReportItem + from ._models_py3 import AzureReachabilityReportLatencyInfo + from ._models_py3 import AzureReachabilityReportLocation + from ._models_py3 import AzureReachabilityReportParameters + from ._models_py3 import BackendAddressPool + from ._models_py3 import BastionHost + from ._models_py3 import BastionHostIPConfiguration + from ._models_py3 import BGPCommunity + from ._models_py3 import BgpPeerStatus + from ._models_py3 import BgpPeerStatusListResult + from ._models_py3 import BgpServiceCommunity + from ._models_py3 import BgpSettings + from ._models_py3 import CheckPrivateLinkServiceVisibilityRequest + from ._models_py3 import ConnectionMonitor + from ._models_py3 import ConnectionMonitorDestination + from ._models_py3 import ConnectionMonitorParameters + from ._models_py3 import ConnectionMonitorQueryResult + from ._models_py3 import ConnectionMonitorResult + from ._models_py3 import ConnectionMonitorSource + from ._models_py3 import ConnectionResetSharedKey + from ._models_py3 import ConnectionSharedKey + from ._models_py3 import ConnectionStateSnapshot + from ._models_py3 import ConnectivityDestination + from ._models_py3 import ConnectivityHop + from ._models_py3 import ConnectivityInformation + from ._models_py3 import ConnectivityIssue + from ._models_py3 import ConnectivityParameters + from ._models_py3 import ConnectivitySource + from ._models_py3 import Container + from ._models_py3 import ContainerNetworkInterface + from ._models_py3 import ContainerNetworkInterfaceConfiguration + from ._models_py3 import ContainerNetworkInterfaceIpConfiguration + from ._models_py3 import DdosCustomPolicy + from ._models_py3 import DdosProtectionPlan + from ._models_py3 import DdosSettings + from ._models_py3 import Delegation + from ._models_py3 import DeviceProperties + from ._models_py3 import DhcpOptions + from ._models_py3 import Dimension + from ._models_py3 import DnsNameAvailabilityResult + from ._models_py3 import EffectiveNetworkSecurityGroup + from ._models_py3 import EffectiveNetworkSecurityGroupAssociation + from ._models_py3 import EffectiveNetworkSecurityGroupListResult + from ._models_py3 import EffectiveNetworkSecurityRule + from ._models_py3 import EffectiveRoute + from ._models_py3 import EffectiveRouteListResult + from ._models_py3 import EndpointServiceResult + from ._models_py3 import Error, ErrorException + from ._models_py3 import ErrorDetails + from ._models_py3 import ErrorResponse, ErrorResponseException + from ._models_py3 import EvaluatedNetworkSecurityGroup + from ._models_py3 import ExpressRouteCircuit + from ._models_py3 import ExpressRouteCircuitArpTable + from ._models_py3 import ExpressRouteCircuitAuthorization + from ._models_py3 import ExpressRouteCircuitConnection + from ._models_py3 import ExpressRouteCircuitPeering + from ._models_py3 import ExpressRouteCircuitPeeringConfig + from ._models_py3 import ExpressRouteCircuitPeeringId + from ._models_py3 import ExpressRouteCircuitReference + from ._models_py3 import ExpressRouteCircuitRoutesTable + from ._models_py3 import ExpressRouteCircuitRoutesTableSummary + from ._models_py3 import ExpressRouteCircuitsArpTableListResult + from ._models_py3 import ExpressRouteCircuitServiceProviderProperties + from ._models_py3 import ExpressRouteCircuitSku + from ._models_py3 import ExpressRouteCircuitsRoutesTableListResult + from ._models_py3 import ExpressRouteCircuitsRoutesTableSummaryListResult + from ._models_py3 import ExpressRouteCircuitStats + from ._models_py3 import ExpressRouteConnection + from ._models_py3 import ExpressRouteConnectionId + from ._models_py3 import ExpressRouteConnectionList + from ._models_py3 import ExpressRouteCrossConnection + from ._models_py3 import ExpressRouteCrossConnectionPeering + from ._models_py3 import ExpressRouteCrossConnectionRoutesTableSummary + from ._models_py3 import ExpressRouteCrossConnectionsRoutesTableSummaryListResult + from ._models_py3 import ExpressRouteGateway + from ._models_py3 import ExpressRouteGatewayList + from ._models_py3 import ExpressRouteGatewayPropertiesAutoScaleConfiguration + from ._models_py3 import ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds + from ._models_py3 import ExpressRouteLink + from ._models_py3 import ExpressRouteLinkMacSecConfig + from ._models_py3 import ExpressRoutePort + from ._models_py3 import ExpressRoutePortsLocation + from ._models_py3 import ExpressRoutePortsLocationBandwidths + from ._models_py3 import ExpressRouteServiceProvider + from ._models_py3 import ExpressRouteServiceProviderBandwidthsOffered + from ._models_py3 import FirewallPolicy + from ._models_py3 import FirewallPolicyFilterRule + from ._models_py3 import FirewallPolicyFilterRuleAction + from ._models_py3 import FirewallPolicyNatRule + from ._models_py3 import FirewallPolicyNatRuleAction + from ._models_py3 import FirewallPolicyRule + from ._models_py3 import FirewallPolicyRuleCondition + from ._models_py3 import FirewallPolicyRuleConditionApplicationProtocol + from ._models_py3 import FirewallPolicyRuleGroup + from ._models_py3 import FlowLogFormatParameters + from ._models_py3 import FlowLogInformation + from ._models_py3 import FlowLogStatusParameters + from ._models_py3 import FrontendIPConfiguration + from ._models_py3 import GatewayRoute + from ._models_py3 import GatewayRouteListResult + from ._models_py3 import GetVpnSitesConfigurationRequest + from ._models_py3 import HTTPConfiguration + from ._models_py3 import HTTPHeader + from ._models_py3 import HubIPAddresses + from ._models_py3 import HubVirtualNetworkConnection + from ._models_py3 import InboundNatPool + from ._models_py3 import InboundNatRule + from ._models_py3 import IPAddressAvailabilityResult + from ._models_py3 import IPConfiguration + from ._models_py3 import IPConfigurationProfile + from ._models_py3 import IpGroup + from ._models_py3 import IpsecPolicy + from ._models_py3 import IpTag + from ._models_py3 import Ipv6ExpressRouteCircuitPeeringConfig + from ._models_py3 import LoadBalancer + from ._models_py3 import LoadBalancerSku + from ._models_py3 import LoadBalancingRule + from ._models_py3 import LocalNetworkGateway + from ._models_py3 import LogSpecification + from ._models_py3 import ManagedRuleGroupOverride + from ._models_py3 import ManagedRuleOverride + from ._models_py3 import ManagedRulesDefinition + from ._models_py3 import ManagedRuleSet + from ._models_py3 import ManagedServiceIdentity + from ._models_py3 import ManagedServiceIdentityUserAssignedIdentitiesValue + from ._models_py3 import MatchCondition + from ._models_py3 import MatchedRule + from ._models_py3 import MatchVariable + from ._models_py3 import MetricSpecification + from ._models_py3 import NatGateway + from ._models_py3 import NatGatewaySku + from ._models_py3 import NetworkConfigurationDiagnosticParameters + from ._models_py3 import NetworkConfigurationDiagnosticProfile + from ._models_py3 import NetworkConfigurationDiagnosticResponse + from ._models_py3 import NetworkConfigurationDiagnosticResult + from ._models_py3 import NetworkIntentPolicy + from ._models_py3 import NetworkIntentPolicyConfiguration + from ._models_py3 import NetworkInterface + from ._models_py3 import NetworkInterfaceAssociation + from ._models_py3 import NetworkInterfaceDnsSettings + from ._models_py3 import NetworkInterfaceIPConfiguration + from ._models_py3 import NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties + from ._models_py3 import NetworkInterfaceTapConfiguration + from ._models_py3 import NetworkProfile + from ._models_py3 import NetworkRuleCondition + from ._models_py3 import NetworkSecurityGroup + from ._models_py3 import NetworkSecurityGroupResult + from ._models_py3 import NetworkSecurityRulesEvaluationResult + from ._models_py3 import NetworkWatcher + from ._models_py3 import NextHopParameters + from ._models_py3 import NextHopResult + from ._models_py3 import Operation + from ._models_py3 import OperationDisplay + from ._models_py3 import OperationPropertiesFormatServiceSpecification + from ._models_py3 import OutboundRule + from ._models_py3 import OwaspCrsExclusionEntry + from ._models_py3 import P2SConnectionConfiguration + from ._models_py3 import P2SVpnConnectionHealth + from ._models_py3 import P2SVpnConnectionHealthRequest + from ._models_py3 import P2SVpnGateway + from ._models_py3 import P2SVpnProfileParameters + from ._models_py3 import PacketCapture + from ._models_py3 import PacketCaptureFilter + from ._models_py3 import PacketCaptureParameters + from ._models_py3 import PacketCaptureQueryStatusResult + from ._models_py3 import PacketCaptureResult + from ._models_py3 import PacketCaptureStorageLocation + from ._models_py3 import PatchRouteFilter + from ._models_py3 import PatchRouteFilterRule + from ._models_py3 import PeerExpressRouteCircuitConnection + from ._models_py3 import PolicySettings + from ._models_py3 import PrepareNetworkPoliciesRequest + from ._models_py3 import PrivateEndpoint + from ._models_py3 import PrivateEndpointConnection + from ._models_py3 import PrivateLinkService + from ._models_py3 import PrivateLinkServiceConnection + from ._models_py3 import PrivateLinkServiceConnectionState + from ._models_py3 import PrivateLinkServiceIpConfiguration + from ._models_py3 import PrivateLinkServicePropertiesAutoApproval + from ._models_py3 import PrivateLinkServicePropertiesVisibility + from ._models_py3 import PrivateLinkServiceVisibility + from ._models_py3 import Probe + from ._models_py3 import ProtocolConfiguration + from ._models_py3 import ProtocolCustomSettingsFormat + from ._models_py3 import PublicIPAddress + from ._models_py3 import PublicIPAddressDnsSettings + from ._models_py3 import PublicIPAddressSku + from ._models_py3 import PublicIPPrefix + from ._models_py3 import PublicIPPrefixSku + from ._models_py3 import QueryTroubleshootingParameters + from ._models_py3 import ReferencedPublicIpAddress + from ._models_py3 import Resource + from ._models_py3 import ResourceNavigationLink + from ._models_py3 import ResourceNavigationLinksListResult + from ._models_py3 import ResourceSet + from ._models_py3 import RetentionPolicyParameters + from ._models_py3 import Route + from ._models_py3 import RouteFilter + from ._models_py3 import RouteFilterRule + from ._models_py3 import RouteTable + from ._models_py3 import SecurityGroupNetworkInterface + from ._models_py3 import SecurityGroupViewParameters + from ._models_py3 import SecurityGroupViewResult + from ._models_py3 import SecurityRule + from ._models_py3 import SecurityRuleAssociations + from ._models_py3 import ServiceAssociationLink + from ._models_py3 import ServiceAssociationLinksListResult + from ._models_py3 import ServiceEndpointPolicy + from ._models_py3 import ServiceEndpointPolicyDefinition + from ._models_py3 import ServiceEndpointPropertiesFormat + from ._models_py3 import ServiceTagInformation + from ._models_py3 import ServiceTagInformationPropertiesFormat + from ._models_py3 import ServiceTagsListResult + from ._models_py3 import Subnet + from ._models_py3 import SubnetAssociation + from ._models_py3 import SubResource + from ._models_py3 import TagsObject + from ._models_py3 import Topology + from ._models_py3 import TopologyAssociation + from ._models_py3 import TopologyParameters + from ._models_py3 import TopologyResource + from ._models_py3 import TrafficAnalyticsConfigurationProperties + from ._models_py3 import TrafficAnalyticsProperties + from ._models_py3 import TrafficSelectorPolicy + from ._models_py3 import TroubleshootingDetails + from ._models_py3 import TroubleshootingParameters + from ._models_py3 import TroubleshootingRecommendedActions + from ._models_py3 import TroubleshootingResult + from ._models_py3 import TunnelConnectionHealth + from ._models_py3 import UnprepareNetworkPoliciesRequest + from ._models_py3 import Usage + from ._models_py3 import UsageName + from ._models_py3 import VerificationIPFlowParameters + from ._models_py3 import VerificationIPFlowResult + from ._models_py3 import VirtualHub + from ._models_py3 import VirtualHubId + from ._models_py3 import VirtualHubRoute + from ._models_py3 import VirtualHubRouteTable + from ._models_py3 import VirtualHubRouteTableV2 + from ._models_py3 import VirtualHubRouteV2 + from ._models_py3 import VirtualNetwork + from ._models_py3 import VirtualNetworkBgpCommunities + from ._models_py3 import VirtualNetworkConnectionGatewayReference + from ._models_py3 import VirtualNetworkGateway + from ._models_py3 import VirtualNetworkGatewayConnection + from ._models_py3 import VirtualNetworkGatewayConnectionListEntity + from ._models_py3 import VirtualNetworkGatewayIPConfiguration + from ._models_py3 import VirtualNetworkGatewaySku + from ._models_py3 import VirtualNetworkPeering + from ._models_py3 import VirtualNetworkTap + from ._models_py3 import VirtualNetworkUsage + from ._models_py3 import VirtualNetworkUsageName + from ._models_py3 import VirtualRouter + from ._models_py3 import VirtualRouterPeering + from ._models_py3 import VirtualWAN + from ._models_py3 import VirtualWanSecurityProvider + from ._models_py3 import VirtualWanSecurityProviders + from ._models_py3 import VirtualWanVpnProfileParameters + from ._models_py3 import VpnClientConfiguration + from ._models_py3 import VpnClientConnectionHealth + from ._models_py3 import VpnClientConnectionHealthDetail + from ._models_py3 import VpnClientConnectionHealthDetailListResult + from ._models_py3 import VpnClientIPsecParameters + from ._models_py3 import VpnClientParameters + from ._models_py3 import VpnClientRevokedCertificate + from ._models_py3 import VpnClientRootCertificate + from ._models_py3 import VpnConnection + from ._models_py3 import VpnDeviceScriptParameters + from ._models_py3 import VpnGateway + from ._models_py3 import VpnLinkBgpSettings + from ._models_py3 import VpnLinkProviderProperties + from ._models_py3 import VpnPacketCaptureStartParameters + from ._models_py3 import VpnPacketCaptureStopParameters + from ._models_py3 import VpnProfileResponse + from ._models_py3 import VpnServerConfigRadiusClientRootCertificate + from ._models_py3 import VpnServerConfigRadiusServerRootCertificate + from ._models_py3 import VpnServerConfiguration + from ._models_py3 import VpnServerConfigurationsResponse + from ._models_py3 import VpnServerConfigVpnClientRevokedCertificate + from ._models_py3 import VpnServerConfigVpnClientRootCertificate + from ._models_py3 import VpnSite + from ._models_py3 import VpnSiteId + from ._models_py3 import VpnSiteLink + from ._models_py3 import VpnSiteLinkConnection + from ._models_py3 import WebApplicationFirewallCustomRule + from ._models_py3 import WebApplicationFirewallPolicy +except (SyntaxError, ImportError): + from ._models import AadAuthenticationParameters + from ._models import AddressSpace + from ._models import ApplicationGateway + from ._models import ApplicationGatewayAuthenticationCertificate + from ._models import ApplicationGatewayAutoscaleConfiguration + from ._models import ApplicationGatewayAvailableSslOptions + from ._models import ApplicationGatewayAvailableWafRuleSetsResult + from ._models import ApplicationGatewayBackendAddress + from ._models import ApplicationGatewayBackendAddressPool + from ._models import ApplicationGatewayBackendHealth + from ._models import ApplicationGatewayBackendHealthHttpSettings + from ._models import ApplicationGatewayBackendHealthOnDemand + from ._models import ApplicationGatewayBackendHealthPool + from ._models import ApplicationGatewayBackendHealthServer + from ._models import ApplicationGatewayBackendHttpSettings + from ._models import ApplicationGatewayConnectionDraining + from ._models import ApplicationGatewayCustomError + from ._models import ApplicationGatewayFirewallDisabledRuleGroup + from ._models import ApplicationGatewayFirewallExclusion + from ._models import ApplicationGatewayFirewallRule + from ._models import ApplicationGatewayFirewallRuleGroup + from ._models import ApplicationGatewayFirewallRuleSet + from ._models import ApplicationGatewayFrontendIPConfiguration + from ._models import ApplicationGatewayFrontendPort + from ._models import ApplicationGatewayHeaderConfiguration + from ._models import ApplicationGatewayHttpListener + from ._models import ApplicationGatewayIPConfiguration + from ._models import ApplicationGatewayOnDemandProbe + from ._models import ApplicationGatewayPathRule + from ._models import ApplicationGatewayProbe + from ._models import ApplicationGatewayProbeHealthResponseMatch + from ._models import ApplicationGatewayRedirectConfiguration + from ._models import ApplicationGatewayRequestRoutingRule + from ._models import ApplicationGatewayRewriteRule + from ._models import ApplicationGatewayRewriteRuleActionSet + from ._models import ApplicationGatewayRewriteRuleCondition + from ._models import ApplicationGatewayRewriteRuleSet + from ._models import ApplicationGatewaySku + from ._models import ApplicationGatewaySslCertificate + from ._models import ApplicationGatewaySslPolicy + from ._models import ApplicationGatewaySslPredefinedPolicy + from ._models import ApplicationGatewayTrustedRootCertificate + from ._models import ApplicationGatewayUrlPathMap + from ._models import ApplicationGatewayWebApplicationFirewallConfiguration + from ._models import ApplicationRuleCondition + from ._models import ApplicationSecurityGroup + from ._models import AutoApprovedPrivateLinkService + from ._models import Availability + from ._models import AvailableDelegation + from ._models import AvailablePrivateEndpointType + from ._models import AvailableProvidersList + from ._models import AvailableProvidersListCity + from ._models import AvailableProvidersListCountry + from ._models import AvailableProvidersListParameters + from ._models import AvailableProvidersListState + from ._models import AvailableServiceAlias + from ._models import AzureAsyncOperationResult + from ._models import AzureFirewall + from ._models import AzureFirewallApplicationRule + from ._models import AzureFirewallApplicationRuleCollection + from ._models import AzureFirewallApplicationRuleProtocol + from ._models import AzureFirewallFqdnTag + from ._models import AzureFirewallIPConfiguration + from ._models import AzureFirewallNatRCAction + from ._models import AzureFirewallNatRule + from ._models import AzureFirewallNatRuleCollection + from ._models import AzureFirewallNetworkRule + from ._models import AzureFirewallNetworkRuleCollection + from ._models import AzureFirewallPublicIPAddress + from ._models import AzureFirewallRCAction + from ._models import AzureFirewallSku + from ._models import AzureReachabilityReport + from ._models import AzureReachabilityReportItem + from ._models import AzureReachabilityReportLatencyInfo + from ._models import AzureReachabilityReportLocation + from ._models import AzureReachabilityReportParameters + from ._models import BackendAddressPool + from ._models import BastionHost + from ._models import BastionHostIPConfiguration + from ._models import BGPCommunity + from ._models import BgpPeerStatus + from ._models import BgpPeerStatusListResult + from ._models import BgpServiceCommunity + from ._models import BgpSettings + from ._models import CheckPrivateLinkServiceVisibilityRequest + from ._models import ConnectionMonitor + from ._models import ConnectionMonitorDestination + from ._models import ConnectionMonitorParameters + from ._models import ConnectionMonitorQueryResult + from ._models import ConnectionMonitorResult + from ._models import ConnectionMonitorSource + from ._models import ConnectionResetSharedKey + from ._models import ConnectionSharedKey + from ._models import ConnectionStateSnapshot + from ._models import ConnectivityDestination + from ._models import ConnectivityHop + from ._models import ConnectivityInformation + from ._models import ConnectivityIssue + from ._models import ConnectivityParameters + from ._models import ConnectivitySource + from ._models import Container + from ._models import ContainerNetworkInterface + from ._models import ContainerNetworkInterfaceConfiguration + from ._models import ContainerNetworkInterfaceIpConfiguration + from ._models import DdosCustomPolicy + from ._models import DdosProtectionPlan + from ._models import DdosSettings + from ._models import Delegation + from ._models import DeviceProperties + from ._models import DhcpOptions + from ._models import Dimension + from ._models import DnsNameAvailabilityResult + from ._models import EffectiveNetworkSecurityGroup + from ._models import EffectiveNetworkSecurityGroupAssociation + from ._models import EffectiveNetworkSecurityGroupListResult + from ._models import EffectiveNetworkSecurityRule + from ._models import EffectiveRoute + from ._models import EffectiveRouteListResult + from ._models import EndpointServiceResult + from ._models import Error, ErrorException + from ._models import ErrorDetails + from ._models import ErrorResponse, ErrorResponseException + from ._models import EvaluatedNetworkSecurityGroup + from ._models import ExpressRouteCircuit + from ._models import ExpressRouteCircuitArpTable + from ._models import ExpressRouteCircuitAuthorization + from ._models import ExpressRouteCircuitConnection + from ._models import ExpressRouteCircuitPeering + from ._models import ExpressRouteCircuitPeeringConfig + from ._models import ExpressRouteCircuitPeeringId + from ._models import ExpressRouteCircuitReference + from ._models import ExpressRouteCircuitRoutesTable + from ._models import ExpressRouteCircuitRoutesTableSummary + from ._models import ExpressRouteCircuitsArpTableListResult + from ._models import ExpressRouteCircuitServiceProviderProperties + from ._models import ExpressRouteCircuitSku + from ._models import ExpressRouteCircuitsRoutesTableListResult + from ._models import ExpressRouteCircuitsRoutesTableSummaryListResult + from ._models import ExpressRouteCircuitStats + from ._models import ExpressRouteConnection + from ._models import ExpressRouteConnectionId + from ._models import ExpressRouteConnectionList + from ._models import ExpressRouteCrossConnection + from ._models import ExpressRouteCrossConnectionPeering + from ._models import ExpressRouteCrossConnectionRoutesTableSummary + from ._models import ExpressRouteCrossConnectionsRoutesTableSummaryListResult + from ._models import ExpressRouteGateway + from ._models import ExpressRouteGatewayList + from ._models import ExpressRouteGatewayPropertiesAutoScaleConfiguration + from ._models import ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds + from ._models import ExpressRouteLink + from ._models import ExpressRouteLinkMacSecConfig + from ._models import ExpressRoutePort + from ._models import ExpressRoutePortsLocation + from ._models import ExpressRoutePortsLocationBandwidths + from ._models import ExpressRouteServiceProvider + from ._models import ExpressRouteServiceProviderBandwidthsOffered + from ._models import FirewallPolicy + from ._models import FirewallPolicyFilterRule + from ._models import FirewallPolicyFilterRuleAction + from ._models import FirewallPolicyNatRule + from ._models import FirewallPolicyNatRuleAction + from ._models import FirewallPolicyRule + from ._models import FirewallPolicyRuleCondition + from ._models import FirewallPolicyRuleConditionApplicationProtocol + from ._models import FirewallPolicyRuleGroup + from ._models import FlowLogFormatParameters + from ._models import FlowLogInformation + from ._models import FlowLogStatusParameters + from ._models import FrontendIPConfiguration + from ._models import GatewayRoute + from ._models import GatewayRouteListResult + from ._models import GetVpnSitesConfigurationRequest + from ._models import HTTPConfiguration + from ._models import HTTPHeader + from ._models import HubIPAddresses + from ._models import HubVirtualNetworkConnection + from ._models import InboundNatPool + from ._models import InboundNatRule + from ._models import IPAddressAvailabilityResult + from ._models import IPConfiguration + from ._models import IPConfigurationProfile + from ._models import IpGroup + from ._models import IpsecPolicy + from ._models import IpTag + from ._models import Ipv6ExpressRouteCircuitPeeringConfig + from ._models import LoadBalancer + from ._models import LoadBalancerSku + from ._models import LoadBalancingRule + from ._models import LocalNetworkGateway + from ._models import LogSpecification + from ._models import ManagedRuleGroupOverride + from ._models import ManagedRuleOverride + from ._models import ManagedRulesDefinition + from ._models import ManagedRuleSet + from ._models import ManagedServiceIdentity + from ._models import ManagedServiceIdentityUserAssignedIdentitiesValue + from ._models import MatchCondition + from ._models import MatchedRule + from ._models import MatchVariable + from ._models import MetricSpecification + from ._models import NatGateway + from ._models import NatGatewaySku + from ._models import NetworkConfigurationDiagnosticParameters + from ._models import NetworkConfigurationDiagnosticProfile + from ._models import NetworkConfigurationDiagnosticResponse + from ._models import NetworkConfigurationDiagnosticResult + from ._models import NetworkIntentPolicy + from ._models import NetworkIntentPolicyConfiguration + from ._models import NetworkInterface + from ._models import NetworkInterfaceAssociation + from ._models import NetworkInterfaceDnsSettings + from ._models import NetworkInterfaceIPConfiguration + from ._models import NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties + from ._models import NetworkInterfaceTapConfiguration + from ._models import NetworkProfile + from ._models import NetworkRuleCondition + from ._models import NetworkSecurityGroup + from ._models import NetworkSecurityGroupResult + from ._models import NetworkSecurityRulesEvaluationResult + from ._models import NetworkWatcher + from ._models import NextHopParameters + from ._models import NextHopResult + from ._models import Operation + from ._models import OperationDisplay + from ._models import OperationPropertiesFormatServiceSpecification + from ._models import OutboundRule + from ._models import OwaspCrsExclusionEntry + from ._models import P2SConnectionConfiguration + from ._models import P2SVpnConnectionHealth + from ._models import P2SVpnConnectionHealthRequest + from ._models import P2SVpnGateway + from ._models import P2SVpnProfileParameters + from ._models import PacketCapture + from ._models import PacketCaptureFilter + from ._models import PacketCaptureParameters + from ._models import PacketCaptureQueryStatusResult + from ._models import PacketCaptureResult + from ._models import PacketCaptureStorageLocation + from ._models import PatchRouteFilter + from ._models import PatchRouteFilterRule + from ._models import PeerExpressRouteCircuitConnection + from ._models import PolicySettings + from ._models import PrepareNetworkPoliciesRequest + from ._models import PrivateEndpoint + from ._models import PrivateEndpointConnection + from ._models import PrivateLinkService + from ._models import PrivateLinkServiceConnection + from ._models import PrivateLinkServiceConnectionState + from ._models import PrivateLinkServiceIpConfiguration + from ._models import PrivateLinkServicePropertiesAutoApproval + from ._models import PrivateLinkServicePropertiesVisibility + from ._models import PrivateLinkServiceVisibility + from ._models import Probe + from ._models import ProtocolConfiguration + from ._models import ProtocolCustomSettingsFormat + from ._models import PublicIPAddress + from ._models import PublicIPAddressDnsSettings + from ._models import PublicIPAddressSku + from ._models import PublicIPPrefix + from ._models import PublicIPPrefixSku + from ._models import QueryTroubleshootingParameters + from ._models import ReferencedPublicIpAddress + from ._models import Resource + from ._models import ResourceNavigationLink + from ._models import ResourceNavigationLinksListResult + from ._models import ResourceSet + from ._models import RetentionPolicyParameters + from ._models import Route + from ._models import RouteFilter + from ._models import RouteFilterRule + from ._models import RouteTable + from ._models import SecurityGroupNetworkInterface + from ._models import SecurityGroupViewParameters + from ._models import SecurityGroupViewResult + from ._models import SecurityRule + from ._models import SecurityRuleAssociations + from ._models import ServiceAssociationLink + from ._models import ServiceAssociationLinksListResult + from ._models import ServiceEndpointPolicy + from ._models import ServiceEndpointPolicyDefinition + from ._models import ServiceEndpointPropertiesFormat + from ._models import ServiceTagInformation + from ._models import ServiceTagInformationPropertiesFormat + from ._models import ServiceTagsListResult + from ._models import Subnet + from ._models import SubnetAssociation + from ._models import SubResource + from ._models import TagsObject + from ._models import Topology + from ._models import TopologyAssociation + from ._models import TopologyParameters + from ._models import TopologyResource + from ._models import TrafficAnalyticsConfigurationProperties + from ._models import TrafficAnalyticsProperties + from ._models import TrafficSelectorPolicy + from ._models import TroubleshootingDetails + from ._models import TroubleshootingParameters + from ._models import TroubleshootingRecommendedActions + from ._models import TroubleshootingResult + from ._models import TunnelConnectionHealth + from ._models import UnprepareNetworkPoliciesRequest + from ._models import Usage + from ._models import UsageName + from ._models import VerificationIPFlowParameters + from ._models import VerificationIPFlowResult + from ._models import VirtualHub + from ._models import VirtualHubId + from ._models import VirtualHubRoute + from ._models import VirtualHubRouteTable + from ._models import VirtualHubRouteTableV2 + from ._models import VirtualHubRouteV2 + from ._models import VirtualNetwork + from ._models import VirtualNetworkBgpCommunities + from ._models import VirtualNetworkConnectionGatewayReference + from ._models import VirtualNetworkGateway + from ._models import VirtualNetworkGatewayConnection + from ._models import VirtualNetworkGatewayConnectionListEntity + from ._models import VirtualNetworkGatewayIPConfiguration + from ._models import VirtualNetworkGatewaySku + from ._models import VirtualNetworkPeering + from ._models import VirtualNetworkTap + from ._models import VirtualNetworkUsage + from ._models import VirtualNetworkUsageName + from ._models import VirtualRouter + from ._models import VirtualRouterPeering + from ._models import VirtualWAN + from ._models import VirtualWanSecurityProvider + from ._models import VirtualWanSecurityProviders + from ._models import VirtualWanVpnProfileParameters + from ._models import VpnClientConfiguration + from ._models import VpnClientConnectionHealth + from ._models import VpnClientConnectionHealthDetail + from ._models import VpnClientConnectionHealthDetailListResult + from ._models import VpnClientIPsecParameters + from ._models import VpnClientParameters + from ._models import VpnClientRevokedCertificate + from ._models import VpnClientRootCertificate + from ._models import VpnConnection + from ._models import VpnDeviceScriptParameters + from ._models import VpnGateway + from ._models import VpnLinkBgpSettings + from ._models import VpnLinkProviderProperties + from ._models import VpnPacketCaptureStartParameters + from ._models import VpnPacketCaptureStopParameters + from ._models import VpnProfileResponse + from ._models import VpnServerConfigRadiusClientRootCertificate + from ._models import VpnServerConfigRadiusServerRootCertificate + from ._models import VpnServerConfiguration + from ._models import VpnServerConfigurationsResponse + from ._models import VpnServerConfigVpnClientRevokedCertificate + from ._models import VpnServerConfigVpnClientRootCertificate + from ._models import VpnSite + from ._models import VpnSiteId + from ._models import VpnSiteLink + from ._models import VpnSiteLinkConnection + from ._models import WebApplicationFirewallCustomRule + from ._models import WebApplicationFirewallPolicy +from ._paged_models import ApplicationGatewayPaged +from ._paged_models import ApplicationGatewaySslPredefinedPolicyPaged +from ._paged_models import ApplicationSecurityGroupPaged +from ._paged_models import AutoApprovedPrivateLinkServicePaged +from ._paged_models import AvailableDelegationPaged +from ._paged_models import AvailablePrivateEndpointTypePaged +from ._paged_models import AvailableServiceAliasPaged +from ._paged_models import AzureFirewallFqdnTagPaged +from ._paged_models import AzureFirewallPaged +from ._paged_models import BackendAddressPoolPaged +from ._paged_models import BastionHostPaged +from ._paged_models import BgpServiceCommunityPaged +from ._paged_models import ConnectionMonitorResultPaged +from ._paged_models import DdosProtectionPlanPaged +from ._paged_models import EndpointServiceResultPaged +from ._paged_models import ExpressRouteCircuitAuthorizationPaged +from ._paged_models import ExpressRouteCircuitConnectionPaged +from ._paged_models import ExpressRouteCircuitPaged +from ._paged_models import ExpressRouteCircuitPeeringPaged +from ._paged_models import ExpressRouteCrossConnectionPaged +from ._paged_models import ExpressRouteCrossConnectionPeeringPaged +from ._paged_models import ExpressRouteLinkPaged +from ._paged_models import ExpressRoutePortPaged +from ._paged_models import ExpressRoutePortsLocationPaged +from ._paged_models import ExpressRouteServiceProviderPaged +from ._paged_models import FirewallPolicyPaged +from ._paged_models import FirewallPolicyRuleGroupPaged +from ._paged_models import FrontendIPConfigurationPaged +from ._paged_models import HubVirtualNetworkConnectionPaged +from ._paged_models import InboundNatRulePaged +from ._paged_models import IpGroupPaged +from ._paged_models import LoadBalancerPaged +from ._paged_models import LoadBalancingRulePaged +from ._paged_models import LocalNetworkGatewayPaged +from ._paged_models import NatGatewayPaged +from ._paged_models import NetworkInterfaceIPConfigurationPaged +from ._paged_models import NetworkInterfacePaged +from ._paged_models import NetworkInterfaceTapConfigurationPaged +from ._paged_models import NetworkProfilePaged +from ._paged_models import NetworkSecurityGroupPaged +from ._paged_models import NetworkWatcherPaged +from ._paged_models import OperationPaged +from ._paged_models import OutboundRulePaged +from ._paged_models import P2SVpnGatewayPaged +from ._paged_models import PacketCaptureResultPaged +from ._paged_models import PeerExpressRouteCircuitConnectionPaged +from ._paged_models import PrivateEndpointConnectionPaged +from ._paged_models import PrivateEndpointPaged +from ._paged_models import PrivateLinkServicePaged +from ._paged_models import ProbePaged +from ._paged_models import PublicIPAddressPaged +from ._paged_models import PublicIPPrefixPaged +from ._paged_models import RouteFilterPaged +from ._paged_models import RouteFilterRulePaged +from ._paged_models import RoutePaged +from ._paged_models import RouteTablePaged +from ._paged_models import SecurityRulePaged +from ._paged_models import ServiceEndpointPolicyDefinitionPaged +from ._paged_models import ServiceEndpointPolicyPaged +from ._paged_models import SubnetPaged +from ._paged_models import UsagePaged +from ._paged_models import VirtualHubPaged +from ._paged_models import VirtualHubRouteTableV2Paged +from ._paged_models import VirtualNetworkGatewayConnectionListEntityPaged +from ._paged_models import VirtualNetworkGatewayConnectionPaged +from ._paged_models import VirtualNetworkGatewayPaged +from ._paged_models import VirtualNetworkPaged +from ._paged_models import VirtualNetworkPeeringPaged +from ._paged_models import VirtualNetworkTapPaged +from ._paged_models import VirtualNetworkUsagePaged +from ._paged_models import VirtualRouterPaged +from ._paged_models import VirtualRouterPeeringPaged +from ._paged_models import VirtualWANPaged +from ._paged_models import VpnConnectionPaged +from ._paged_models import VpnGatewayPaged +from ._paged_models import VpnServerConfigurationPaged +from ._paged_models import VpnSiteLinkConnectionPaged +from ._paged_models import VpnSiteLinkPaged +from ._paged_models import VpnSitePaged +from ._paged_models import WebApplicationFirewallPolicyPaged +from ._network_management_client_enums import ( + ApplicationGatewayProtocol, + ProvisioningState, + IPAllocationMethod, + IPVersion, + SecurityRuleProtocol, + SecurityRuleAccess, + SecurityRuleDirection, + RouteNextHopType, + PublicIPAddressSkuName, + DdosSettingsProtectionCoverage, + TransportProtocol, + ApplicationGatewayCookieBasedAffinity, + ApplicationGatewayBackendHealthServerHealth, + ApplicationGatewaySkuName, + ApplicationGatewayTier, + ApplicationGatewaySslProtocol, + ApplicationGatewaySslPolicyType, + ApplicationGatewaySslPolicyName, + ApplicationGatewaySslCipherSuite, + ApplicationGatewayCustomErrorStatusCode, + ApplicationGatewayRequestRoutingRuleType, + ApplicationGatewayRedirectType, + ApplicationGatewayOperationalState, + ApplicationGatewayFirewallMode, + ResourceIdentityType, + AzureFirewallRCActionType, + AzureFirewallApplicationRuleProtocolType, + AzureFirewallNatRCActionType, + AzureFirewallNetworkRuleProtocol, + AzureFirewallThreatIntelMode, + AzureFirewallSkuName, + AzureFirewallSkuTier, + DdosCustomPolicyProtocol, + DdosCustomPolicyTriggerSensitivityOverride, + AuthorizationUseStatus, + ExpressRouteCircuitPeeringAdvertisedPublicPrefixState, + ExpressRouteCircuitPeeringState, + ExpressRoutePeeringType, + ExpressRoutePeeringState, + CircuitConnectionStatus, + ExpressRouteCircuitSkuTier, + ExpressRouteCircuitSkuFamily, + ServiceProviderProvisioningState, + ExpressRouteLinkMacSecCipher, + ExpressRouteLinkConnectorType, + ExpressRouteLinkAdminState, + ExpressRoutePortsEncapsulation, + FirewallPolicyNatRuleActionType, + FirewallPolicyFilterRuleActionType, + FirewallPolicyRuleConditionApplicationProtocolType, + FirewallPolicyRuleConditionNetworkProtocol, + LoadBalancerSkuName, + LoadDistribution, + ProbeProtocol, + LoadBalancerOutboundRuleProtocol, + NatGatewaySkuName, + NetworkOperationStatus, + Access, + AuthenticationMethod, + EffectiveSecurityRuleProtocol, + EffectiveRouteSource, + EffectiveRouteState, + AssociationType, + Direction, + IpFlowProtocol, + NextHopType, + PcProtocol, + PcStatus, + PcError, + FlowLogFormatType, + Protocol, + HTTPMethod, + Origin, + Severity, + IssueType, + ConnectionStatus, + VerbosityLevel, + ConnectionState, + EvaluationState, + ConnectionMonitorSourceStatus, + PublicIPPrefixSkuName, + VirtualNetworkPeeringState, + VirtualNetworkGatewayType, + VpnType, + VpnGatewayGeneration, + VirtualNetworkGatewaySkuName, + VirtualNetworkGatewaySkuTier, + VpnClientProtocol, + IpsecEncryption, + IpsecIntegrity, + IkeEncryption, + IkeIntegrity, + DhGroup, + PfsGroup, + BgpPeerState, + ProcessorArchitecture, + VirtualNetworkGatewayConnectionStatus, + VirtualNetworkGatewayConnectionType, + VirtualNetworkGatewayConnectionProtocol, + OfficeTrafficCategory, + VpnConnectionStatus, + VirtualWanSecurityProviderType, + TunnelConnectionStatus, + HubVirtualNetworkConnectionStatus, + VpnGatewayTunnelingProtocol, + VpnAuthenticationType, + WebApplicationFirewallEnabledState, + WebApplicationFirewallMode, + WebApplicationFirewallRuleType, + WebApplicationFirewallMatchVariable, + WebApplicationFirewallOperator, + WebApplicationFirewallTransform, + WebApplicationFirewallAction, + WebApplicationFirewallPolicyResourceState, + OwaspCrsExclusionEntryMatchVariable, + OwaspCrsExclusionEntrySelectorMatchOperator, + ManagedRuleEnabledState, +) + +__all__ = [ + 'AadAuthenticationParameters', + 'AddressSpace', + 'ApplicationGateway', + 'ApplicationGatewayAuthenticationCertificate', + 'ApplicationGatewayAutoscaleConfiguration', + 'ApplicationGatewayAvailableSslOptions', + 'ApplicationGatewayAvailableWafRuleSetsResult', + 'ApplicationGatewayBackendAddress', + 'ApplicationGatewayBackendAddressPool', + 'ApplicationGatewayBackendHealth', + 'ApplicationGatewayBackendHealthHttpSettings', + 'ApplicationGatewayBackendHealthOnDemand', + 'ApplicationGatewayBackendHealthPool', + 'ApplicationGatewayBackendHealthServer', + 'ApplicationGatewayBackendHttpSettings', + 'ApplicationGatewayConnectionDraining', + 'ApplicationGatewayCustomError', + 'ApplicationGatewayFirewallDisabledRuleGroup', + 'ApplicationGatewayFirewallExclusion', + 'ApplicationGatewayFirewallRule', + 'ApplicationGatewayFirewallRuleGroup', + 'ApplicationGatewayFirewallRuleSet', + 'ApplicationGatewayFrontendIPConfiguration', + 'ApplicationGatewayFrontendPort', + 'ApplicationGatewayHeaderConfiguration', + 'ApplicationGatewayHttpListener', + 'ApplicationGatewayIPConfiguration', + 'ApplicationGatewayOnDemandProbe', + 'ApplicationGatewayPathRule', + 'ApplicationGatewayProbe', + 'ApplicationGatewayProbeHealthResponseMatch', + 'ApplicationGatewayRedirectConfiguration', + 'ApplicationGatewayRequestRoutingRule', + 'ApplicationGatewayRewriteRule', + 'ApplicationGatewayRewriteRuleActionSet', + 'ApplicationGatewayRewriteRuleCondition', + 'ApplicationGatewayRewriteRuleSet', + 'ApplicationGatewaySku', + 'ApplicationGatewaySslCertificate', + 'ApplicationGatewaySslPolicy', + 'ApplicationGatewaySslPredefinedPolicy', + 'ApplicationGatewayTrustedRootCertificate', + 'ApplicationGatewayUrlPathMap', + 'ApplicationGatewayWebApplicationFirewallConfiguration', + 'ApplicationRuleCondition', + 'ApplicationSecurityGroup', + 'AutoApprovedPrivateLinkService', + 'Availability', + 'AvailableDelegation', + 'AvailablePrivateEndpointType', + 'AvailableProvidersList', + 'AvailableProvidersListCity', + 'AvailableProvidersListCountry', + 'AvailableProvidersListParameters', + 'AvailableProvidersListState', + 'AvailableServiceAlias', + 'AzureAsyncOperationResult', + 'AzureFirewall', + 'AzureFirewallApplicationRule', + 'AzureFirewallApplicationRuleCollection', + 'AzureFirewallApplicationRuleProtocol', + 'AzureFirewallFqdnTag', + 'AzureFirewallIPConfiguration', + 'AzureFirewallNatRCAction', + 'AzureFirewallNatRule', + 'AzureFirewallNatRuleCollection', + 'AzureFirewallNetworkRule', + 'AzureFirewallNetworkRuleCollection', + 'AzureFirewallPublicIPAddress', + 'AzureFirewallRCAction', + 'AzureFirewallSku', + 'AzureReachabilityReport', + 'AzureReachabilityReportItem', + 'AzureReachabilityReportLatencyInfo', + 'AzureReachabilityReportLocation', + 'AzureReachabilityReportParameters', + 'BackendAddressPool', + 'BastionHost', + 'BastionHostIPConfiguration', + 'BGPCommunity', + 'BgpPeerStatus', + 'BgpPeerStatusListResult', + 'BgpServiceCommunity', + 'BgpSettings', + 'CheckPrivateLinkServiceVisibilityRequest', + 'ConnectionMonitor', + 'ConnectionMonitorDestination', + 'ConnectionMonitorParameters', + 'ConnectionMonitorQueryResult', + 'ConnectionMonitorResult', + 'ConnectionMonitorSource', + 'ConnectionResetSharedKey', + 'ConnectionSharedKey', + 'ConnectionStateSnapshot', + 'ConnectivityDestination', + 'ConnectivityHop', + 'ConnectivityInformation', + 'ConnectivityIssue', + 'ConnectivityParameters', + 'ConnectivitySource', + 'Container', + 'ContainerNetworkInterface', + 'ContainerNetworkInterfaceConfiguration', + 'ContainerNetworkInterfaceIpConfiguration', + 'DdosCustomPolicy', + 'DdosProtectionPlan', + 'DdosSettings', + 'Delegation', + 'DeviceProperties', + 'DhcpOptions', + 'Dimension', + 'DnsNameAvailabilityResult', + 'EffectiveNetworkSecurityGroup', + 'EffectiveNetworkSecurityGroupAssociation', + 'EffectiveNetworkSecurityGroupListResult', + 'EffectiveNetworkSecurityRule', + 'EffectiveRoute', + 'EffectiveRouteListResult', + 'EndpointServiceResult', + 'Error', 'ErrorException', + 'ErrorDetails', + 'ErrorResponse', 'ErrorResponseException', + 'EvaluatedNetworkSecurityGroup', + 'ExpressRouteCircuit', + 'ExpressRouteCircuitArpTable', + 'ExpressRouteCircuitAuthorization', + 'ExpressRouteCircuitConnection', + 'ExpressRouteCircuitPeering', + 'ExpressRouteCircuitPeeringConfig', + 'ExpressRouteCircuitPeeringId', + 'ExpressRouteCircuitReference', + 'ExpressRouteCircuitRoutesTable', + 'ExpressRouteCircuitRoutesTableSummary', + 'ExpressRouteCircuitsArpTableListResult', + 'ExpressRouteCircuitServiceProviderProperties', + 'ExpressRouteCircuitSku', + 'ExpressRouteCircuitsRoutesTableListResult', + 'ExpressRouteCircuitsRoutesTableSummaryListResult', + 'ExpressRouteCircuitStats', + 'ExpressRouteConnection', + 'ExpressRouteConnectionId', + 'ExpressRouteConnectionList', + 'ExpressRouteCrossConnection', + 'ExpressRouteCrossConnectionPeering', + 'ExpressRouteCrossConnectionRoutesTableSummary', + 'ExpressRouteCrossConnectionsRoutesTableSummaryListResult', + 'ExpressRouteGateway', + 'ExpressRouteGatewayList', + 'ExpressRouteGatewayPropertiesAutoScaleConfiguration', + 'ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds', + 'ExpressRouteLink', + 'ExpressRouteLinkMacSecConfig', + 'ExpressRoutePort', + 'ExpressRoutePortsLocation', + 'ExpressRoutePortsLocationBandwidths', + 'ExpressRouteServiceProvider', + 'ExpressRouteServiceProviderBandwidthsOffered', + 'FirewallPolicy', + 'FirewallPolicyFilterRule', + 'FirewallPolicyFilterRuleAction', + 'FirewallPolicyNatRule', + 'FirewallPolicyNatRuleAction', + 'FirewallPolicyRule', + 'FirewallPolicyRuleCondition', + 'FirewallPolicyRuleConditionApplicationProtocol', + 'FirewallPolicyRuleGroup', + 'FlowLogFormatParameters', + 'FlowLogInformation', + 'FlowLogStatusParameters', + 'FrontendIPConfiguration', + 'GatewayRoute', + 'GatewayRouteListResult', + 'GetVpnSitesConfigurationRequest', + 'HTTPConfiguration', + 'HTTPHeader', + 'HubIPAddresses', + 'HubVirtualNetworkConnection', + 'InboundNatPool', + 'InboundNatRule', + 'IPAddressAvailabilityResult', + 'IPConfiguration', + 'IPConfigurationProfile', + 'IpGroup', + 'IpsecPolicy', + 'IpTag', + 'Ipv6ExpressRouteCircuitPeeringConfig', + 'LoadBalancer', + 'LoadBalancerSku', + 'LoadBalancingRule', + 'LocalNetworkGateway', + 'LogSpecification', + 'ManagedRuleGroupOverride', + 'ManagedRuleOverride', + 'ManagedRulesDefinition', + 'ManagedRuleSet', + 'ManagedServiceIdentity', + 'ManagedServiceIdentityUserAssignedIdentitiesValue', + 'MatchCondition', + 'MatchedRule', + 'MatchVariable', + 'MetricSpecification', + 'NatGateway', + 'NatGatewaySku', + 'NetworkConfigurationDiagnosticParameters', + 'NetworkConfigurationDiagnosticProfile', + 'NetworkConfigurationDiagnosticResponse', + 'NetworkConfigurationDiagnosticResult', + 'NetworkIntentPolicy', + 'NetworkIntentPolicyConfiguration', + 'NetworkInterface', + 'NetworkInterfaceAssociation', + 'NetworkInterfaceDnsSettings', + 'NetworkInterfaceIPConfiguration', + 'NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties', + 'NetworkInterfaceTapConfiguration', + 'NetworkProfile', + 'NetworkRuleCondition', + 'NetworkSecurityGroup', + 'NetworkSecurityGroupResult', + 'NetworkSecurityRulesEvaluationResult', + 'NetworkWatcher', + 'NextHopParameters', + 'NextHopResult', + 'Operation', + 'OperationDisplay', + 'OperationPropertiesFormatServiceSpecification', + 'OutboundRule', + 'OwaspCrsExclusionEntry', + 'P2SConnectionConfiguration', + 'P2SVpnConnectionHealth', + 'P2SVpnConnectionHealthRequest', + 'P2SVpnGateway', + 'P2SVpnProfileParameters', + 'PacketCapture', + 'PacketCaptureFilter', + 'PacketCaptureParameters', + 'PacketCaptureQueryStatusResult', + 'PacketCaptureResult', + 'PacketCaptureStorageLocation', + 'PatchRouteFilter', + 'PatchRouteFilterRule', + 'PeerExpressRouteCircuitConnection', + 'PolicySettings', + 'PrepareNetworkPoliciesRequest', + 'PrivateEndpoint', + 'PrivateEndpointConnection', + 'PrivateLinkService', + 'PrivateLinkServiceConnection', + 'PrivateLinkServiceConnectionState', + 'PrivateLinkServiceIpConfiguration', + 'PrivateLinkServicePropertiesAutoApproval', + 'PrivateLinkServicePropertiesVisibility', + 'PrivateLinkServiceVisibility', + 'Probe', + 'ProtocolConfiguration', + 'ProtocolCustomSettingsFormat', + 'PublicIPAddress', + 'PublicIPAddressDnsSettings', + 'PublicIPAddressSku', + 'PublicIPPrefix', + 'PublicIPPrefixSku', + 'QueryTroubleshootingParameters', + 'ReferencedPublicIpAddress', + 'Resource', + 'ResourceNavigationLink', + 'ResourceNavigationLinksListResult', + 'ResourceSet', + 'RetentionPolicyParameters', + 'Route', + 'RouteFilter', + 'RouteFilterRule', + 'RouteTable', + 'SecurityGroupNetworkInterface', + 'SecurityGroupViewParameters', + 'SecurityGroupViewResult', + 'SecurityRule', + 'SecurityRuleAssociations', + 'ServiceAssociationLink', + 'ServiceAssociationLinksListResult', + 'ServiceEndpointPolicy', + 'ServiceEndpointPolicyDefinition', + 'ServiceEndpointPropertiesFormat', + 'ServiceTagInformation', + 'ServiceTagInformationPropertiesFormat', + 'ServiceTagsListResult', + 'Subnet', + 'SubnetAssociation', + 'SubResource', + 'TagsObject', + 'Topology', + 'TopologyAssociation', + 'TopologyParameters', + 'TopologyResource', + 'TrafficAnalyticsConfigurationProperties', + 'TrafficAnalyticsProperties', + 'TrafficSelectorPolicy', + 'TroubleshootingDetails', + 'TroubleshootingParameters', + 'TroubleshootingRecommendedActions', + 'TroubleshootingResult', + 'TunnelConnectionHealth', + 'UnprepareNetworkPoliciesRequest', + 'Usage', + 'UsageName', + 'VerificationIPFlowParameters', + 'VerificationIPFlowResult', + 'VirtualHub', + 'VirtualHubId', + 'VirtualHubRoute', + 'VirtualHubRouteTable', + 'VirtualHubRouteTableV2', + 'VirtualHubRouteV2', + 'VirtualNetwork', + 'VirtualNetworkBgpCommunities', + 'VirtualNetworkConnectionGatewayReference', + 'VirtualNetworkGateway', + 'VirtualNetworkGatewayConnection', + 'VirtualNetworkGatewayConnectionListEntity', + 'VirtualNetworkGatewayIPConfiguration', + 'VirtualNetworkGatewaySku', + 'VirtualNetworkPeering', + 'VirtualNetworkTap', + 'VirtualNetworkUsage', + 'VirtualNetworkUsageName', + 'VirtualRouter', + 'VirtualRouterPeering', + 'VirtualWAN', + 'VirtualWanSecurityProvider', + 'VirtualWanSecurityProviders', + 'VirtualWanVpnProfileParameters', + 'VpnClientConfiguration', + 'VpnClientConnectionHealth', + 'VpnClientConnectionHealthDetail', + 'VpnClientConnectionHealthDetailListResult', + 'VpnClientIPsecParameters', + 'VpnClientParameters', + 'VpnClientRevokedCertificate', + 'VpnClientRootCertificate', + 'VpnConnection', + 'VpnDeviceScriptParameters', + 'VpnGateway', + 'VpnLinkBgpSettings', + 'VpnLinkProviderProperties', + 'VpnPacketCaptureStartParameters', + 'VpnPacketCaptureStopParameters', + 'VpnProfileResponse', + 'VpnServerConfigRadiusClientRootCertificate', + 'VpnServerConfigRadiusServerRootCertificate', + 'VpnServerConfiguration', + 'VpnServerConfigurationsResponse', + 'VpnServerConfigVpnClientRevokedCertificate', + 'VpnServerConfigVpnClientRootCertificate', + 'VpnSite', + 'VpnSiteId', + 'VpnSiteLink', + 'VpnSiteLinkConnection', + 'WebApplicationFirewallCustomRule', + 'WebApplicationFirewallPolicy', + 'ApplicationGatewayPaged', + 'ApplicationGatewaySslPredefinedPolicyPaged', + 'ApplicationSecurityGroupPaged', + 'AvailableDelegationPaged', + 'AvailableServiceAliasPaged', + 'AzureFirewallPaged', + 'AzureFirewallFqdnTagPaged', + 'BastionHostPaged', + 'DdosProtectionPlanPaged', + 'EndpointServiceResultPaged', + 'ExpressRouteCircuitAuthorizationPaged', + 'ExpressRouteCircuitPeeringPaged', + 'ExpressRouteCircuitConnectionPaged', + 'PeerExpressRouteCircuitConnectionPaged', + 'ExpressRouteCircuitPaged', + 'ExpressRouteServiceProviderPaged', + 'ExpressRouteCrossConnectionPaged', + 'ExpressRouteCrossConnectionPeeringPaged', + 'ExpressRoutePortsLocationPaged', + 'ExpressRoutePortPaged', + 'ExpressRouteLinkPaged', + 'FirewallPolicyPaged', + 'FirewallPolicyRuleGroupPaged', + 'IpGroupPaged', + 'LoadBalancerPaged', + 'BackendAddressPoolPaged', + 'FrontendIPConfigurationPaged', + 'InboundNatRulePaged', + 'LoadBalancingRulePaged', + 'OutboundRulePaged', + 'NetworkInterfacePaged', + 'ProbePaged', + 'NatGatewayPaged', + 'NetworkInterfaceIPConfigurationPaged', + 'NetworkInterfaceTapConfigurationPaged', + 'NetworkProfilePaged', + 'NetworkSecurityGroupPaged', + 'SecurityRulePaged', + 'NetworkWatcherPaged', + 'PacketCaptureResultPaged', + 'ConnectionMonitorResultPaged', + 'OperationPaged', + 'PrivateEndpointPaged', + 'AvailablePrivateEndpointTypePaged', + 'PrivateLinkServicePaged', + 'PrivateEndpointConnectionPaged', + 'AutoApprovedPrivateLinkServicePaged', + 'PublicIPAddressPaged', + 'PublicIPPrefixPaged', + 'RouteFilterPaged', + 'RouteFilterRulePaged', + 'RouteTablePaged', + 'RoutePaged', + 'BgpServiceCommunityPaged', + 'ServiceEndpointPolicyPaged', + 'ServiceEndpointPolicyDefinitionPaged', + 'UsagePaged', + 'VirtualNetworkPaged', + 'VirtualNetworkUsagePaged', + 'SubnetPaged', + 'VirtualNetworkPeeringPaged', + 'VirtualNetworkGatewayPaged', + 'VirtualNetworkGatewayConnectionListEntityPaged', + 'VirtualNetworkGatewayConnectionPaged', + 'LocalNetworkGatewayPaged', + 'VirtualNetworkTapPaged', + 'VirtualRouterPaged', + 'VirtualRouterPeeringPaged', + 'VirtualWANPaged', + 'VpnSitePaged', + 'VpnSiteLinkPaged', + 'VpnServerConfigurationPaged', + 'VirtualHubPaged', + 'HubVirtualNetworkConnectionPaged', + 'VpnGatewayPaged', + 'VpnConnectionPaged', + 'VpnSiteLinkConnectionPaged', + 'P2SVpnGatewayPaged', + 'VirtualHubRouteTableV2Paged', + 'WebApplicationFirewallPolicyPaged', + 'ApplicationGatewayProtocol', + 'ProvisioningState', + 'IPAllocationMethod', + 'IPVersion', + 'SecurityRuleProtocol', + 'SecurityRuleAccess', + 'SecurityRuleDirection', + 'RouteNextHopType', + 'PublicIPAddressSkuName', + 'DdosSettingsProtectionCoverage', + 'TransportProtocol', + 'ApplicationGatewayCookieBasedAffinity', + 'ApplicationGatewayBackendHealthServerHealth', + 'ApplicationGatewaySkuName', + 'ApplicationGatewayTier', + 'ApplicationGatewaySslProtocol', + 'ApplicationGatewaySslPolicyType', + 'ApplicationGatewaySslPolicyName', + 'ApplicationGatewaySslCipherSuite', + 'ApplicationGatewayCustomErrorStatusCode', + 'ApplicationGatewayRequestRoutingRuleType', + 'ApplicationGatewayRedirectType', + 'ApplicationGatewayOperationalState', + 'ApplicationGatewayFirewallMode', + 'ResourceIdentityType', + 'AzureFirewallRCActionType', + 'AzureFirewallApplicationRuleProtocolType', + 'AzureFirewallNatRCActionType', + 'AzureFirewallNetworkRuleProtocol', + 'AzureFirewallThreatIntelMode', + 'AzureFirewallSkuName', + 'AzureFirewallSkuTier', + 'DdosCustomPolicyProtocol', + 'DdosCustomPolicyTriggerSensitivityOverride', + 'AuthorizationUseStatus', + 'ExpressRouteCircuitPeeringAdvertisedPublicPrefixState', + 'ExpressRouteCircuitPeeringState', + 'ExpressRoutePeeringType', + 'ExpressRoutePeeringState', + 'CircuitConnectionStatus', + 'ExpressRouteCircuitSkuTier', + 'ExpressRouteCircuitSkuFamily', + 'ServiceProviderProvisioningState', + 'ExpressRouteLinkMacSecCipher', + 'ExpressRouteLinkConnectorType', + 'ExpressRouteLinkAdminState', + 'ExpressRoutePortsEncapsulation', + 'FirewallPolicyNatRuleActionType', + 'FirewallPolicyFilterRuleActionType', + 'FirewallPolicyRuleConditionApplicationProtocolType', + 'FirewallPolicyRuleConditionNetworkProtocol', + 'LoadBalancerSkuName', + 'LoadDistribution', + 'ProbeProtocol', + 'LoadBalancerOutboundRuleProtocol', + 'NatGatewaySkuName', + 'NetworkOperationStatus', + 'Access', + 'AuthenticationMethod', + 'EffectiveSecurityRuleProtocol', + 'EffectiveRouteSource', + 'EffectiveRouteState', + 'AssociationType', + 'Direction', + 'IpFlowProtocol', + 'NextHopType', + 'PcProtocol', + 'PcStatus', + 'PcError', + 'FlowLogFormatType', + 'Protocol', + 'HTTPMethod', + 'Origin', + 'Severity', + 'IssueType', + 'ConnectionStatus', + 'VerbosityLevel', + 'ConnectionState', + 'EvaluationState', + 'ConnectionMonitorSourceStatus', + 'PublicIPPrefixSkuName', + 'VirtualNetworkPeeringState', + 'VirtualNetworkGatewayType', + 'VpnType', + 'VpnGatewayGeneration', + 'VirtualNetworkGatewaySkuName', + 'VirtualNetworkGatewaySkuTier', + 'VpnClientProtocol', + 'IpsecEncryption', + 'IpsecIntegrity', + 'IkeEncryption', + 'IkeIntegrity', + 'DhGroup', + 'PfsGroup', + 'BgpPeerState', + 'ProcessorArchitecture', + 'VirtualNetworkGatewayConnectionStatus', + 'VirtualNetworkGatewayConnectionType', + 'VirtualNetworkGatewayConnectionProtocol', + 'OfficeTrafficCategory', + 'VpnConnectionStatus', + 'VirtualWanSecurityProviderType', + 'TunnelConnectionStatus', + 'HubVirtualNetworkConnectionStatus', + 'VpnGatewayTunnelingProtocol', + 'VpnAuthenticationType', + 'WebApplicationFirewallEnabledState', + 'WebApplicationFirewallMode', + 'WebApplicationFirewallRuleType', + 'WebApplicationFirewallMatchVariable', + 'WebApplicationFirewallOperator', + 'WebApplicationFirewallTransform', + 'WebApplicationFirewallAction', + 'WebApplicationFirewallPolicyResourceState', + 'OwaspCrsExclusionEntryMatchVariable', + 'OwaspCrsExclusionEntrySelectorMatchOperator', + 'ManagedRuleEnabledState', +] diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/_models.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/_models.py new file mode 100644 index 000000000000..24ea6827ff52 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/_models.py @@ -0,0 +1,16319 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model +from msrest.exceptions import HttpOperationError + + +class AadAuthenticationParameters(Model): + """AAD Vpn authentication type related parameters. + + :param aad_tenant: AAD Vpn authentication parameter AAD tenant. + :type aad_tenant: str + :param aad_audience: AAD Vpn authentication parameter AAD audience. + :type aad_audience: str + :param aad_issuer: AAD Vpn authentication parameter AAD issuer. + :type aad_issuer: str + """ + + _attribute_map = { + 'aad_tenant': {'key': 'aadTenant', 'type': 'str'}, + 'aad_audience': {'key': 'aadAudience', 'type': 'str'}, + 'aad_issuer': {'key': 'aadIssuer', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AadAuthenticationParameters, self).__init__(**kwargs) + self.aad_tenant = kwargs.get('aad_tenant', None) + self.aad_audience = kwargs.get('aad_audience', None) + self.aad_issuer = kwargs.get('aad_issuer', None) + + +class AddressSpace(Model): + """AddressSpace contains an array of IP address ranges that can be used by + subnets of the virtual network. + + :param address_prefixes: A list of address blocks reserved for this + virtual network in CIDR notation. + :type address_prefixes: list[str] + """ + + _attribute_map = { + 'address_prefixes': {'key': 'addressPrefixes', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(AddressSpace, self).__init__(**kwargs) + self.address_prefixes = kwargs.get('address_prefixes', None) + + +class Resource(Model): + """Common resource representation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(Resource, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.name = None + self.type = None + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) + + +class ApplicationGateway(Resource): + """Application gateway resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: SKU of the application gateway resource. + :type sku: ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySku + :param ssl_policy: SSL policy of the application gateway resource. + :type ssl_policy: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslPolicy + :ivar operational_state: Operational state of the application gateway + resource. Possible values include: 'Stopped', 'Starting', 'Running', + 'Stopping' + :vartype operational_state: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayOperationalState + :param gateway_ip_configurations: Subnets of the application gateway + resource. For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type gateway_ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayIPConfiguration] + :param authentication_certificates: Authentication certificates of the + application gateway resource. For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type authentication_certificates: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayAuthenticationCertificate] + :param trusted_root_certificates: Trusted Root certificates of the + application gateway resource. For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type trusted_root_certificates: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayTrustedRootCertificate] + :param ssl_certificates: SSL certificates of the application gateway + resource. For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type ssl_certificates: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslCertificate] + :param frontend_ip_configurations: Frontend IP addresses of the + application gateway resource. For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type frontend_ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayFrontendIPConfiguration] + :param frontend_ports: Frontend ports of the application gateway resource. + For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type frontend_ports: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayFrontendPort] + :param probes: Probes of the application gateway resource. + :type probes: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayProbe] + :param backend_address_pools: Backend address pool of the application + gateway resource. For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type backend_address_pools: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendAddressPool] + :param backend_http_settings_collection: Backend http settings of the + application gateway resource. For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type backend_http_settings_collection: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendHttpSettings] + :param http_listeners: Http listeners of the application gateway resource. + For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type http_listeners: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayHttpListener] + :param url_path_maps: URL path map of the application gateway resource. + For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type url_path_maps: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayUrlPathMap] + :param request_routing_rules: Request routing rules of the application + gateway resource. + :type request_routing_rules: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayRequestRoutingRule] + :param rewrite_rule_sets: Rewrite rules for the application gateway + resource. + :type rewrite_rule_sets: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayRewriteRuleSet] + :param redirect_configurations: Redirect configurations of the application + gateway resource. For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type redirect_configurations: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayRedirectConfiguration] + :param web_application_firewall_configuration: Web application firewall + configuration. + :type web_application_firewall_configuration: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayWebApplicationFirewallConfiguration + :param firewall_policy: Reference of the FirewallPolicy resource. + :type firewall_policy: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param enable_http2: Whether HTTP2 is enabled on the application gateway + resource. + :type enable_http2: bool + :param enable_fips: Whether FIPS is enabled on the application gateway + resource. + :type enable_fips: bool + :param autoscale_configuration: Autoscale Configuration. + :type autoscale_configuration: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayAutoscaleConfiguration + :ivar resource_guid: The resource GUID property of the application gateway + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the application + gateway resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param custom_error_configurations: Custom error configurations of the + application gateway resource. + :type custom_error_configurations: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayCustomError] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :param zones: A list of availability zones denoting where the resource + needs to come from. + :type zones: list[str] + :param identity: The identity of the application gateway, if configured. + :type identity: + ~azure.mgmt.network.v2019_09_01.models.ManagedServiceIdentity + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'operational_state': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'properties.sku', 'type': 'ApplicationGatewaySku'}, + 'ssl_policy': {'key': 'properties.sslPolicy', 'type': 'ApplicationGatewaySslPolicy'}, + 'operational_state': {'key': 'properties.operationalState', 'type': 'str'}, + 'gateway_ip_configurations': {'key': 'properties.gatewayIPConfigurations', 'type': '[ApplicationGatewayIPConfiguration]'}, + 'authentication_certificates': {'key': 'properties.authenticationCertificates', 'type': '[ApplicationGatewayAuthenticationCertificate]'}, + 'trusted_root_certificates': {'key': 'properties.trustedRootCertificates', 'type': '[ApplicationGatewayTrustedRootCertificate]'}, + 'ssl_certificates': {'key': 'properties.sslCertificates', 'type': '[ApplicationGatewaySslCertificate]'}, + 'frontend_ip_configurations': {'key': 'properties.frontendIPConfigurations', 'type': '[ApplicationGatewayFrontendIPConfiguration]'}, + 'frontend_ports': {'key': 'properties.frontendPorts', 'type': '[ApplicationGatewayFrontendPort]'}, + 'probes': {'key': 'properties.probes', 'type': '[ApplicationGatewayProbe]'}, + 'backend_address_pools': {'key': 'properties.backendAddressPools', 'type': '[ApplicationGatewayBackendAddressPool]'}, + 'backend_http_settings_collection': {'key': 'properties.backendHttpSettingsCollection', 'type': '[ApplicationGatewayBackendHttpSettings]'}, + 'http_listeners': {'key': 'properties.httpListeners', 'type': '[ApplicationGatewayHttpListener]'}, + 'url_path_maps': {'key': 'properties.urlPathMaps', 'type': '[ApplicationGatewayUrlPathMap]'}, + 'request_routing_rules': {'key': 'properties.requestRoutingRules', 'type': '[ApplicationGatewayRequestRoutingRule]'}, + 'rewrite_rule_sets': {'key': 'properties.rewriteRuleSets', 'type': '[ApplicationGatewayRewriteRuleSet]'}, + 'redirect_configurations': {'key': 'properties.redirectConfigurations', 'type': '[ApplicationGatewayRedirectConfiguration]'}, + 'web_application_firewall_configuration': {'key': 'properties.webApplicationFirewallConfiguration', 'type': 'ApplicationGatewayWebApplicationFirewallConfiguration'}, + 'firewall_policy': {'key': 'properties.firewallPolicy', 'type': 'SubResource'}, + 'enable_http2': {'key': 'properties.enableHttp2', 'type': 'bool'}, + 'enable_fips': {'key': 'properties.enableFips', 'type': 'bool'}, + 'autoscale_configuration': {'key': 'properties.autoscaleConfiguration', 'type': 'ApplicationGatewayAutoscaleConfiguration'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'custom_error_configurations': {'key': 'properties.customErrorConfigurations', 'type': '[ApplicationGatewayCustomError]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + 'identity': {'key': 'identity', 'type': 'ManagedServiceIdentity'}, + } + + def __init__(self, **kwargs): + super(ApplicationGateway, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.ssl_policy = kwargs.get('ssl_policy', None) + self.operational_state = None + self.gateway_ip_configurations = kwargs.get('gateway_ip_configurations', None) + self.authentication_certificates = kwargs.get('authentication_certificates', None) + self.trusted_root_certificates = kwargs.get('trusted_root_certificates', None) + self.ssl_certificates = kwargs.get('ssl_certificates', None) + self.frontend_ip_configurations = kwargs.get('frontend_ip_configurations', None) + self.frontend_ports = kwargs.get('frontend_ports', None) + self.probes = kwargs.get('probes', None) + self.backend_address_pools = kwargs.get('backend_address_pools', None) + self.backend_http_settings_collection = kwargs.get('backend_http_settings_collection', None) + self.http_listeners = kwargs.get('http_listeners', None) + self.url_path_maps = kwargs.get('url_path_maps', None) + self.request_routing_rules = kwargs.get('request_routing_rules', None) + self.rewrite_rule_sets = kwargs.get('rewrite_rule_sets', None) + self.redirect_configurations = kwargs.get('redirect_configurations', None) + self.web_application_firewall_configuration = kwargs.get('web_application_firewall_configuration', None) + self.firewall_policy = kwargs.get('firewall_policy', None) + self.enable_http2 = kwargs.get('enable_http2', None) + self.enable_fips = kwargs.get('enable_fips', None) + self.autoscale_configuration = kwargs.get('autoscale_configuration', None) + self.resource_guid = None + self.provisioning_state = None + self.custom_error_configurations = kwargs.get('custom_error_configurations', None) + self.etag = None + self.zones = kwargs.get('zones', None) + self.identity = kwargs.get('identity', None) + + +class SubResource(Model): + """Reference to another subresource. + + :param id: Resource ID. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SubResource, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + + +class ApplicationGatewayAuthenticationCertificate(SubResource): + """Authentication certificates of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param data: Certificate public data. + :type data: str + :ivar provisioning_state: The provisioning state of the authentication + certificate resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the authentication certificate that is unique within + an Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'data': {'key': 'properties.data', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayAuthenticationCertificate, self).__init__(**kwargs) + self.data = kwargs.get('data', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ApplicationGatewayAutoscaleConfiguration(Model): + """Application Gateway autoscale configuration. + + All required parameters must be populated in order to send to Azure. + + :param min_capacity: Required. Lower bound on number of Application + Gateway capacity. + :type min_capacity: int + :param max_capacity: Upper bound on number of Application Gateway + capacity. + :type max_capacity: int + """ + + _validation = { + 'min_capacity': {'required': True, 'minimum': 0}, + 'max_capacity': {'minimum': 2}, + } + + _attribute_map = { + 'min_capacity': {'key': 'minCapacity', 'type': 'int'}, + 'max_capacity': {'key': 'maxCapacity', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayAutoscaleConfiguration, self).__init__(**kwargs) + self.min_capacity = kwargs.get('min_capacity', None) + self.max_capacity = kwargs.get('max_capacity', None) + + +class ApplicationGatewayAvailableSslOptions(Resource): + """Response for ApplicationGatewayAvailableSslOptions API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param predefined_policies: List of available Ssl predefined policy. + :type predefined_policies: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param default_policy: Name of the Ssl predefined policy applied by + default to application gateway. Possible values include: + 'AppGwSslPolicy20150501', 'AppGwSslPolicy20170401', + 'AppGwSslPolicy20170401S' + :type default_policy: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslPolicyName + :param available_cipher_suites: List of available Ssl cipher suites. + :type available_cipher_suites: list[str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslCipherSuite] + :param available_protocols: List of available Ssl protocols. + :type available_protocols: list[str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslProtocol] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'predefined_policies': {'key': 'properties.predefinedPolicies', 'type': '[SubResource]'}, + 'default_policy': {'key': 'properties.defaultPolicy', 'type': 'str'}, + 'available_cipher_suites': {'key': 'properties.availableCipherSuites', 'type': '[str]'}, + 'available_protocols': {'key': 'properties.availableProtocols', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayAvailableSslOptions, self).__init__(**kwargs) + self.predefined_policies = kwargs.get('predefined_policies', None) + self.default_policy = kwargs.get('default_policy', None) + self.available_cipher_suites = kwargs.get('available_cipher_suites', None) + self.available_protocols = kwargs.get('available_protocols', None) + + +class ApplicationGatewayAvailableWafRuleSetsResult(Model): + """Response for ApplicationGatewayAvailableWafRuleSets API service call. + + :param value: The list of application gateway rule sets. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayFirewallRuleSet] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ApplicationGatewayFirewallRuleSet]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayAvailableWafRuleSetsResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + + +class ApplicationGatewayBackendAddress(Model): + """Backend address of an application gateway. + + :param fqdn: Fully qualified domain name (FQDN). + :type fqdn: str + :param ip_address: IP address. + :type ip_address: str + """ + + _attribute_map = { + 'fqdn': {'key': 'fqdn', 'type': 'str'}, + 'ip_address': {'key': 'ipAddress', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendAddress, self).__init__(**kwargs) + self.fqdn = kwargs.get('fqdn', None) + self.ip_address = kwargs.get('ip_address', None) + + +class ApplicationGatewayBackendAddressPool(SubResource): + """Backend Address Pool of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar backend_ip_configurations: Collection of references to IPs defined + in network interfaces. + :vartype backend_ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfiguration] + :param backend_addresses: Backend addresses. + :type backend_addresses: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendAddress] + :ivar provisioning_state: The provisioning state of the backend address + pool resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the backend address pool that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'backend_ip_configurations': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'backend_ip_configurations': {'key': 'properties.backendIPConfigurations', 'type': '[NetworkInterfaceIPConfiguration]'}, + 'backend_addresses': {'key': 'properties.backendAddresses', 'type': '[ApplicationGatewayBackendAddress]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendAddressPool, self).__init__(**kwargs) + self.backend_ip_configurations = None + self.backend_addresses = kwargs.get('backend_addresses', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ApplicationGatewayBackendHealth(Model): + """Response for ApplicationGatewayBackendHealth API service call. + + :param backend_address_pools: A list of + ApplicationGatewayBackendHealthPool resources. + :type backend_address_pools: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendHealthPool] + """ + + _attribute_map = { + 'backend_address_pools': {'key': 'backendAddressPools', 'type': '[ApplicationGatewayBackendHealthPool]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendHealth, self).__init__(**kwargs) + self.backend_address_pools = kwargs.get('backend_address_pools', None) + + +class ApplicationGatewayBackendHealthHttpSettings(Model): + """Application gateway BackendHealthHttp settings. + + :param backend_http_settings: Reference of an + ApplicationGatewayBackendHttpSettings resource. + :type backend_http_settings: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendHttpSettings + :param servers: List of ApplicationGatewayBackendHealthServer resources. + :type servers: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendHealthServer] + """ + + _attribute_map = { + 'backend_http_settings': {'key': 'backendHttpSettings', 'type': 'ApplicationGatewayBackendHttpSettings'}, + 'servers': {'key': 'servers', 'type': '[ApplicationGatewayBackendHealthServer]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendHealthHttpSettings, self).__init__(**kwargs) + self.backend_http_settings = kwargs.get('backend_http_settings', None) + self.servers = kwargs.get('servers', None) + + +class ApplicationGatewayBackendHealthOnDemand(Model): + """Result of on demand test probe. + + :param backend_address_pool: Reference of an + ApplicationGatewayBackendAddressPool resource. + :type backend_address_pool: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendAddressPool + :param backend_health_http_settings: Application gateway BackendHealthHttp + settings. + :type backend_health_http_settings: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendHealthHttpSettings + """ + + _attribute_map = { + 'backend_address_pool': {'key': 'backendAddressPool', 'type': 'ApplicationGatewayBackendAddressPool'}, + 'backend_health_http_settings': {'key': 'backendHealthHttpSettings', 'type': 'ApplicationGatewayBackendHealthHttpSettings'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendHealthOnDemand, self).__init__(**kwargs) + self.backend_address_pool = kwargs.get('backend_address_pool', None) + self.backend_health_http_settings = kwargs.get('backend_health_http_settings', None) + + +class ApplicationGatewayBackendHealthPool(Model): + """Application gateway BackendHealth pool. + + :param backend_address_pool: Reference of an + ApplicationGatewayBackendAddressPool resource. + :type backend_address_pool: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendAddressPool + :param backend_http_settings_collection: List of + ApplicationGatewayBackendHealthHttpSettings resources. + :type backend_http_settings_collection: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendHealthHttpSettings] + """ + + _attribute_map = { + 'backend_address_pool': {'key': 'backendAddressPool', 'type': 'ApplicationGatewayBackendAddressPool'}, + 'backend_http_settings_collection': {'key': 'backendHttpSettingsCollection', 'type': '[ApplicationGatewayBackendHealthHttpSettings]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendHealthPool, self).__init__(**kwargs) + self.backend_address_pool = kwargs.get('backend_address_pool', None) + self.backend_http_settings_collection = kwargs.get('backend_http_settings_collection', None) + + +class ApplicationGatewayBackendHealthServer(Model): + """Application gateway backendhealth http settings. + + :param address: IP address or FQDN of backend server. + :type address: str + :param ip_configuration: Reference of IP configuration of backend server. + :type ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfiguration + :param health: Health of backend server. Possible values include: + 'Unknown', 'Up', 'Down', 'Partial', 'Draining' + :type health: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendHealthServerHealth + :param health_probe_log: Health Probe Log. + :type health_probe_log: str + """ + + _attribute_map = { + 'address': {'key': 'address', 'type': 'str'}, + 'ip_configuration': {'key': 'ipConfiguration', 'type': 'NetworkInterfaceIPConfiguration'}, + 'health': {'key': 'health', 'type': 'str'}, + 'health_probe_log': {'key': 'healthProbeLog', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendHealthServer, self).__init__(**kwargs) + self.address = kwargs.get('address', None) + self.ip_configuration = kwargs.get('ip_configuration', None) + self.health = kwargs.get('health', None) + self.health_probe_log = kwargs.get('health_probe_log', None) + + +class ApplicationGatewayBackendHttpSettings(SubResource): + """Backend address pool settings of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param port: The destination port on the backend. + :type port: int + :param protocol: The protocol used to communicate with the backend. + Possible values include: 'Http', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayProtocol + :param cookie_based_affinity: Cookie based affinity. Possible values + include: 'Enabled', 'Disabled' + :type cookie_based_affinity: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayCookieBasedAffinity + :param request_timeout: Request timeout in seconds. Application Gateway + will fail the request if response is not received within RequestTimeout. + Acceptable values are from 1 second to 86400 seconds. + :type request_timeout: int + :param probe: Probe resource of an application gateway. + :type probe: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param authentication_certificates: Array of references to application + gateway authentication certificates. + :type authentication_certificates: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param trusted_root_certificates: Array of references to application + gateway trusted root certificates. + :type trusted_root_certificates: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param connection_draining: Connection draining of the backend http + settings resource. + :type connection_draining: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayConnectionDraining + :param host_name: Host header to be sent to the backend servers. + :type host_name: str + :param pick_host_name_from_backend_address: Whether to pick host header + should be picked from the host name of the backend server. Default value + is false. + :type pick_host_name_from_backend_address: bool + :param affinity_cookie_name: Cookie name to use for the affinity cookie. + :type affinity_cookie_name: str + :param probe_enabled: Whether the probe is enabled. Default value is + false. + :type probe_enabled: bool + :param path: Path which should be used as a prefix for all HTTP requests. + Null means no path will be prefixed. Default value is null. + :type path: str + :ivar provisioning_state: The provisioning state of the backend HTTP + settings resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the backend http settings that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'cookie_based_affinity': {'key': 'properties.cookieBasedAffinity', 'type': 'str'}, + 'request_timeout': {'key': 'properties.requestTimeout', 'type': 'int'}, + 'probe': {'key': 'properties.probe', 'type': 'SubResource'}, + 'authentication_certificates': {'key': 'properties.authenticationCertificates', 'type': '[SubResource]'}, + 'trusted_root_certificates': {'key': 'properties.trustedRootCertificates', 'type': '[SubResource]'}, + 'connection_draining': {'key': 'properties.connectionDraining', 'type': 'ApplicationGatewayConnectionDraining'}, + 'host_name': {'key': 'properties.hostName', 'type': 'str'}, + 'pick_host_name_from_backend_address': {'key': 'properties.pickHostNameFromBackendAddress', 'type': 'bool'}, + 'affinity_cookie_name': {'key': 'properties.affinityCookieName', 'type': 'str'}, + 'probe_enabled': {'key': 'properties.probeEnabled', 'type': 'bool'}, + 'path': {'key': 'properties.path', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayBackendHttpSettings, self).__init__(**kwargs) + self.port = kwargs.get('port', None) + self.protocol = kwargs.get('protocol', None) + self.cookie_based_affinity = kwargs.get('cookie_based_affinity', None) + self.request_timeout = kwargs.get('request_timeout', None) + self.probe = kwargs.get('probe', None) + self.authentication_certificates = kwargs.get('authentication_certificates', None) + self.trusted_root_certificates = kwargs.get('trusted_root_certificates', None) + self.connection_draining = kwargs.get('connection_draining', None) + self.host_name = kwargs.get('host_name', None) + self.pick_host_name_from_backend_address = kwargs.get('pick_host_name_from_backend_address', None) + self.affinity_cookie_name = kwargs.get('affinity_cookie_name', None) + self.probe_enabled = kwargs.get('probe_enabled', None) + self.path = kwargs.get('path', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ApplicationGatewayConnectionDraining(Model): + """Connection draining allows open connections to a backend server to be + active for a specified time after the backend server got removed from the + configuration. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Whether connection draining is enabled or not. + :type enabled: bool + :param drain_timeout_in_sec: Required. The number of seconds connection + draining is active. Acceptable values are from 1 second to 3600 seconds. + :type drain_timeout_in_sec: int + """ + + _validation = { + 'enabled': {'required': True}, + 'drain_timeout_in_sec': {'required': True, 'maximum': 3600, 'minimum': 1}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'drain_timeout_in_sec': {'key': 'drainTimeoutInSec', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayConnectionDraining, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.drain_timeout_in_sec = kwargs.get('drain_timeout_in_sec', None) + + +class ApplicationGatewayCustomError(Model): + """Customer error of an application gateway. + + :param status_code: Status code of the application gateway customer error. + Possible values include: 'HttpStatus403', 'HttpStatus502' + :type status_code: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayCustomErrorStatusCode + :param custom_error_page_url: Error page URL of the application gateway + customer error. + :type custom_error_page_url: str + """ + + _attribute_map = { + 'status_code': {'key': 'statusCode', 'type': 'str'}, + 'custom_error_page_url': {'key': 'customErrorPageUrl', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayCustomError, self).__init__(**kwargs) + self.status_code = kwargs.get('status_code', None) + self.custom_error_page_url = kwargs.get('custom_error_page_url', None) + + +class ApplicationGatewayFirewallDisabledRuleGroup(Model): + """Allows to disable rules within a rule group or an entire rule group. + + All required parameters must be populated in order to send to Azure. + + :param rule_group_name: Required. The name of the rule group that will be + disabled. + :type rule_group_name: str + :param rules: The list of rules that will be disabled. If null, all rules + of the rule group will be disabled. + :type rules: list[int] + """ + + _validation = { + 'rule_group_name': {'required': True}, + } + + _attribute_map = { + 'rule_group_name': {'key': 'ruleGroupName', 'type': 'str'}, + 'rules': {'key': 'rules', 'type': '[int]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayFirewallDisabledRuleGroup, self).__init__(**kwargs) + self.rule_group_name = kwargs.get('rule_group_name', None) + self.rules = kwargs.get('rules', None) + + +class ApplicationGatewayFirewallExclusion(Model): + """Allow to exclude some variable satisfy the condition for the WAF check. + + All required parameters must be populated in order to send to Azure. + + :param match_variable: Required. The variable to be excluded. + :type match_variable: str + :param selector_match_operator: Required. When matchVariable is a + collection, operate on the selector to specify which elements in the + collection this exclusion applies to. + :type selector_match_operator: str + :param selector: Required. When matchVariable is a collection, operator + used to specify which elements in the collection this exclusion applies + to. + :type selector: str + """ + + _validation = { + 'match_variable': {'required': True}, + 'selector_match_operator': {'required': True}, + 'selector': {'required': True}, + } + + _attribute_map = { + 'match_variable': {'key': 'matchVariable', 'type': 'str'}, + 'selector_match_operator': {'key': 'selectorMatchOperator', 'type': 'str'}, + 'selector': {'key': 'selector', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayFirewallExclusion, self).__init__(**kwargs) + self.match_variable = kwargs.get('match_variable', None) + self.selector_match_operator = kwargs.get('selector_match_operator', None) + self.selector = kwargs.get('selector', None) + + +class ApplicationGatewayFirewallRule(Model): + """A web application firewall rule. + + All required parameters must be populated in order to send to Azure. + + :param rule_id: Required. The identifier of the web application firewall + rule. + :type rule_id: int + :param description: The description of the web application firewall rule. + :type description: str + """ + + _validation = { + 'rule_id': {'required': True}, + } + + _attribute_map = { + 'rule_id': {'key': 'ruleId', 'type': 'int'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayFirewallRule, self).__init__(**kwargs) + self.rule_id = kwargs.get('rule_id', None) + self.description = kwargs.get('description', None) + + +class ApplicationGatewayFirewallRuleGroup(Model): + """A web application firewall rule group. + + All required parameters must be populated in order to send to Azure. + + :param rule_group_name: Required. The name of the web application firewall + rule group. + :type rule_group_name: str + :param description: The description of the web application firewall rule + group. + :type description: str + :param rules: Required. The rules of the web application firewall rule + group. + :type rules: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayFirewallRule] + """ + + _validation = { + 'rule_group_name': {'required': True}, + 'rules': {'required': True}, + } + + _attribute_map = { + 'rule_group_name': {'key': 'ruleGroupName', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'rules': {'key': 'rules', 'type': '[ApplicationGatewayFirewallRule]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayFirewallRuleGroup, self).__init__(**kwargs) + self.rule_group_name = kwargs.get('rule_group_name', None) + self.description = kwargs.get('description', None) + self.rules = kwargs.get('rules', None) + + +class ApplicationGatewayFirewallRuleSet(Resource): + """A web application firewall rule set. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar provisioning_state: The provisioning state of the web application + firewall rule set. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param rule_set_type: Required. The type of the web application firewall + rule set. + :type rule_set_type: str + :param rule_set_version: Required. The version of the web application + firewall rule set type. + :type rule_set_version: str + :param rule_groups: Required. The rule groups of the web application + firewall rule set. + :type rule_groups: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayFirewallRuleGroup] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'rule_set_type': {'required': True}, + 'rule_set_version': {'required': True}, + 'rule_groups': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'rule_set_type': {'key': 'properties.ruleSetType', 'type': 'str'}, + 'rule_set_version': {'key': 'properties.ruleSetVersion', 'type': 'str'}, + 'rule_groups': {'key': 'properties.ruleGroups', 'type': '[ApplicationGatewayFirewallRuleGroup]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayFirewallRuleSet, self).__init__(**kwargs) + self.provisioning_state = None + self.rule_set_type = kwargs.get('rule_set_type', None) + self.rule_set_version = kwargs.get('rule_set_version', None) + self.rule_groups = kwargs.get('rule_groups', None) + + +class ApplicationGatewayFrontendIPConfiguration(SubResource): + """Frontend IP configuration of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param private_ip_address: PrivateIPAddress of the network interface IP + Configuration. + :type private_ip_address: str + :param private_ip_allocation_method: The private IP address allocation + method. Possible values include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2019_09_01.models.IPAllocationMethod + :param subnet: Reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param public_ip_address: Reference of the PublicIP resource. + :type public_ip_address: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar provisioning_state: The provisioning state of the frontend IP + configuration resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the frontend IP configuration that is unique within + an Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayFrontendIPConfiguration, self).__init__(**kwargs) + self.private_ip_address = kwargs.get('private_ip_address', None) + self.private_ip_allocation_method = kwargs.get('private_ip_allocation_method', None) + self.subnet = kwargs.get('subnet', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ApplicationGatewayFrontendPort(SubResource): + """Frontend port of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param port: Frontend port. + :type port: int + :ivar provisioning_state: The provisioning state of the frontend port + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the frontend port that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayFrontendPort, self).__init__(**kwargs) + self.port = kwargs.get('port', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ApplicationGatewayHeaderConfiguration(Model): + """Header configuration of the Actions set in Application Gateway. + + :param header_name: Header name of the header configuration. + :type header_name: str + :param header_value: Header value of the header configuration. + :type header_value: str + """ + + _attribute_map = { + 'header_name': {'key': 'headerName', 'type': 'str'}, + 'header_value': {'key': 'headerValue', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayHeaderConfiguration, self).__init__(**kwargs) + self.header_name = kwargs.get('header_name', None) + self.header_value = kwargs.get('header_value', None) + + +class ApplicationGatewayHttpListener(SubResource): + """Http listener of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: Frontend IP configuration resource of an + application gateway. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param frontend_port: Frontend port resource of an application gateway. + :type frontend_port: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param protocol: Protocol of the HTTP listener. Possible values include: + 'Http', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayProtocol + :param host_name: Host name of HTTP listener. + :type host_name: str + :param ssl_certificate: SSL certificate resource of an application + gateway. + :type ssl_certificate: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param require_server_name_indication: Applicable only if protocol is + https. Enables SNI for multi-hosting. + :type require_server_name_indication: bool + :ivar provisioning_state: The provisioning state of the HTTP listener + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param custom_error_configurations: Custom error configurations of the + HTTP listener. + :type custom_error_configurations: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayCustomError] + :param firewall_policy: Reference to the FirewallPolicy resource. + :type firewall_policy: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param hostnames: List of Host names for HTTP Listener that allows special + wildcard characters as well. + :type hostnames: list[str] + :param name: Name of the HTTP listener that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'frontend_port': {'key': 'properties.frontendPort', 'type': 'SubResource'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'host_name': {'key': 'properties.hostName', 'type': 'str'}, + 'ssl_certificate': {'key': 'properties.sslCertificate', 'type': 'SubResource'}, + 'require_server_name_indication': {'key': 'properties.requireServerNameIndication', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'custom_error_configurations': {'key': 'properties.customErrorConfigurations', 'type': '[ApplicationGatewayCustomError]'}, + 'firewall_policy': {'key': 'properties.firewallPolicy', 'type': 'SubResource'}, + 'hostnames': {'key': 'properties.hostnames', 'type': '[str]'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayHttpListener, self).__init__(**kwargs) + self.frontend_ip_configuration = kwargs.get('frontend_ip_configuration', None) + self.frontend_port = kwargs.get('frontend_port', None) + self.protocol = kwargs.get('protocol', None) + self.host_name = kwargs.get('host_name', None) + self.ssl_certificate = kwargs.get('ssl_certificate', None) + self.require_server_name_indication = kwargs.get('require_server_name_indication', None) + self.provisioning_state = None + self.custom_error_configurations = kwargs.get('custom_error_configurations', None) + self.firewall_policy = kwargs.get('firewall_policy', None) + self.hostnames = kwargs.get('hostnames', None) + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ApplicationGatewayIPConfiguration(SubResource): + """IP configuration of an application gateway. Currently 1 public and 1 + private IP configuration is allowed. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param subnet: Reference of the subnet resource. A subnet from where + application gateway gets its private address. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar provisioning_state: The provisioning state of the application + gateway IP configuration resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the IP configuration that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayIPConfiguration, self).__init__(**kwargs) + self.subnet = kwargs.get('subnet', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ApplicationGatewayOnDemandProbe(Model): + """Details of on demand test probe request. + + :param protocol: The protocol used for the probe. Possible values include: + 'Http', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayProtocol + :param host: Host name to send the probe to. + :type host: str + :param path: Relative path of probe. Valid path starts from '/'. Probe is + sent to ://:. + :type path: str + :param timeout: The probe timeout in seconds. Probe marked as failed if + valid response is not received with this timeout period. Acceptable values + are from 1 second to 86400 seconds. + :type timeout: int + :param pick_host_name_from_backend_http_settings: Whether the host header + should be picked from the backend http settings. Default value is false. + :type pick_host_name_from_backend_http_settings: bool + :param match: Criterion for classifying a healthy probe response. + :type match: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayProbeHealthResponseMatch + :param backend_address_pool: Reference of backend pool of application + gateway to which probe request will be sent. + :type backend_address_pool: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param backend_http_settings: Reference of backend http setting of + application gateway to be used for test probe. + :type backend_http_settings: + ~azure.mgmt.network.v2019_09_01.models.SubResource + """ + + _attribute_map = { + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'host': {'key': 'host', 'type': 'str'}, + 'path': {'key': 'path', 'type': 'str'}, + 'timeout': {'key': 'timeout', 'type': 'int'}, + 'pick_host_name_from_backend_http_settings': {'key': 'pickHostNameFromBackendHttpSettings', 'type': 'bool'}, + 'match': {'key': 'match', 'type': 'ApplicationGatewayProbeHealthResponseMatch'}, + 'backend_address_pool': {'key': 'backendAddressPool', 'type': 'SubResource'}, + 'backend_http_settings': {'key': 'backendHttpSettings', 'type': 'SubResource'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayOnDemandProbe, self).__init__(**kwargs) + self.protocol = kwargs.get('protocol', None) + self.host = kwargs.get('host', None) + self.path = kwargs.get('path', None) + self.timeout = kwargs.get('timeout', None) + self.pick_host_name_from_backend_http_settings = kwargs.get('pick_host_name_from_backend_http_settings', None) + self.match = kwargs.get('match', None) + self.backend_address_pool = kwargs.get('backend_address_pool', None) + self.backend_http_settings = kwargs.get('backend_http_settings', None) + + +class ApplicationGatewayPathRule(SubResource): + """Path rule of URL path map of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param paths: Path rules of URL path map. + :type paths: list[str] + :param backend_address_pool: Backend address pool resource of URL path map + path rule. + :type backend_address_pool: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param backend_http_settings: Backend http settings resource of URL path + map path rule. + :type backend_http_settings: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param redirect_configuration: Redirect configuration resource of URL path + map path rule. + :type redirect_configuration: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param rewrite_rule_set: Rewrite rule set resource of URL path map path + rule. + :type rewrite_rule_set: ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar provisioning_state: The provisioning state of the path rule + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param firewall_policy: Reference to the FirewallPolicy resource. + :type firewall_policy: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param name: Name of the path rule that is unique within an Application + Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'paths': {'key': 'properties.paths', 'type': '[str]'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'backend_http_settings': {'key': 'properties.backendHttpSettings', 'type': 'SubResource'}, + 'redirect_configuration': {'key': 'properties.redirectConfiguration', 'type': 'SubResource'}, + 'rewrite_rule_set': {'key': 'properties.rewriteRuleSet', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'firewall_policy': {'key': 'properties.firewallPolicy', 'type': 'SubResource'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayPathRule, self).__init__(**kwargs) + self.paths = kwargs.get('paths', None) + self.backend_address_pool = kwargs.get('backend_address_pool', None) + self.backend_http_settings = kwargs.get('backend_http_settings', None) + self.redirect_configuration = kwargs.get('redirect_configuration', None) + self.rewrite_rule_set = kwargs.get('rewrite_rule_set', None) + self.provisioning_state = None + self.firewall_policy = kwargs.get('firewall_policy', None) + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ApplicationGatewayProbe(SubResource): + """Probe of the application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param protocol: The protocol used for the probe. Possible values include: + 'Http', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayProtocol + :param host: Host name to send the probe to. + :type host: str + :param path: Relative path of probe. Valid path starts from '/'. Probe is + sent to ://:. + :type path: str + :param interval: The probing interval in seconds. This is the time + interval between two consecutive probes. Acceptable values are from 1 + second to 86400 seconds. + :type interval: int + :param timeout: The probe timeout in seconds. Probe marked as failed if + valid response is not received with this timeout period. Acceptable values + are from 1 second to 86400 seconds. + :type timeout: int + :param unhealthy_threshold: The probe retry count. Backend server is + marked down after consecutive probe failure count reaches + UnhealthyThreshold. Acceptable values are from 1 second to 20. + :type unhealthy_threshold: int + :param pick_host_name_from_backend_http_settings: Whether the host header + should be picked from the backend http settings. Default value is false. + :type pick_host_name_from_backend_http_settings: bool + :param min_servers: Minimum number of servers that are always marked + healthy. Default value is 0. + :type min_servers: int + :param match: Criterion for classifying a healthy probe response. + :type match: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayProbeHealthResponseMatch + :ivar provisioning_state: The provisioning state of the probe resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param port: Custom port which will be used for probing the backend + servers. The valid value ranges from 1 to 65535. In case not set, port + from http settings will be used. This property is valid for Standard_v2 + and WAF_v2 only. + :type port: int + :param name: Name of the probe that is unique within an Application + Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'port': {'maximum': 65535, 'minimum': 1}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'host': {'key': 'properties.host', 'type': 'str'}, + 'path': {'key': 'properties.path', 'type': 'str'}, + 'interval': {'key': 'properties.interval', 'type': 'int'}, + 'timeout': {'key': 'properties.timeout', 'type': 'int'}, + 'unhealthy_threshold': {'key': 'properties.unhealthyThreshold', 'type': 'int'}, + 'pick_host_name_from_backend_http_settings': {'key': 'properties.pickHostNameFromBackendHttpSettings', 'type': 'bool'}, + 'min_servers': {'key': 'properties.minServers', 'type': 'int'}, + 'match': {'key': 'properties.match', 'type': 'ApplicationGatewayProbeHealthResponseMatch'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayProbe, self).__init__(**kwargs) + self.protocol = kwargs.get('protocol', None) + self.host = kwargs.get('host', None) + self.path = kwargs.get('path', None) + self.interval = kwargs.get('interval', None) + self.timeout = kwargs.get('timeout', None) + self.unhealthy_threshold = kwargs.get('unhealthy_threshold', None) + self.pick_host_name_from_backend_http_settings = kwargs.get('pick_host_name_from_backend_http_settings', None) + self.min_servers = kwargs.get('min_servers', None) + self.match = kwargs.get('match', None) + self.provisioning_state = None + self.port = kwargs.get('port', None) + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ApplicationGatewayProbeHealthResponseMatch(Model): + """Application gateway probe health response match. + + :param body: Body that must be contained in the health response. Default + value is empty. + :type body: str + :param status_codes: Allowed ranges of healthy status codes. Default range + of healthy status codes is 200-399. + :type status_codes: list[str] + """ + + _attribute_map = { + 'body': {'key': 'body', 'type': 'str'}, + 'status_codes': {'key': 'statusCodes', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayProbeHealthResponseMatch, self).__init__(**kwargs) + self.body = kwargs.get('body', None) + self.status_codes = kwargs.get('status_codes', None) + + +class ApplicationGatewayRedirectConfiguration(SubResource): + """Redirect configuration of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param redirect_type: HTTP redirection type. Possible values include: + 'Permanent', 'Found', 'SeeOther', 'Temporary' + :type redirect_type: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayRedirectType + :param target_listener: Reference to a listener to redirect the request + to. + :type target_listener: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param target_url: Url to redirect the request to. + :type target_url: str + :param include_path: Include path in the redirected url. + :type include_path: bool + :param include_query_string: Include query string in the redirected url. + :type include_query_string: bool + :param request_routing_rules: Request routing specifying redirect + configuration. + :type request_routing_rules: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param url_path_maps: Url path maps specifying default redirect + configuration. + :type url_path_maps: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param path_rules: Path rules specifying redirect configuration. + :type path_rules: list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param name: Name of the redirect configuration that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'redirect_type': {'key': 'properties.redirectType', 'type': 'str'}, + 'target_listener': {'key': 'properties.targetListener', 'type': 'SubResource'}, + 'target_url': {'key': 'properties.targetUrl', 'type': 'str'}, + 'include_path': {'key': 'properties.includePath', 'type': 'bool'}, + 'include_query_string': {'key': 'properties.includeQueryString', 'type': 'bool'}, + 'request_routing_rules': {'key': 'properties.requestRoutingRules', 'type': '[SubResource]'}, + 'url_path_maps': {'key': 'properties.urlPathMaps', 'type': '[SubResource]'}, + 'path_rules': {'key': 'properties.pathRules', 'type': '[SubResource]'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayRedirectConfiguration, self).__init__(**kwargs) + self.redirect_type = kwargs.get('redirect_type', None) + self.target_listener = kwargs.get('target_listener', None) + self.target_url = kwargs.get('target_url', None) + self.include_path = kwargs.get('include_path', None) + self.include_query_string = kwargs.get('include_query_string', None) + self.request_routing_rules = kwargs.get('request_routing_rules', None) + self.url_path_maps = kwargs.get('url_path_maps', None) + self.path_rules = kwargs.get('path_rules', None) + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ApplicationGatewayRequestRoutingRule(SubResource): + """Request routing rule of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param rule_type: Rule type. Possible values include: 'Basic', + 'PathBasedRouting' + :type rule_type: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayRequestRoutingRuleType + :param priority: Priority of the request routing rule. + :type priority: int + :param backend_address_pool: Backend address pool resource of the + application gateway. + :type backend_address_pool: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param backend_http_settings: Backend http settings resource of the + application gateway. + :type backend_http_settings: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param http_listener: Http listener resource of the application gateway. + :type http_listener: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param url_path_map: URL path map resource of the application gateway. + :type url_path_map: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param rewrite_rule_set: Rewrite Rule Set resource in Basic rule of the + application gateway. + :type rewrite_rule_set: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param redirect_configuration: Redirect configuration resource of the + application gateway. + :type redirect_configuration: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar provisioning_state: The provisioning state of the request routing + rule resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the request routing rule that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'priority': {'maximum': 20000, 'minimum': 1}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'rule_type': {'key': 'properties.ruleType', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'backend_http_settings': {'key': 'properties.backendHttpSettings', 'type': 'SubResource'}, + 'http_listener': {'key': 'properties.httpListener', 'type': 'SubResource'}, + 'url_path_map': {'key': 'properties.urlPathMap', 'type': 'SubResource'}, + 'rewrite_rule_set': {'key': 'properties.rewriteRuleSet', 'type': 'SubResource'}, + 'redirect_configuration': {'key': 'properties.redirectConfiguration', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayRequestRoutingRule, self).__init__(**kwargs) + self.rule_type = kwargs.get('rule_type', None) + self.priority = kwargs.get('priority', None) + self.backend_address_pool = kwargs.get('backend_address_pool', None) + self.backend_http_settings = kwargs.get('backend_http_settings', None) + self.http_listener = kwargs.get('http_listener', None) + self.url_path_map = kwargs.get('url_path_map', None) + self.rewrite_rule_set = kwargs.get('rewrite_rule_set', None) + self.redirect_configuration = kwargs.get('redirect_configuration', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ApplicationGatewayRewriteRule(Model): + """Rewrite rule of an application gateway. + + :param name: Name of the rewrite rule that is unique within an Application + Gateway. + :type name: str + :param rule_sequence: Rule Sequence of the rewrite rule that determines + the order of execution of a particular rule in a RewriteRuleSet. + :type rule_sequence: int + :param conditions: Conditions based on which the action set execution will + be evaluated. + :type conditions: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayRewriteRuleCondition] + :param action_set: Set of actions to be done as part of the rewrite Rule. + :type action_set: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayRewriteRuleActionSet + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'rule_sequence': {'key': 'ruleSequence', 'type': 'int'}, + 'conditions': {'key': 'conditions', 'type': '[ApplicationGatewayRewriteRuleCondition]'}, + 'action_set': {'key': 'actionSet', 'type': 'ApplicationGatewayRewriteRuleActionSet'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayRewriteRule, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.rule_sequence = kwargs.get('rule_sequence', None) + self.conditions = kwargs.get('conditions', None) + self.action_set = kwargs.get('action_set', None) + + +class ApplicationGatewayRewriteRuleActionSet(Model): + """Set of actions in the Rewrite Rule in Application Gateway. + + :param request_header_configurations: Request Header Actions in the Action + Set. + :type request_header_configurations: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayHeaderConfiguration] + :param response_header_configurations: Response Header Actions in the + Action Set. + :type response_header_configurations: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayHeaderConfiguration] + """ + + _attribute_map = { + 'request_header_configurations': {'key': 'requestHeaderConfigurations', 'type': '[ApplicationGatewayHeaderConfiguration]'}, + 'response_header_configurations': {'key': 'responseHeaderConfigurations', 'type': '[ApplicationGatewayHeaderConfiguration]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayRewriteRuleActionSet, self).__init__(**kwargs) + self.request_header_configurations = kwargs.get('request_header_configurations', None) + self.response_header_configurations = kwargs.get('response_header_configurations', None) + + +class ApplicationGatewayRewriteRuleCondition(Model): + """Set of conditions in the Rewrite Rule in Application Gateway. + + :param variable: The condition parameter of the RewriteRuleCondition. + :type variable: str + :param pattern: The pattern, either fixed string or regular expression, + that evaluates the truthfulness of the condition. + :type pattern: str + :param ignore_case: Setting this paramter to truth value with force the + pattern to do a case in-sensitive comparison. + :type ignore_case: bool + :param negate: Setting this value as truth will force to check the + negation of the condition given by the user. + :type negate: bool + """ + + _attribute_map = { + 'variable': {'key': 'variable', 'type': 'str'}, + 'pattern': {'key': 'pattern', 'type': 'str'}, + 'ignore_case': {'key': 'ignoreCase', 'type': 'bool'}, + 'negate': {'key': 'negate', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayRewriteRuleCondition, self).__init__(**kwargs) + self.variable = kwargs.get('variable', None) + self.pattern = kwargs.get('pattern', None) + self.ignore_case = kwargs.get('ignore_case', None) + self.negate = kwargs.get('negate', None) + + +class ApplicationGatewayRewriteRuleSet(SubResource): + """Rewrite rule set of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param rewrite_rules: Rewrite rules in the rewrite rule set. + :type rewrite_rules: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayRewriteRule] + :ivar provisioning_state: The provisioning state of the rewrite rule set + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the rewrite rule set that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'rewrite_rules': {'key': 'properties.rewriteRules', 'type': '[ApplicationGatewayRewriteRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayRewriteRuleSet, self).__init__(**kwargs) + self.rewrite_rules = kwargs.get('rewrite_rules', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + + +class ApplicationGatewaySku(Model): + """SKU of an application gateway. + + :param name: Name of an application gateway SKU. Possible values include: + 'Standard_Small', 'Standard_Medium', 'Standard_Large', 'WAF_Medium', + 'WAF_Large', 'Standard_v2', 'WAF_v2' + :type name: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySkuName + :param tier: Tier of an application gateway. Possible values include: + 'Standard', 'WAF', 'Standard_v2', 'WAF_v2' + :type tier: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayTier + :param capacity: Capacity (instance count) of an application gateway. + :type capacity: int + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewaySku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = kwargs.get('tier', None) + self.capacity = kwargs.get('capacity', None) + + +class ApplicationGatewaySslCertificate(SubResource): + """SSL certificates of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param data: Base-64 encoded pfx certificate. Only applicable in PUT + Request. + :type data: str + :param password: Password for the pfx file specified in data. Only + applicable in PUT request. + :type password: str + :ivar public_cert_data: Base-64 encoded Public cert data corresponding to + pfx specified in data. Only applicable in GET request. + :vartype public_cert_data: str + :param key_vault_secret_id: Secret Id of (base-64 encoded unencrypted pfx) + 'Secret' or 'Certificate' object stored in KeyVault. + :type key_vault_secret_id: str + :ivar provisioning_state: The provisioning state of the SSL certificate + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the SSL certificate that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'public_cert_data': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'data': {'key': 'properties.data', 'type': 'str'}, + 'password': {'key': 'properties.password', 'type': 'str'}, + 'public_cert_data': {'key': 'properties.publicCertData', 'type': 'str'}, + 'key_vault_secret_id': {'key': 'properties.keyVaultSecretId', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewaySslCertificate, self).__init__(**kwargs) + self.data = kwargs.get('data', None) + self.password = kwargs.get('password', None) + self.public_cert_data = None + self.key_vault_secret_id = kwargs.get('key_vault_secret_id', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ApplicationGatewaySslPolicy(Model): + """Application Gateway Ssl policy. + + :param disabled_ssl_protocols: Ssl protocols to be disabled on application + gateway. + :type disabled_ssl_protocols: list[str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslProtocol] + :param policy_type: Type of Ssl Policy. Possible values include: + 'Predefined', 'Custom' + :type policy_type: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslPolicyType + :param policy_name: Name of Ssl predefined policy. Possible values + include: 'AppGwSslPolicy20150501', 'AppGwSslPolicy20170401', + 'AppGwSslPolicy20170401S' + :type policy_name: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslPolicyName + :param cipher_suites: Ssl cipher suites to be enabled in the specified + order to application gateway. + :type cipher_suites: list[str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslCipherSuite] + :param min_protocol_version: Minimum version of Ssl protocol to be + supported on application gateway. Possible values include: 'TLSv1_0', + 'TLSv1_1', 'TLSv1_2' + :type min_protocol_version: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslProtocol + """ + + _attribute_map = { + 'disabled_ssl_protocols': {'key': 'disabledSslProtocols', 'type': '[str]'}, + 'policy_type': {'key': 'policyType', 'type': 'str'}, + 'policy_name': {'key': 'policyName', 'type': 'str'}, + 'cipher_suites': {'key': 'cipherSuites', 'type': '[str]'}, + 'min_protocol_version': {'key': 'minProtocolVersion', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewaySslPolicy, self).__init__(**kwargs) + self.disabled_ssl_protocols = kwargs.get('disabled_ssl_protocols', None) + self.policy_type = kwargs.get('policy_type', None) + self.policy_name = kwargs.get('policy_name', None) + self.cipher_suites = kwargs.get('cipher_suites', None) + self.min_protocol_version = kwargs.get('min_protocol_version', None) + + +class ApplicationGatewaySslPredefinedPolicy(SubResource): + """An Ssl predefined policy. + + :param id: Resource ID. + :type id: str + :param name: Name of the Ssl predefined policy. + :type name: str + :param cipher_suites: Ssl cipher suites to be enabled in the specified + order for application gateway. + :type cipher_suites: list[str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslCipherSuite] + :param min_protocol_version: Minimum version of Ssl protocol to be + supported on application gateway. Possible values include: 'TLSv1_0', + 'TLSv1_1', 'TLSv1_2' + :type min_protocol_version: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslProtocol + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'cipher_suites': {'key': 'properties.cipherSuites', 'type': '[str]'}, + 'min_protocol_version': {'key': 'properties.minProtocolVersion', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewaySslPredefinedPolicy, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.cipher_suites = kwargs.get('cipher_suites', None) + self.min_protocol_version = kwargs.get('min_protocol_version', None) + + +class ApplicationGatewayTrustedRootCertificate(SubResource): + """Trusted Root certificates of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param data: Certificate public data. + :type data: str + :param key_vault_secret_id: Secret Id of (base-64 encoded unencrypted pfx) + 'Secret' or 'Certificate' object stored in KeyVault. + :type key_vault_secret_id: str + :ivar provisioning_state: The provisioning state of the trusted root + certificate resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the trusted root certificate that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'data': {'key': 'properties.data', 'type': 'str'}, + 'key_vault_secret_id': {'key': 'properties.keyVaultSecretId', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayTrustedRootCertificate, self).__init__(**kwargs) + self.data = kwargs.get('data', None) + self.key_vault_secret_id = kwargs.get('key_vault_secret_id', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ApplicationGatewayUrlPathMap(SubResource): + """UrlPathMaps give a url path to the backend mapping information for + PathBasedRouting. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param default_backend_address_pool: Default backend address pool resource + of URL path map. + :type default_backend_address_pool: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param default_backend_http_settings: Default backend http settings + resource of URL path map. + :type default_backend_http_settings: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param default_rewrite_rule_set: Default Rewrite rule set resource of URL + path map. + :type default_rewrite_rule_set: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param default_redirect_configuration: Default redirect configuration + resource of URL path map. + :type default_redirect_configuration: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param path_rules: Path rule of URL path map resource. + :type path_rules: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayPathRule] + :ivar provisioning_state: The provisioning state of the URL path map + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the URL path map that is unique within an Application + Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'default_backend_address_pool': {'key': 'properties.defaultBackendAddressPool', 'type': 'SubResource'}, + 'default_backend_http_settings': {'key': 'properties.defaultBackendHttpSettings', 'type': 'SubResource'}, + 'default_rewrite_rule_set': {'key': 'properties.defaultRewriteRuleSet', 'type': 'SubResource'}, + 'default_redirect_configuration': {'key': 'properties.defaultRedirectConfiguration', 'type': 'SubResource'}, + 'path_rules': {'key': 'properties.pathRules', 'type': '[ApplicationGatewayPathRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayUrlPathMap, self).__init__(**kwargs) + self.default_backend_address_pool = kwargs.get('default_backend_address_pool', None) + self.default_backend_http_settings = kwargs.get('default_backend_http_settings', None) + self.default_rewrite_rule_set = kwargs.get('default_rewrite_rule_set', None) + self.default_redirect_configuration = kwargs.get('default_redirect_configuration', None) + self.path_rules = kwargs.get('path_rules', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ApplicationGatewayWebApplicationFirewallConfiguration(Model): + """Application gateway web application firewall configuration. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Whether the web application firewall is enabled + or not. + :type enabled: bool + :param firewall_mode: Required. Web application firewall mode. Possible + values include: 'Detection', 'Prevention' + :type firewall_mode: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayFirewallMode + :param rule_set_type: Required. The type of the web application firewall + rule set. Possible values are: 'OWASP'. + :type rule_set_type: str + :param rule_set_version: Required. The version of the rule set type. + :type rule_set_version: str + :param disabled_rule_groups: The disabled rule groups. + :type disabled_rule_groups: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayFirewallDisabledRuleGroup] + :param request_body_check: Whether allow WAF to check request Body. + :type request_body_check: bool + :param max_request_body_size: Maximum request body size for WAF. + :type max_request_body_size: int + :param max_request_body_size_in_kb: Maximum request body size in Kb for + WAF. + :type max_request_body_size_in_kb: int + :param file_upload_limit_in_mb: Maximum file upload size in Mb for WAF. + :type file_upload_limit_in_mb: int + :param exclusions: The exclusion list. + :type exclusions: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayFirewallExclusion] + """ + + _validation = { + 'enabled': {'required': True}, + 'firewall_mode': {'required': True}, + 'rule_set_type': {'required': True}, + 'rule_set_version': {'required': True}, + 'max_request_body_size': {'maximum': 128, 'minimum': 8}, + 'max_request_body_size_in_kb': {'maximum': 128, 'minimum': 8}, + 'file_upload_limit_in_mb': {'minimum': 0}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'firewall_mode': {'key': 'firewallMode', 'type': 'str'}, + 'rule_set_type': {'key': 'ruleSetType', 'type': 'str'}, + 'rule_set_version': {'key': 'ruleSetVersion', 'type': 'str'}, + 'disabled_rule_groups': {'key': 'disabledRuleGroups', 'type': '[ApplicationGatewayFirewallDisabledRuleGroup]'}, + 'request_body_check': {'key': 'requestBodyCheck', 'type': 'bool'}, + 'max_request_body_size': {'key': 'maxRequestBodySize', 'type': 'int'}, + 'max_request_body_size_in_kb': {'key': 'maxRequestBodySizeInKb', 'type': 'int'}, + 'file_upload_limit_in_mb': {'key': 'fileUploadLimitInMb', 'type': 'int'}, + 'exclusions': {'key': 'exclusions', 'type': '[ApplicationGatewayFirewallExclusion]'}, + } + + def __init__(self, **kwargs): + super(ApplicationGatewayWebApplicationFirewallConfiguration, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.firewall_mode = kwargs.get('firewall_mode', None) + self.rule_set_type = kwargs.get('rule_set_type', None) + self.rule_set_version = kwargs.get('rule_set_version', None) + self.disabled_rule_groups = kwargs.get('disabled_rule_groups', None) + self.request_body_check = kwargs.get('request_body_check', None) + self.max_request_body_size = kwargs.get('max_request_body_size', None) + self.max_request_body_size_in_kb = kwargs.get('max_request_body_size_in_kb', None) + self.file_upload_limit_in_mb = kwargs.get('file_upload_limit_in_mb', None) + self.exclusions = kwargs.get('exclusions', None) + + +class FirewallPolicyRuleCondition(Model): + """Properties of a rule. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: ApplicationRuleCondition, NetworkRuleCondition + + All required parameters must be populated in order to send to Azure. + + :param name: Name of the rule condition. + :type name: str + :param description: Description of the rule condition. + :type description: str + :param rule_condition_type: Required. Constant filled by server. + :type rule_condition_type: str + """ + + _validation = { + 'rule_condition_type': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'rule_condition_type': {'key': 'ruleConditionType', 'type': 'str'}, + } + + _subtype_map = { + 'rule_condition_type': {'ApplicationRuleCondition': 'ApplicationRuleCondition', 'NetworkRuleCondition': 'NetworkRuleCondition'} + } + + def __init__(self, **kwargs): + super(FirewallPolicyRuleCondition, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.description = kwargs.get('description', None) + self.rule_condition_type = None + + +class ApplicationRuleCondition(FirewallPolicyRuleCondition): + """Rule condition of type application. + + All required parameters must be populated in order to send to Azure. + + :param name: Name of the rule condition. + :type name: str + :param description: Description of the rule condition. + :type description: str + :param rule_condition_type: Required. Constant filled by server. + :type rule_condition_type: str + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param destination_addresses: List of destination IP addresses or Service + Tags. + :type destination_addresses: list[str] + :param protocols: Array of Application Protocols. + :type protocols: + list[~azure.mgmt.network.v2019_09_01.models.FirewallPolicyRuleConditionApplicationProtocol] + :param target_fqdns: List of FQDNs for this rule condition. + :type target_fqdns: list[str] + :param fqdn_tags: List of FQDN Tags for this rule condition. + :type fqdn_tags: list[str] + """ + + _validation = { + 'rule_condition_type': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'rule_condition_type': {'key': 'ruleConditionType', 'type': 'str'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'destination_addresses': {'key': 'destinationAddresses', 'type': '[str]'}, + 'protocols': {'key': 'protocols', 'type': '[FirewallPolicyRuleConditionApplicationProtocol]'}, + 'target_fqdns': {'key': 'targetFqdns', 'type': '[str]'}, + 'fqdn_tags': {'key': 'fqdnTags', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(ApplicationRuleCondition, self).__init__(**kwargs) + self.source_addresses = kwargs.get('source_addresses', None) + self.destination_addresses = kwargs.get('destination_addresses', None) + self.protocols = kwargs.get('protocols', None) + self.target_fqdns = kwargs.get('target_fqdns', None) + self.fqdn_tags = kwargs.get('fqdn_tags', None) + self.rule_condition_type = 'ApplicationRuleCondition' + + +class ApplicationSecurityGroup(Resource): + """An application security group in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar resource_guid: The resource GUID property of the application + security group resource. It uniquely identifies a resource, even if the + user changes its name or migrate the resource across subscriptions or + resource groups. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the application + security group resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ApplicationSecurityGroup, self).__init__(**kwargs) + self.resource_guid = None + self.provisioning_state = None + self.etag = None + + +class AutoApprovedPrivateLinkService(Model): + """The information of an AutoApprovedPrivateLinkService. + + :param private_link_service: The id of the private link service resource. + :type private_link_service: str + """ + + _attribute_map = { + 'private_link_service': {'key': 'privateLinkService', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AutoApprovedPrivateLinkService, self).__init__(**kwargs) + self.private_link_service = kwargs.get('private_link_service', None) + + +class Availability(Model): + """Availability of the metric. + + :param time_grain: The time grain of the availability. + :type time_grain: str + :param retention: The retention of the availability. + :type retention: str + :param blob_duration: Duration of the availability blob. + :type blob_duration: str + """ + + _attribute_map = { + 'time_grain': {'key': 'timeGrain', 'type': 'str'}, + 'retention': {'key': 'retention', 'type': 'str'}, + 'blob_duration': {'key': 'blobDuration', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Availability, self).__init__(**kwargs) + self.time_grain = kwargs.get('time_grain', None) + self.retention = kwargs.get('retention', None) + self.blob_duration = kwargs.get('blob_duration', None) + + +class AvailableDelegation(Model): + """The serviceName of an AvailableDelegation indicates a possible delegation + for a subnet. + + :param name: The name of the AvailableDelegation resource. + :type name: str + :param id: A unique identifier of the AvailableDelegation resource. + :type id: str + :param type: Resource type. + :type type: str + :param service_name: The name of the service and resource. + :type service_name: str + :param actions: Describes the actions permitted to the service upon + delegation. + :type actions: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'service_name': {'key': 'serviceName', 'type': 'str'}, + 'actions': {'key': 'actions', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(AvailableDelegation, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.id = kwargs.get('id', None) + self.type = kwargs.get('type', None) + self.service_name = kwargs.get('service_name', None) + self.actions = kwargs.get('actions', None) + + +class AvailablePrivateEndpointType(Model): + """The information of an AvailablePrivateEndpointType. + + :param name: The name of the service and resource. + :type name: str + :param id: A unique identifier of the AvailablePrivateEndpoint Type + resource. + :type id: str + :param type: Resource type. + :type type: str + :param resource_name: The name of the service and resource. + :type resource_name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'resource_name': {'key': 'resourceName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AvailablePrivateEndpointType, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.id = kwargs.get('id', None) + self.type = kwargs.get('type', None) + self.resource_name = kwargs.get('resource_name', None) + + +class AvailableProvidersList(Model): + """List of available countries with details. + + All required parameters must be populated in order to send to Azure. + + :param countries: Required. List of available countries. + :type countries: + list[~azure.mgmt.network.v2019_09_01.models.AvailableProvidersListCountry] + """ + + _validation = { + 'countries': {'required': True}, + } + + _attribute_map = { + 'countries': {'key': 'countries', 'type': '[AvailableProvidersListCountry]'}, + } + + def __init__(self, **kwargs): + super(AvailableProvidersList, self).__init__(**kwargs) + self.countries = kwargs.get('countries', None) + + +class AvailableProvidersListCity(Model): + """City or town details. + + :param city_name: The city or town name. + :type city_name: str + :param providers: A list of Internet service providers. + :type providers: list[str] + """ + + _attribute_map = { + 'city_name': {'key': 'cityName', 'type': 'str'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(AvailableProvidersListCity, self).__init__(**kwargs) + self.city_name = kwargs.get('city_name', None) + self.providers = kwargs.get('providers', None) + + +class AvailableProvidersListCountry(Model): + """Country details. + + :param country_name: The country name. + :type country_name: str + :param providers: A list of Internet service providers. + :type providers: list[str] + :param states: List of available states in the country. + :type states: + list[~azure.mgmt.network.v2019_09_01.models.AvailableProvidersListState] + """ + + _attribute_map = { + 'country_name': {'key': 'countryName', 'type': 'str'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + 'states': {'key': 'states', 'type': '[AvailableProvidersListState]'}, + } + + def __init__(self, **kwargs): + super(AvailableProvidersListCountry, self).__init__(**kwargs) + self.country_name = kwargs.get('country_name', None) + self.providers = kwargs.get('providers', None) + self.states = kwargs.get('states', None) + + +class AvailableProvidersListParameters(Model): + """Constraints that determine the list of available Internet service + providers. + + :param azure_locations: A list of Azure regions. + :type azure_locations: list[str] + :param country: The country for available providers list. + :type country: str + :param state: The state for available providers list. + :type state: str + :param city: The city or town for available providers list. + :type city: str + """ + + _attribute_map = { + 'azure_locations': {'key': 'azureLocations', 'type': '[str]'}, + 'country': {'key': 'country', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'city': {'key': 'city', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AvailableProvidersListParameters, self).__init__(**kwargs) + self.azure_locations = kwargs.get('azure_locations', None) + self.country = kwargs.get('country', None) + self.state = kwargs.get('state', None) + self.city = kwargs.get('city', None) + + +class AvailableProvidersListState(Model): + """State details. + + :param state_name: The state name. + :type state_name: str + :param providers: A list of Internet service providers. + :type providers: list[str] + :param cities: List of available cities or towns in the state. + :type cities: + list[~azure.mgmt.network.v2019_09_01.models.AvailableProvidersListCity] + """ + + _attribute_map = { + 'state_name': {'key': 'stateName', 'type': 'str'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + 'cities': {'key': 'cities', 'type': '[AvailableProvidersListCity]'}, + } + + def __init__(self, **kwargs): + super(AvailableProvidersListState, self).__init__(**kwargs) + self.state_name = kwargs.get('state_name', None) + self.providers = kwargs.get('providers', None) + self.cities = kwargs.get('cities', None) + + +class AvailableServiceAlias(Model): + """The available service alias. + + :param name: The name of the service alias. + :type name: str + :param id: The ID of the service alias. + :type id: str + :param type: The type of the resource. + :type type: str + :param resource_name: The resource name of the service alias. + :type resource_name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'resource_name': {'key': 'resourceName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AvailableServiceAlias, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.id = kwargs.get('id', None) + self.type = kwargs.get('type', None) + self.resource_name = kwargs.get('resource_name', None) + + +class AzureAsyncOperationResult(Model): + """The response body contains the status of the specified asynchronous + operation, indicating whether it has succeeded, is in progress, or has + failed. Note that this status is distinct from the HTTP status code + returned for the Get Operation Status operation itself. If the asynchronous + operation succeeded, the response body includes the HTTP status code for + the successful request. If the asynchronous operation failed, the response + body includes the HTTP status code for the failed request and error + information regarding the failure. + + :param status: Status of the Azure async operation. Possible values + include: 'InProgress', 'Succeeded', 'Failed' + :type status: str or + ~azure.mgmt.network.v2019_09_01.models.NetworkOperationStatus + :param error: Details of the error occurred during specified asynchronous + operation. + :type error: ~azure.mgmt.network.v2019_09_01.models.Error + """ + + _attribute_map = { + 'status': {'key': 'status', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'Error'}, + } + + def __init__(self, **kwargs): + super(AzureAsyncOperationResult, self).__init__(**kwargs) + self.status = kwargs.get('status', None) + self.error = kwargs.get('error', None) + + +class AzureFirewall(Resource): + """Azure Firewall resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param application_rule_collections: Collection of application rule + collections used by Azure Firewall. + :type application_rule_collections: + list[~azure.mgmt.network.v2019_09_01.models.AzureFirewallApplicationRuleCollection] + :param nat_rule_collections: Collection of NAT rule collections used by + Azure Firewall. + :type nat_rule_collections: + list[~azure.mgmt.network.v2019_09_01.models.AzureFirewallNatRuleCollection] + :param network_rule_collections: Collection of network rule collections + used by Azure Firewall. + :type network_rule_collections: + list[~azure.mgmt.network.v2019_09_01.models.AzureFirewallNetworkRuleCollection] + :param ip_configurations: IP configuration of the Azure Firewall resource. + :type ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.AzureFirewallIPConfiguration] + :ivar provisioning_state: The provisioning state of the Azure firewall + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param threat_intel_mode: The operation mode for Threat Intelligence. + Possible values include: 'Alert', 'Deny', 'Off' + :type threat_intel_mode: str or + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallThreatIntelMode + :param virtual_hub: The virtualHub to which the firewall belongs. + :type virtual_hub: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param firewall_policy: The firewallPolicy associated with this azure + firewall. + :type firewall_policy: ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar hub_ip_addresses: IP addresses associated with AzureFirewall. + :vartype hub_ip_addresses: + ~azure.mgmt.network.v2019_09_01.models.HubIPAddresses + :param sku: The Azure Firewall Resource SKU. + :type sku: ~azure.mgmt.network.v2019_09_01.models.AzureFirewallSku + :param additional_properties: The additional properties used to further + config this azure firewall + :type additional_properties: dict[str, str] + :param zones: A list of availability zones denoting where the resource + needs to come from. + :type zones: list[str] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'hub_ip_addresses': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'application_rule_collections': {'key': 'properties.applicationRuleCollections', 'type': '[AzureFirewallApplicationRuleCollection]'}, + 'nat_rule_collections': {'key': 'properties.natRuleCollections', 'type': '[AzureFirewallNatRuleCollection]'}, + 'network_rule_collections': {'key': 'properties.networkRuleCollections', 'type': '[AzureFirewallNetworkRuleCollection]'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[AzureFirewallIPConfiguration]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'threat_intel_mode': {'key': 'properties.threatIntelMode', 'type': 'str'}, + 'virtual_hub': {'key': 'properties.virtualHub', 'type': 'SubResource'}, + 'firewall_policy': {'key': 'properties.firewallPolicy', 'type': 'SubResource'}, + 'hub_ip_addresses': {'key': 'properties.hubIpAddresses', 'type': 'HubIPAddresses'}, + 'sku': {'key': 'properties.sku', 'type': 'AzureFirewallSku'}, + 'additional_properties': {'key': 'properties.additionalProperties', 'type': '{str}'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewall, self).__init__(**kwargs) + self.application_rule_collections = kwargs.get('application_rule_collections', None) + self.nat_rule_collections = kwargs.get('nat_rule_collections', None) + self.network_rule_collections = kwargs.get('network_rule_collections', None) + self.ip_configurations = kwargs.get('ip_configurations', None) + self.provisioning_state = None + self.threat_intel_mode = kwargs.get('threat_intel_mode', None) + self.virtual_hub = kwargs.get('virtual_hub', None) + self.firewall_policy = kwargs.get('firewall_policy', None) + self.hub_ip_addresses = None + self.sku = kwargs.get('sku', None) + self.additional_properties = kwargs.get('additional_properties', None) + self.zones = kwargs.get('zones', None) + self.etag = None + + +class AzureFirewallApplicationRule(Model): + """Properties of an application rule. + + :param name: Name of the application rule. + :type name: str + :param description: Description of the rule. + :type description: str + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param protocols: Array of ApplicationRuleProtocols. + :type protocols: + list[~azure.mgmt.network.v2019_09_01.models.AzureFirewallApplicationRuleProtocol] + :param target_fqdns: List of FQDNs for this rule. + :type target_fqdns: list[str] + :param fqdn_tags: List of FQDN Tags for this rule. + :type fqdn_tags: list[str] + :param source_ip_groups: List of source IpGroups for this rule. + :type source_ip_groups: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'protocols': {'key': 'protocols', 'type': '[AzureFirewallApplicationRuleProtocol]'}, + 'target_fqdns': {'key': 'targetFqdns', 'type': '[str]'}, + 'fqdn_tags': {'key': 'fqdnTags', 'type': '[str]'}, + 'source_ip_groups': {'key': 'sourceIpGroups', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallApplicationRule, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.description = kwargs.get('description', None) + self.source_addresses = kwargs.get('source_addresses', None) + self.protocols = kwargs.get('protocols', None) + self.target_fqdns = kwargs.get('target_fqdns', None) + self.fqdn_tags = kwargs.get('fqdn_tags', None) + self.source_ip_groups = kwargs.get('source_ip_groups', None) + + +class AzureFirewallApplicationRuleCollection(SubResource): + """Application rule collection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param priority: Priority of the application rule collection resource. + :type priority: int + :param action: The action type of a rule collection. + :type action: ~azure.mgmt.network.v2019_09_01.models.AzureFirewallRCAction + :param rules: Collection of rules used by a application rule collection. + :type rules: + list[~azure.mgmt.network.v2019_09_01.models.AzureFirewallApplicationRule] + :ivar provisioning_state: The provisioning state of the application rule + collection resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within the Azure + firewall. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'action': {'key': 'properties.action', 'type': 'AzureFirewallRCAction'}, + 'rules': {'key': 'properties.rules', 'type': '[AzureFirewallApplicationRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallApplicationRuleCollection, self).__init__(**kwargs) + self.priority = kwargs.get('priority', None) + self.action = kwargs.get('action', None) + self.rules = kwargs.get('rules', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + + +class AzureFirewallApplicationRuleProtocol(Model): + """Properties of the application rule protocol. + + :param protocol_type: Protocol type. Possible values include: 'Http', + 'Https', 'Mssql' + :type protocol_type: str or + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallApplicationRuleProtocolType + :param port: Port number for the protocol, cannot be greater than 64000. + This field is optional. + :type port: int + """ + + _validation = { + 'port': {'maximum': 64000, 'minimum': 0}, + } + + _attribute_map = { + 'protocol_type': {'key': 'protocolType', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallApplicationRuleProtocol, self).__init__(**kwargs) + self.protocol_type = kwargs.get('protocol_type', None) + self.port = kwargs.get('port', None) + + +class AzureFirewallFqdnTag(Resource): + """Azure Firewall FQDN Tag Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar provisioning_state: The provisioning state of the Azure firewall + FQDN tag resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar fqdn_tag_name: The name of this FQDN Tag. + :vartype fqdn_tag_name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'fqdn_tag_name': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'fqdn_tag_name': {'key': 'properties.fqdnTagName', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallFqdnTag, self).__init__(**kwargs) + self.provisioning_state = None + self.fqdn_tag_name = None + self.etag = None + + +class AzureFirewallIPConfiguration(SubResource): + """IP configuration of an Azure Firewall. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar private_ip_address: The Firewall Internal Load Balancer IP to be + used as the next hop in User Defined Routes. + :vartype private_ip_address: str + :param subnet: Reference of the subnet resource. This resource must be + named 'AzureFirewallSubnet'. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param public_ip_address: Reference of the PublicIP resource. This field + is a mandatory input if subnet is not null. + :type public_ip_address: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar provisioning_state: The provisioning state of the Azure firewall IP + configuration resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the resource that is unique within a resource group. + This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'private_ip_address': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallIPConfiguration, self).__init__(**kwargs) + self.private_ip_address = None + self.subnet = kwargs.get('subnet', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + + +class AzureFirewallNatRCAction(Model): + """AzureFirewall NAT Rule Collection Action. + + :param type: The type of action. Possible values include: 'Snat', 'Dnat' + :type type: str or + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallNatRCActionType + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallNatRCAction, self).__init__(**kwargs) + self.type = kwargs.get('type', None) + + +class AzureFirewallNatRule(Model): + """Properties of a NAT rule. + + :param name: Name of the NAT rule. + :type name: str + :param description: Description of the rule. + :type description: str + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param destination_addresses: List of destination IP addresses for this + rule. Supports IP ranges, prefixes, and service tags. + :type destination_addresses: list[str] + :param destination_ports: List of destination ports. + :type destination_ports: list[str] + :param protocols: Array of AzureFirewallNetworkRuleProtocols applicable to + this NAT rule. + :type protocols: list[str or + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallNetworkRuleProtocol] + :param translated_address: The translated address for this NAT rule. + :type translated_address: str + :param translated_port: The translated port for this NAT rule. + :type translated_port: str + :param translated_fqdn: The translated FQDN for this NAT rule. + :type translated_fqdn: str + :param source_ip_groups: List of source IpGroups for this rule. + :type source_ip_groups: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'destination_addresses': {'key': 'destinationAddresses', 'type': '[str]'}, + 'destination_ports': {'key': 'destinationPorts', 'type': '[str]'}, + 'protocols': {'key': 'protocols', 'type': '[str]'}, + 'translated_address': {'key': 'translatedAddress', 'type': 'str'}, + 'translated_port': {'key': 'translatedPort', 'type': 'str'}, + 'translated_fqdn': {'key': 'translatedFqdn', 'type': 'str'}, + 'source_ip_groups': {'key': 'sourceIpGroups', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallNatRule, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.description = kwargs.get('description', None) + self.source_addresses = kwargs.get('source_addresses', None) + self.destination_addresses = kwargs.get('destination_addresses', None) + self.destination_ports = kwargs.get('destination_ports', None) + self.protocols = kwargs.get('protocols', None) + self.translated_address = kwargs.get('translated_address', None) + self.translated_port = kwargs.get('translated_port', None) + self.translated_fqdn = kwargs.get('translated_fqdn', None) + self.source_ip_groups = kwargs.get('source_ip_groups', None) + + +class AzureFirewallNatRuleCollection(SubResource): + """NAT rule collection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param priority: Priority of the NAT rule collection resource. + :type priority: int + :param action: The action type of a NAT rule collection. + :type action: + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallNatRCAction + :param rules: Collection of rules used by a NAT rule collection. + :type rules: + list[~azure.mgmt.network.v2019_09_01.models.AzureFirewallNatRule] + :ivar provisioning_state: The provisioning state of the NAT rule + collection resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within the Azure + firewall. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'action': {'key': 'properties.action', 'type': 'AzureFirewallNatRCAction'}, + 'rules': {'key': 'properties.rules', 'type': '[AzureFirewallNatRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallNatRuleCollection, self).__init__(**kwargs) + self.priority = kwargs.get('priority', None) + self.action = kwargs.get('action', None) + self.rules = kwargs.get('rules', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + + +class AzureFirewallNetworkRule(Model): + """Properties of the network rule. + + :param name: Name of the network rule. + :type name: str + :param description: Description of the rule. + :type description: str + :param protocols: Array of AzureFirewallNetworkRuleProtocols. + :type protocols: list[str or + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallNetworkRuleProtocol] + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param destination_addresses: List of destination IP addresses. + :type destination_addresses: list[str] + :param destination_ports: List of destination ports. + :type destination_ports: list[str] + :param destination_fqdns: List of destination FQDNs. + :type destination_fqdns: list[str] + :param source_ip_groups: List of source IpGroups for this rule. + :type source_ip_groups: list[str] + :param destination_ip_groups: List of destination IpGroups for this rule. + :type destination_ip_groups: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'protocols': {'key': 'protocols', 'type': '[str]'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'destination_addresses': {'key': 'destinationAddresses', 'type': '[str]'}, + 'destination_ports': {'key': 'destinationPorts', 'type': '[str]'}, + 'destination_fqdns': {'key': 'destinationFqdns', 'type': '[str]'}, + 'source_ip_groups': {'key': 'sourceIpGroups', 'type': '[str]'}, + 'destination_ip_groups': {'key': 'destinationIpGroups', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallNetworkRule, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.description = kwargs.get('description', None) + self.protocols = kwargs.get('protocols', None) + self.source_addresses = kwargs.get('source_addresses', None) + self.destination_addresses = kwargs.get('destination_addresses', None) + self.destination_ports = kwargs.get('destination_ports', None) + self.destination_fqdns = kwargs.get('destination_fqdns', None) + self.source_ip_groups = kwargs.get('source_ip_groups', None) + self.destination_ip_groups = kwargs.get('destination_ip_groups', None) + + +class AzureFirewallNetworkRuleCollection(SubResource): + """Network rule collection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param priority: Priority of the network rule collection resource. + :type priority: int + :param action: The action type of a rule collection. + :type action: ~azure.mgmt.network.v2019_09_01.models.AzureFirewallRCAction + :param rules: Collection of rules used by a network rule collection. + :type rules: + list[~azure.mgmt.network.v2019_09_01.models.AzureFirewallNetworkRule] + :ivar provisioning_state: The provisioning state of the network rule + collection resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within the Azure + firewall. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'action': {'key': 'properties.action', 'type': 'AzureFirewallRCAction'}, + 'rules': {'key': 'properties.rules', 'type': '[AzureFirewallNetworkRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallNetworkRuleCollection, self).__init__(**kwargs) + self.priority = kwargs.get('priority', None) + self.action = kwargs.get('action', None) + self.rules = kwargs.get('rules', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + + +class AzureFirewallPublicIPAddress(Model): + """Public IP Address associated with azure firewall. + + :param address: Public IP Address value. + :type address: str + """ + + _attribute_map = { + 'address': {'key': 'address', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallPublicIPAddress, self).__init__(**kwargs) + self.address = kwargs.get('address', None) + + +class AzureFirewallRCAction(Model): + """Properties of the AzureFirewallRCAction. + + :param type: The type of action. Possible values include: 'Allow', 'Deny' + :type type: str or + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallRCActionType + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallRCAction, self).__init__(**kwargs) + self.type = kwargs.get('type', None) + + +class AzureFirewallSku(Model): + """SKU of an Azure Firewall. + + :param name: Name of an Azure Firewall SKU. Possible values include: + 'AZFW_VNet', 'AZFW_Hub' + :type name: str or + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallSkuName + :param tier: Tier of an Azure Firewall. Possible values include: + 'Standard' + :type tier: str or + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallSkuTier + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureFirewallSku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = kwargs.get('tier', None) + + +class AzureReachabilityReport(Model): + """Azure reachability report details. + + All required parameters must be populated in order to send to Azure. + + :param aggregation_level: Required. The aggregation level of Azure + reachability report. Can be Country, State or City. + :type aggregation_level: str + :param provider_location: Required. Parameters that define a geographic + location. + :type provider_location: + ~azure.mgmt.network.v2019_09_01.models.AzureReachabilityReportLocation + :param reachability_report: Required. List of Azure reachability report + items. + :type reachability_report: + list[~azure.mgmt.network.v2019_09_01.models.AzureReachabilityReportItem] + """ + + _validation = { + 'aggregation_level': {'required': True}, + 'provider_location': {'required': True}, + 'reachability_report': {'required': True}, + } + + _attribute_map = { + 'aggregation_level': {'key': 'aggregationLevel', 'type': 'str'}, + 'provider_location': {'key': 'providerLocation', 'type': 'AzureReachabilityReportLocation'}, + 'reachability_report': {'key': 'reachabilityReport', 'type': '[AzureReachabilityReportItem]'}, + } + + def __init__(self, **kwargs): + super(AzureReachabilityReport, self).__init__(**kwargs) + self.aggregation_level = kwargs.get('aggregation_level', None) + self.provider_location = kwargs.get('provider_location', None) + self.reachability_report = kwargs.get('reachability_report', None) + + +class AzureReachabilityReportItem(Model): + """Azure reachability report details for a given provider location. + + :param provider: The Internet service provider. + :type provider: str + :param azure_location: The Azure region. + :type azure_location: str + :param latencies: List of latency details for each of the time series. + :type latencies: + list[~azure.mgmt.network.v2019_09_01.models.AzureReachabilityReportLatencyInfo] + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'azure_location': {'key': 'azureLocation', 'type': 'str'}, + 'latencies': {'key': 'latencies', 'type': '[AzureReachabilityReportLatencyInfo]'}, + } + + def __init__(self, **kwargs): + super(AzureReachabilityReportItem, self).__init__(**kwargs) + self.provider = kwargs.get('provider', None) + self.azure_location = kwargs.get('azure_location', None) + self.latencies = kwargs.get('latencies', None) + + +class AzureReachabilityReportLatencyInfo(Model): + """Details on latency for a time series. + + :param time_stamp: The time stamp. + :type time_stamp: datetime + :param score: The relative latency score between 1 and 100, higher values + indicating a faster connection. + :type score: int + """ + + _validation = { + 'score': {'maximum': 100, 'minimum': 1}, + } + + _attribute_map = { + 'time_stamp': {'key': 'timeStamp', 'type': 'iso-8601'}, + 'score': {'key': 'score', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(AzureReachabilityReportLatencyInfo, self).__init__(**kwargs) + self.time_stamp = kwargs.get('time_stamp', None) + self.score = kwargs.get('score', None) + + +class AzureReachabilityReportLocation(Model): + """Parameters that define a geographic location. + + All required parameters must be populated in order to send to Azure. + + :param country: Required. The name of the country. + :type country: str + :param state: The name of the state. + :type state: str + :param city: The name of the city or town. + :type city: str + """ + + _validation = { + 'country': {'required': True}, + } + + _attribute_map = { + 'country': {'key': 'country', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'city': {'key': 'city', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(AzureReachabilityReportLocation, self).__init__(**kwargs) + self.country = kwargs.get('country', None) + self.state = kwargs.get('state', None) + self.city = kwargs.get('city', None) + + +class AzureReachabilityReportParameters(Model): + """Geographic and time constraints for Azure reachability report. + + All required parameters must be populated in order to send to Azure. + + :param provider_location: Required. Parameters that define a geographic + location. + :type provider_location: + ~azure.mgmt.network.v2019_09_01.models.AzureReachabilityReportLocation + :param providers: List of Internet service providers. + :type providers: list[str] + :param azure_locations: Optional Azure regions to scope the query to. + :type azure_locations: list[str] + :param start_time: Required. The start time for the Azure reachability + report. + :type start_time: datetime + :param end_time: Required. The end time for the Azure reachability report. + :type end_time: datetime + """ + + _validation = { + 'provider_location': {'required': True}, + 'start_time': {'required': True}, + 'end_time': {'required': True}, + } + + _attribute_map = { + 'provider_location': {'key': 'providerLocation', 'type': 'AzureReachabilityReportLocation'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + 'azure_locations': {'key': 'azureLocations', 'type': '[str]'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + } + + def __init__(self, **kwargs): + super(AzureReachabilityReportParameters, self).__init__(**kwargs) + self.provider_location = kwargs.get('provider_location', None) + self.providers = kwargs.get('providers', None) + self.azure_locations = kwargs.get('azure_locations', None) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + + +class BackendAddressPool(SubResource): + """Pool of backend IP addresses. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar backend_ip_configurations: An array of references to IP addresses + defined in network interfaces. + :vartype backend_ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfiguration] + :ivar load_balancing_rules: An array of references to load balancing rules + that use this backend address pool. + :vartype load_balancing_rules: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar outbound_rule: A reference to an outbound rule that uses this + backend address pool. + :vartype outbound_rule: ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar outbound_rules: An array of references to outbound rules that use + this backend address pool. + :vartype outbound_rules: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar provisioning_state: The provisioning state of the backend address + pool resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within the set of + backend address pools used by the load balancer. This name can be used to + access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'backend_ip_configurations': {'readonly': True}, + 'load_balancing_rules': {'readonly': True}, + 'outbound_rule': {'readonly': True}, + 'outbound_rules': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'backend_ip_configurations': {'key': 'properties.backendIPConfigurations', 'type': '[NetworkInterfaceIPConfiguration]'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[SubResource]'}, + 'outbound_rule': {'key': 'properties.outboundRule', 'type': 'SubResource'}, + 'outbound_rules': {'key': 'properties.outboundRules', 'type': '[SubResource]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(BackendAddressPool, self).__init__(**kwargs) + self.backend_ip_configurations = None + self.load_balancing_rules = None + self.outbound_rule = None + self.outbound_rules = None + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class BastionHost(Resource): + """Bastion Host resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param ip_configurations: IP configuration of the Bastion Host resource. + :type ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.BastionHostIPConfiguration] + :param dns_name: FQDN for the endpoint on which bastion host is + accessible. + :type dns_name: str + :ivar provisioning_state: The provisioning state of the bastion host + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[BastionHostIPConfiguration]'}, + 'dns_name': {'key': 'properties.dnsName', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(BastionHost, self).__init__(**kwargs) + self.ip_configurations = kwargs.get('ip_configurations', None) + self.dns_name = kwargs.get('dns_name', None) + self.provisioning_state = None + self.etag = None + + +class BastionHostIPConfiguration(SubResource): + """IP configuration of an Bastion Host. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param subnet: Required. Reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param public_ip_address: Required. Reference of the PublicIP resource. + :type public_ip_address: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar provisioning_state: The provisioning state of the bastion host IP + configuration resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param private_ip_allocation_method: Private IP allocation method. + Possible values include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2019_09_01.models.IPAllocationMethod + :param name: Name of the resource that is unique within a resource group. + This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Ip configuration type. + :vartype type: str + """ + + _validation = { + 'subnet': {'required': True}, + 'public_ip_address': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(BastionHostIPConfiguration, self).__init__(**kwargs) + self.subnet = kwargs.get('subnet', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.provisioning_state = None + self.private_ip_allocation_method = kwargs.get('private_ip_allocation_method', None) + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class BGPCommunity(Model): + """Contains bgp community information offered in Service Community resources. + + :param service_supported_region: The region which the service support. + e.g. For O365, region is Global. + :type service_supported_region: str + :param community_name: The name of the bgp community. e.g. Skype. + :type community_name: str + :param community_value: The value of the bgp community. For more + information: + https://docs.microsoft.com/en-us/azure/expressroute/expressroute-routing. + :type community_value: str + :param community_prefixes: The prefixes that the bgp community contains. + :type community_prefixes: list[str] + :param is_authorized_to_use: Customer is authorized to use bgp community + or not. + :type is_authorized_to_use: bool + :param service_group: The service group of the bgp community contains. + :type service_group: str + """ + + _attribute_map = { + 'service_supported_region': {'key': 'serviceSupportedRegion', 'type': 'str'}, + 'community_name': {'key': 'communityName', 'type': 'str'}, + 'community_value': {'key': 'communityValue', 'type': 'str'}, + 'community_prefixes': {'key': 'communityPrefixes', 'type': '[str]'}, + 'is_authorized_to_use': {'key': 'isAuthorizedToUse', 'type': 'bool'}, + 'service_group': {'key': 'serviceGroup', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(BGPCommunity, self).__init__(**kwargs) + self.service_supported_region = kwargs.get('service_supported_region', None) + self.community_name = kwargs.get('community_name', None) + self.community_value = kwargs.get('community_value', None) + self.community_prefixes = kwargs.get('community_prefixes', None) + self.is_authorized_to_use = kwargs.get('is_authorized_to_use', None) + self.service_group = kwargs.get('service_group', None) + + +class BgpPeerStatus(Model): + """BGP peer status details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar local_address: The virtual network gateway's local address. + :vartype local_address: str + :ivar neighbor: The remote BGP peer. + :vartype neighbor: str + :ivar asn: The autonomous system number of the remote BGP peer. + :vartype asn: int + :ivar state: The BGP peer state. Possible values include: 'Unknown', + 'Stopped', 'Idle', 'Connecting', 'Connected' + :vartype state: str or ~azure.mgmt.network.v2019_09_01.models.BgpPeerState + :ivar connected_duration: For how long the peering has been up. + :vartype connected_duration: str + :ivar routes_received: The number of routes learned from this peer. + :vartype routes_received: long + :ivar messages_sent: The number of BGP messages sent. + :vartype messages_sent: long + :ivar messages_received: The number of BGP messages received. + :vartype messages_received: long + """ + + _validation = { + 'local_address': {'readonly': True}, + 'neighbor': {'readonly': True}, + 'asn': {'readonly': True}, + 'state': {'readonly': True}, + 'connected_duration': {'readonly': True}, + 'routes_received': {'readonly': True}, + 'messages_sent': {'readonly': True}, + 'messages_received': {'readonly': True}, + } + + _attribute_map = { + 'local_address': {'key': 'localAddress', 'type': 'str'}, + 'neighbor': {'key': 'neighbor', 'type': 'str'}, + 'asn': {'key': 'asn', 'type': 'int'}, + 'state': {'key': 'state', 'type': 'str'}, + 'connected_duration': {'key': 'connectedDuration', 'type': 'str'}, + 'routes_received': {'key': 'routesReceived', 'type': 'long'}, + 'messages_sent': {'key': 'messagesSent', 'type': 'long'}, + 'messages_received': {'key': 'messagesReceived', 'type': 'long'}, + } + + def __init__(self, **kwargs): + super(BgpPeerStatus, self).__init__(**kwargs) + self.local_address = None + self.neighbor = None + self.asn = None + self.state = None + self.connected_duration = None + self.routes_received = None + self.messages_sent = None + self.messages_received = None + + +class BgpPeerStatusListResult(Model): + """Response for list BGP peer status API service call. + + :param value: List of BGP peers. + :type value: list[~azure.mgmt.network.v2019_09_01.models.BgpPeerStatus] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[BgpPeerStatus]'}, + } + + def __init__(self, **kwargs): + super(BgpPeerStatusListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + + +class BgpServiceCommunity(Resource): + """Service Community Properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param service_name: The name of the bgp community. e.g. Skype. + :type service_name: str + :param bgp_communities: A list of bgp communities. + :type bgp_communities: + list[~azure.mgmt.network.v2019_09_01.models.BGPCommunity] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'service_name': {'key': 'properties.serviceName', 'type': 'str'}, + 'bgp_communities': {'key': 'properties.bgpCommunities', 'type': '[BGPCommunity]'}, + } + + def __init__(self, **kwargs): + super(BgpServiceCommunity, self).__init__(**kwargs) + self.service_name = kwargs.get('service_name', None) + self.bgp_communities = kwargs.get('bgp_communities', None) + + +class BgpSettings(Model): + """BGP settings details. + + :param asn: The BGP speaker's ASN. + :type asn: long + :param bgp_peering_address: The BGP peering address and BGP identifier of + this BGP speaker. + :type bgp_peering_address: str + :param peer_weight: The weight added to routes learned from this BGP + speaker. + :type peer_weight: int + """ + + _attribute_map = { + 'asn': {'key': 'asn', 'type': 'long'}, + 'bgp_peering_address': {'key': 'bgpPeeringAddress', 'type': 'str'}, + 'peer_weight': {'key': 'peerWeight', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(BgpSettings, self).__init__(**kwargs) + self.asn = kwargs.get('asn', None) + self.bgp_peering_address = kwargs.get('bgp_peering_address', None) + self.peer_weight = kwargs.get('peer_weight', None) + + +class CheckPrivateLinkServiceVisibilityRequest(Model): + """Request body of the CheckPrivateLinkServiceVisibility API service call. + + :param private_link_service_alias: The alias of the private link service. + :type private_link_service_alias: str + """ + + _attribute_map = { + 'private_link_service_alias': {'key': 'privateLinkServiceAlias', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(CheckPrivateLinkServiceVisibilityRequest, self).__init__(**kwargs) + self.private_link_service_alias = kwargs.get('private_link_service_alias', None) + + +class CloudError(Model): + """An error response from the service. + + :param error: Cloud error body. + :type error: ~azure.mgmt.network.v2019_09_01.models.CloudErrorBody + """ + + _attribute_map = { + 'error': {'key': 'error', 'type': 'CloudErrorBody'}, + } + + def __init__(self, **kwargs): + super(CloudError, self).__init__(**kwargs) + self.error = kwargs.get('error', None) + + +class CloudErrorException(HttpOperationError): + """Server responsed with exception of type: 'CloudError'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(CloudErrorException, self).__init__(deserialize, response, 'CloudError', *args) + + +class CloudErrorBody(Model): + """An error response from the service. + + :param code: An identifier for the error. Codes are invariant and are + intended to be consumed programmatically. + :type code: str + :param message: A message describing the error, intended to be suitable + for display in a user interface. + :type message: str + :param target: The target of the particular error. For example, the name + of the property in error. + :type target: str + :param details: A list of additional details about the error. + :type details: list[~azure.mgmt.network.v2019_09_01.models.CloudErrorBody] + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'details': {'key': 'details', 'type': '[CloudErrorBody]'}, + } + + def __init__(self, **kwargs): + super(CloudErrorBody, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) + self.target = kwargs.get('target', None) + self.details = kwargs.get('details', None) + + +class ConnectionMonitor(Model): + """Parameters that define the operation to create a connection monitor. + + All required parameters must be populated in order to send to Azure. + + :param location: Connection monitor location. + :type location: str + :param tags: Connection monitor tags. + :type tags: dict[str, str] + :param source: Required. Describes the source of connection monitor. + :type source: + ~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorSource + :param destination: Required. Describes the destination of connection + monitor. + :type destination: + ~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorDestination + :param auto_start: Determines if the connection monitor will start + automatically once created. Default value: True . + :type auto_start: bool + :param monitoring_interval_in_seconds: Monitoring interval in seconds. + Default value: 60 . + :type monitoring_interval_in_seconds: int + """ + + _validation = { + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'source': {'key': 'properties.source', 'type': 'ConnectionMonitorSource'}, + 'destination': {'key': 'properties.destination', 'type': 'ConnectionMonitorDestination'}, + 'auto_start': {'key': 'properties.autoStart', 'type': 'bool'}, + 'monitoring_interval_in_seconds': {'key': 'properties.monitoringIntervalInSeconds', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectionMonitor, self).__init__(**kwargs) + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) + self.source = kwargs.get('source', None) + self.destination = kwargs.get('destination', None) + self.auto_start = kwargs.get('auto_start', True) + self.monitoring_interval_in_seconds = kwargs.get('monitoring_interval_in_seconds', 60) + + +class ConnectionMonitorDestination(Model): + """Describes the destination of connection monitor. + + :param resource_id: The ID of the resource used as the destination by + connection monitor. + :type resource_id: str + :param address: Address of the connection monitor destination (IP or + domain name). + :type address: str + :param port: The destination port used by connection monitor. + :type port: int + """ + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'address': {'key': 'address', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectionMonitorDestination, self).__init__(**kwargs) + self.resource_id = kwargs.get('resource_id', None) + self.address = kwargs.get('address', None) + self.port = kwargs.get('port', None) + + +class ConnectionMonitorParameters(Model): + """Parameters that define the operation to create a connection monitor. + + All required parameters must be populated in order to send to Azure. + + :param source: Required. Describes the source of connection monitor. + :type source: + ~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorSource + :param destination: Required. Describes the destination of connection + monitor. + :type destination: + ~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorDestination + :param auto_start: Determines if the connection monitor will start + automatically once created. Default value: True . + :type auto_start: bool + :param monitoring_interval_in_seconds: Monitoring interval in seconds. + Default value: 60 . + :type monitoring_interval_in_seconds: int + """ + + _validation = { + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'source': {'key': 'source', 'type': 'ConnectionMonitorSource'}, + 'destination': {'key': 'destination', 'type': 'ConnectionMonitorDestination'}, + 'auto_start': {'key': 'autoStart', 'type': 'bool'}, + 'monitoring_interval_in_seconds': {'key': 'monitoringIntervalInSeconds', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectionMonitorParameters, self).__init__(**kwargs) + self.source = kwargs.get('source', None) + self.destination = kwargs.get('destination', None) + self.auto_start = kwargs.get('auto_start', True) + self.monitoring_interval_in_seconds = kwargs.get('monitoring_interval_in_seconds', 60) + + +class ConnectionMonitorQueryResult(Model): + """List of connection states snapshots. + + :param source_status: Status of connection monitor source. Possible values + include: 'Unknown', 'Active', 'Inactive' + :type source_status: str or + ~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorSourceStatus + :param states: Information about connection states. + :type states: + list[~azure.mgmt.network.v2019_09_01.models.ConnectionStateSnapshot] + """ + + _attribute_map = { + 'source_status': {'key': 'sourceStatus', 'type': 'str'}, + 'states': {'key': 'states', 'type': '[ConnectionStateSnapshot]'}, + } + + def __init__(self, **kwargs): + super(ConnectionMonitorQueryResult, self).__init__(**kwargs) + self.source_status = kwargs.get('source_status', None) + self.states = kwargs.get('states', None) + + +class ConnectionMonitorResult(Model): + """Information about the connection monitor. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar name: Name of the connection monitor. + :vartype name: str + :ivar id: ID of the connection monitor. + :vartype id: str + :param etag: A unique read-only string that changes whenever the resource + is updated. Default value: "A unique read-only string that changes + whenever the resource is updated." . + :type etag: str + :ivar type: Connection monitor type. + :vartype type: str + :param location: Connection monitor location. + :type location: str + :param tags: Connection monitor tags. + :type tags: dict[str, str] + :param source: Required. Describes the source of connection monitor. + :type source: + ~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorSource + :param destination: Required. Describes the destination of connection + monitor. + :type destination: + ~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorDestination + :param auto_start: Determines if the connection monitor will start + automatically once created. Default value: True . + :type auto_start: bool + :param monitoring_interval_in_seconds: Monitoring interval in seconds. + Default value: 60 . + :type monitoring_interval_in_seconds: int + :param provisioning_state: The provisioning state of the connection + monitor. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param start_time: The date and time when the connection monitor was + started. + :type start_time: datetime + :param monitoring_status: The monitoring status of the connection monitor. + :type monitoring_status: str + """ + + _validation = { + 'name': {'readonly': True}, + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'source': {'key': 'properties.source', 'type': 'ConnectionMonitorSource'}, + 'destination': {'key': 'properties.destination', 'type': 'ConnectionMonitorDestination'}, + 'auto_start': {'key': 'properties.autoStart', 'type': 'bool'}, + 'monitoring_interval_in_seconds': {'key': 'properties.monitoringIntervalInSeconds', 'type': 'int'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'start_time': {'key': 'properties.startTime', 'type': 'iso-8601'}, + 'monitoring_status': {'key': 'properties.monitoringStatus', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ConnectionMonitorResult, self).__init__(**kwargs) + self.name = None + self.id = None + self.etag = kwargs.get('etag', "A unique read-only string that changes whenever the resource is updated.") + self.type = None + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) + self.source = kwargs.get('source', None) + self.destination = kwargs.get('destination', None) + self.auto_start = kwargs.get('auto_start', True) + self.monitoring_interval_in_seconds = kwargs.get('monitoring_interval_in_seconds', 60) + self.provisioning_state = kwargs.get('provisioning_state', None) + self.start_time = kwargs.get('start_time', None) + self.monitoring_status = kwargs.get('monitoring_status', None) + + +class ConnectionMonitorSource(Model): + """Describes the source of connection monitor. + + All required parameters must be populated in order to send to Azure. + + :param resource_id: Required. The ID of the resource used as the source by + connection monitor. + :type resource_id: str + :param port: The source port used by connection monitor. + :type port: int + """ + + _validation = { + 'resource_id': {'required': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectionMonitorSource, self).__init__(**kwargs) + self.resource_id = kwargs.get('resource_id', None) + self.port = kwargs.get('port', None) + + +class ConnectionResetSharedKey(Model): + """The virtual network connection reset shared key. + + All required parameters must be populated in order to send to Azure. + + :param key_length: Required. The virtual network connection reset shared + key length, should between 1 and 128. + :type key_length: int + """ + + _validation = { + 'key_length': {'required': True, 'maximum': 128, 'minimum': 1}, + } + + _attribute_map = { + 'key_length': {'key': 'keyLength', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectionResetSharedKey, self).__init__(**kwargs) + self.key_length = kwargs.get('key_length', None) + + +class ConnectionSharedKey(SubResource): + """Response for GetConnectionSharedKey API service call. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param value: Required. The virtual network connection shared key value. + :type value: str + """ + + _validation = { + 'value': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ConnectionSharedKey, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + + +class ConnectionStateSnapshot(Model): + """Connection state snapshot. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param connection_state: The connection state. Possible values include: + 'Reachable', 'Unreachable', 'Unknown' + :type connection_state: str or + ~azure.mgmt.network.v2019_09_01.models.ConnectionState + :param start_time: The start time of the connection snapshot. + :type start_time: datetime + :param end_time: The end time of the connection snapshot. + :type end_time: datetime + :param evaluation_state: Connectivity analysis evaluation state. Possible + values include: 'NotStarted', 'InProgress', 'Completed' + :type evaluation_state: str or + ~azure.mgmt.network.v2019_09_01.models.EvaluationState + :param avg_latency_in_ms: Average latency in ms. + :type avg_latency_in_ms: int + :param min_latency_in_ms: Minimum latency in ms. + :type min_latency_in_ms: int + :param max_latency_in_ms: Maximum latency in ms. + :type max_latency_in_ms: int + :param probes_sent: The number of sent probes. + :type probes_sent: int + :param probes_failed: The number of failed probes. + :type probes_failed: int + :ivar hops: List of hops between the source and the destination. + :vartype hops: + list[~azure.mgmt.network.v2019_09_01.models.ConnectivityHop] + """ + + _validation = { + 'hops': {'readonly': True}, + } + + _attribute_map = { + 'connection_state': {'key': 'connectionState', 'type': 'str'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'evaluation_state': {'key': 'evaluationState', 'type': 'str'}, + 'avg_latency_in_ms': {'key': 'avgLatencyInMs', 'type': 'int'}, + 'min_latency_in_ms': {'key': 'minLatencyInMs', 'type': 'int'}, + 'max_latency_in_ms': {'key': 'maxLatencyInMs', 'type': 'int'}, + 'probes_sent': {'key': 'probesSent', 'type': 'int'}, + 'probes_failed': {'key': 'probesFailed', 'type': 'int'}, + 'hops': {'key': 'hops', 'type': '[ConnectivityHop]'}, + } + + def __init__(self, **kwargs): + super(ConnectionStateSnapshot, self).__init__(**kwargs) + self.connection_state = kwargs.get('connection_state', None) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.evaluation_state = kwargs.get('evaluation_state', None) + self.avg_latency_in_ms = kwargs.get('avg_latency_in_ms', None) + self.min_latency_in_ms = kwargs.get('min_latency_in_ms', None) + self.max_latency_in_ms = kwargs.get('max_latency_in_ms', None) + self.probes_sent = kwargs.get('probes_sent', None) + self.probes_failed = kwargs.get('probes_failed', None) + self.hops = None + + +class ConnectivityDestination(Model): + """Parameters that define destination of connection. + + :param resource_id: The ID of the resource to which a connection attempt + will be made. + :type resource_id: str + :param address: The IP address or URI the resource to which a connection + attempt will be made. + :type address: str + :param port: Port on which check connectivity will be performed. + :type port: int + """ + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'address': {'key': 'address', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectivityDestination, self).__init__(**kwargs) + self.resource_id = kwargs.get('resource_id', None) + self.address = kwargs.get('address', None) + self.port = kwargs.get('port', None) + + +class ConnectivityHop(Model): + """Information about a hop between the source and the destination. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar type: The type of the hop. + :vartype type: str + :ivar id: The ID of the hop. + :vartype id: str + :ivar address: The IP address of the hop. + :vartype address: str + :ivar resource_id: The ID of the resource corresponding to this hop. + :vartype resource_id: str + :ivar next_hop_ids: List of next hop identifiers. + :vartype next_hop_ids: list[str] + :ivar issues: List of issues. + :vartype issues: + list[~azure.mgmt.network.v2019_09_01.models.ConnectivityIssue] + """ + + _validation = { + 'type': {'readonly': True}, + 'id': {'readonly': True}, + 'address': {'readonly': True}, + 'resource_id': {'readonly': True}, + 'next_hop_ids': {'readonly': True}, + 'issues': {'readonly': True}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'address': {'key': 'address', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'next_hop_ids': {'key': 'nextHopIds', 'type': '[str]'}, + 'issues': {'key': 'issues', 'type': '[ConnectivityIssue]'}, + } + + def __init__(self, **kwargs): + super(ConnectivityHop, self).__init__(**kwargs) + self.type = None + self.id = None + self.address = None + self.resource_id = None + self.next_hop_ids = None + self.issues = None + + +class ConnectivityInformation(Model): + """Information on the connectivity status. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar hops: List of hops between the source and the destination. + :vartype hops: + list[~azure.mgmt.network.v2019_09_01.models.ConnectivityHop] + :ivar connection_status: The connection status. Possible values include: + 'Unknown', 'Connected', 'Disconnected', 'Degraded' + :vartype connection_status: str or + ~azure.mgmt.network.v2019_09_01.models.ConnectionStatus + :ivar avg_latency_in_ms: Average latency in milliseconds. + :vartype avg_latency_in_ms: int + :ivar min_latency_in_ms: Minimum latency in milliseconds. + :vartype min_latency_in_ms: int + :ivar max_latency_in_ms: Maximum latency in milliseconds. + :vartype max_latency_in_ms: int + :ivar probes_sent: Total number of probes sent. + :vartype probes_sent: int + :ivar probes_failed: Number of failed probes. + :vartype probes_failed: int + """ + + _validation = { + 'hops': {'readonly': True}, + 'connection_status': {'readonly': True}, + 'avg_latency_in_ms': {'readonly': True}, + 'min_latency_in_ms': {'readonly': True}, + 'max_latency_in_ms': {'readonly': True}, + 'probes_sent': {'readonly': True}, + 'probes_failed': {'readonly': True}, + } + + _attribute_map = { + 'hops': {'key': 'hops', 'type': '[ConnectivityHop]'}, + 'connection_status': {'key': 'connectionStatus', 'type': 'str'}, + 'avg_latency_in_ms': {'key': 'avgLatencyInMs', 'type': 'int'}, + 'min_latency_in_ms': {'key': 'minLatencyInMs', 'type': 'int'}, + 'max_latency_in_ms': {'key': 'maxLatencyInMs', 'type': 'int'}, + 'probes_sent': {'key': 'probesSent', 'type': 'int'}, + 'probes_failed': {'key': 'probesFailed', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectivityInformation, self).__init__(**kwargs) + self.hops = None + self.connection_status = None + self.avg_latency_in_ms = None + self.min_latency_in_ms = None + self.max_latency_in_ms = None + self.probes_sent = None + self.probes_failed = None + + +class ConnectivityIssue(Model): + """Information about an issue encountered in the process of checking for + connectivity. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar origin: The origin of the issue. Possible values include: 'Local', + 'Inbound', 'Outbound' + :vartype origin: str or ~azure.mgmt.network.v2019_09_01.models.Origin + :ivar severity: The severity of the issue. Possible values include: + 'Error', 'Warning' + :vartype severity: str or ~azure.mgmt.network.v2019_09_01.models.Severity + :ivar type: The type of issue. Possible values include: 'Unknown', + 'AgentStopped', 'GuestFirewall', 'DnsResolution', 'SocketBind', + 'NetworkSecurityRule', 'UserDefinedRoute', 'PortThrottled', 'Platform' + :vartype type: str or ~azure.mgmt.network.v2019_09_01.models.IssueType + :ivar context: Provides additional context on the issue. + :vartype context: list[dict[str, str]] + """ + + _validation = { + 'origin': {'readonly': True}, + 'severity': {'readonly': True}, + 'type': {'readonly': True}, + 'context': {'readonly': True}, + } + + _attribute_map = { + 'origin': {'key': 'origin', 'type': 'str'}, + 'severity': {'key': 'severity', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'context': {'key': 'context', 'type': '[{str}]'}, + } + + def __init__(self, **kwargs): + super(ConnectivityIssue, self).__init__(**kwargs) + self.origin = None + self.severity = None + self.type = None + self.context = None + + +class ConnectivityParameters(Model): + """Parameters that determine how the connectivity check will be performed. + + All required parameters must be populated in order to send to Azure. + + :param source: Required. Describes the source of the connection. + :type source: ~azure.mgmt.network.v2019_09_01.models.ConnectivitySource + :param destination: Required. Describes the destination of connection. + :type destination: + ~azure.mgmt.network.v2019_09_01.models.ConnectivityDestination + :param protocol: Network protocol. Possible values include: 'Tcp', 'Http', + 'Https', 'Icmp' + :type protocol: str or ~azure.mgmt.network.v2019_09_01.models.Protocol + :param protocol_configuration: Configuration of the protocol. + :type protocol_configuration: + ~azure.mgmt.network.v2019_09_01.models.ProtocolConfiguration + """ + + _validation = { + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'source': {'key': 'source', 'type': 'ConnectivitySource'}, + 'destination': {'key': 'destination', 'type': 'ConnectivityDestination'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'protocol_configuration': {'key': 'protocolConfiguration', 'type': 'ProtocolConfiguration'}, + } + + def __init__(self, **kwargs): + super(ConnectivityParameters, self).__init__(**kwargs) + self.source = kwargs.get('source', None) + self.destination = kwargs.get('destination', None) + self.protocol = kwargs.get('protocol', None) + self.protocol_configuration = kwargs.get('protocol_configuration', None) + + +class ConnectivitySource(Model): + """Parameters that define the source of the connection. + + All required parameters must be populated in order to send to Azure. + + :param resource_id: Required. The ID of the resource from which a + connectivity check will be initiated. + :type resource_id: str + :param port: The source port from which a connectivity check will be + performed. + :type port: int + """ + + _validation = { + 'resource_id': {'required': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ConnectivitySource, self).__init__(**kwargs) + self.resource_id = kwargs.get('resource_id', None) + self.port = kwargs.get('port', None) + + +class Container(SubResource): + """Reference to container resource in remote resource provider. + + :param id: Resource ID. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Container, self).__init__(**kwargs) + + +class ContainerNetworkInterface(SubResource): + """Container network interface child resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar container_network_interface_configuration: Container network + interface configuration from which this container network interface is + created. + :vartype container_network_interface_configuration: + ~azure.mgmt.network.v2019_09_01.models.ContainerNetworkInterfaceConfiguration + :param container: Reference to the container to which this container + network interface is attached. + :type container: ~azure.mgmt.network.v2019_09_01.models.Container + :ivar ip_configurations: Reference to the ip configuration on this + container nic. + :vartype ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.ContainerNetworkInterfaceIpConfiguration] + :ivar provisioning_state: The provisioning state of the container network + interface resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource. This name can be used to access the + resource. + :type name: str + :ivar type: Sub Resource type. + :vartype type: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'container_network_interface_configuration': {'readonly': True}, + 'ip_configurations': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'container_network_interface_configuration': {'key': 'properties.containerNetworkInterfaceConfiguration', 'type': 'ContainerNetworkInterfaceConfiguration'}, + 'container': {'key': 'properties.container', 'type': 'Container'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[ContainerNetworkInterfaceIpConfiguration]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ContainerNetworkInterface, self).__init__(**kwargs) + self.container_network_interface_configuration = None + self.container = kwargs.get('container', None) + self.ip_configurations = None + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.type = None + self.etag = None + + +class ContainerNetworkInterfaceConfiguration(SubResource): + """Container network interface configuration child resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param ip_configurations: A list of ip configurations of the container + network interface configuration. + :type ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.IPConfigurationProfile] + :param container_network_interfaces: A list of container network + interfaces created from this container network interface configuration. + :type container_network_interfaces: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar provisioning_state: The provisioning state of the container network + interface configuration resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource. This name can be used to access the + resource. + :type name: str + :ivar type: Sub Resource type. + :vartype type: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[IPConfigurationProfile]'}, + 'container_network_interfaces': {'key': 'properties.containerNetworkInterfaces', 'type': '[SubResource]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ContainerNetworkInterfaceConfiguration, self).__init__(**kwargs) + self.ip_configurations = kwargs.get('ip_configurations', None) + self.container_network_interfaces = kwargs.get('container_network_interfaces', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.type = None + self.etag = None + + +class ContainerNetworkInterfaceIpConfiguration(Model): + """The ip configuration for a container network interface. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar provisioning_state: The provisioning state of the container network + interface IP configuration resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource. This name can be used to access the + resource. + :type name: str + :ivar type: Sub Resource type. + :vartype type: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ContainerNetworkInterfaceIpConfiguration, self).__init__(**kwargs) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.type = None + self.etag = None + + +class DdosCustomPolicy(Resource): + """A DDoS custom policy in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar resource_guid: The resource GUID property of the DDoS custom policy + resource. It uniquely identifies the resource, even if the user changes + its name or migrate the resource across subscriptions or resource groups. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the DDoS custom policy + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar public_ip_addresses: The list of public IPs associated with the DDoS + custom policy resource. This list is read-only. + :vartype public_ip_addresses: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param protocol_custom_settings: The protocol-specific DDoS policy + customization parameters. + :type protocol_custom_settings: + list[~azure.mgmt.network.v2019_09_01.models.ProtocolCustomSettingsFormat] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'public_ip_addresses': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'public_ip_addresses': {'key': 'properties.publicIPAddresses', 'type': '[SubResource]'}, + 'protocol_custom_settings': {'key': 'properties.protocolCustomSettings', 'type': '[ProtocolCustomSettingsFormat]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(DdosCustomPolicy, self).__init__(**kwargs) + self.resource_guid = None + self.provisioning_state = None + self.public_ip_addresses = None + self.protocol_custom_settings = kwargs.get('protocol_custom_settings', None) + self.etag = None + + +class DdosProtectionPlan(Model): + """A DDoS protection plan in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar resource_guid: The resource GUID property of the DDoS protection + plan resource. It uniquely identifies the resource, even if the user + changes its name or migrate the resource across subscriptions or resource + groups. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the DDoS protection + plan resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar virtual_networks: The list of virtual networks associated with the + DDoS protection plan resource. This list is read-only. + :vartype virtual_networks: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'virtual_networks': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'virtual_networks': {'key': 'properties.virtualNetworks', 'type': '[SubResource]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(DdosProtectionPlan, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = kwargs.get('location', None) + self.tags = kwargs.get('tags', None) + self.resource_guid = None + self.provisioning_state = None + self.virtual_networks = None + self.etag = None + + +class DdosSettings(Model): + """Contains the DDoS protection settings of the public IP. + + :param ddos_custom_policy: The DDoS custom policy associated with the + public IP. + :type ddos_custom_policy: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param protection_coverage: The DDoS protection policy customizability of + the public IP. Only standard coverage will have the ability to be + customized. Possible values include: 'Basic', 'Standard' + :type protection_coverage: str or + ~azure.mgmt.network.v2019_09_01.models.DdosSettingsProtectionCoverage + """ + + _attribute_map = { + 'ddos_custom_policy': {'key': 'ddosCustomPolicy', 'type': 'SubResource'}, + 'protection_coverage': {'key': 'protectionCoverage', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(DdosSettings, self).__init__(**kwargs) + self.ddos_custom_policy = kwargs.get('ddos_custom_policy', None) + self.protection_coverage = kwargs.get('protection_coverage', None) + + +class Delegation(SubResource): + """Details the service to which the subnet is delegated. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param service_name: The name of the service to whom the subnet should be + delegated (e.g. Microsoft.Sql/servers). + :type service_name: str + :ivar actions: Describes the actions permitted to the service upon + delegation. + :vartype actions: list[str] + :ivar provisioning_state: The provisioning state of the service delegation + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a subnet. This + name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'actions': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'service_name': {'key': 'properties.serviceName', 'type': 'str'}, + 'actions': {'key': 'properties.actions', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Delegation, self).__init__(**kwargs) + self.service_name = kwargs.get('service_name', None) + self.actions = None + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + + +class DeviceProperties(Model): + """List of properties of the device. + + :param device_vendor: Name of the device Vendor. + :type device_vendor: str + :param device_model: Model of the device. + :type device_model: str + :param link_speed_in_mbps: Link speed. + :type link_speed_in_mbps: int + """ + + _attribute_map = { + 'device_vendor': {'key': 'deviceVendor', 'type': 'str'}, + 'device_model': {'key': 'deviceModel', 'type': 'str'}, + 'link_speed_in_mbps': {'key': 'linkSpeedInMbps', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(DeviceProperties, self).__init__(**kwargs) + self.device_vendor = kwargs.get('device_vendor', None) + self.device_model = kwargs.get('device_model', None) + self.link_speed_in_mbps = kwargs.get('link_speed_in_mbps', None) + + +class DhcpOptions(Model): + """DhcpOptions contains an array of DNS servers available to VMs deployed in + the virtual network. Standard DHCP option for a subnet overrides VNET DHCP + options. + + :param dns_servers: The list of DNS servers IP addresses. + :type dns_servers: list[str] + """ + + _attribute_map = { + 'dns_servers': {'key': 'dnsServers', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(DhcpOptions, self).__init__(**kwargs) + self.dns_servers = kwargs.get('dns_servers', None) + + +class Dimension(Model): + """Dimension of the metric. + + :param name: The name of the dimension. + :type name: str + :param display_name: The display name of the dimension. + :type display_name: str + :param internal_name: The internal name of the dimension. + :type internal_name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'internal_name': {'key': 'internalName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Dimension, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display_name = kwargs.get('display_name', None) + self.internal_name = kwargs.get('internal_name', None) + + +class DnsNameAvailabilityResult(Model): + """Response for the CheckDnsNameAvailability API service call. + + :param available: Domain availability (True/False). + :type available: bool + """ + + _attribute_map = { + 'available': {'key': 'available', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(DnsNameAvailabilityResult, self).__init__(**kwargs) + self.available = kwargs.get('available', None) + + +class EffectiveNetworkSecurityGroup(Model): + """Effective network security group. + + :param network_security_group: The ID of network security group that is + applied. + :type network_security_group: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param association: Associated resources. + :type association: + ~azure.mgmt.network.v2019_09_01.models.EffectiveNetworkSecurityGroupAssociation + :param effective_security_rules: A collection of effective security rules. + :type effective_security_rules: + list[~azure.mgmt.network.v2019_09_01.models.EffectiveNetworkSecurityRule] + :param tag_map: Mapping of tags to list of IP Addresses included within + the tag. + :type tag_map: dict[str, list[str]] + """ + + _attribute_map = { + 'network_security_group': {'key': 'networkSecurityGroup', 'type': 'SubResource'}, + 'association': {'key': 'association', 'type': 'EffectiveNetworkSecurityGroupAssociation'}, + 'effective_security_rules': {'key': 'effectiveSecurityRules', 'type': '[EffectiveNetworkSecurityRule]'}, + 'tag_map': {'key': 'tagMap', 'type': '{[str]}'}, + } + + def __init__(self, **kwargs): + super(EffectiveNetworkSecurityGroup, self).__init__(**kwargs) + self.network_security_group = kwargs.get('network_security_group', None) + self.association = kwargs.get('association', None) + self.effective_security_rules = kwargs.get('effective_security_rules', None) + self.tag_map = kwargs.get('tag_map', None) + + +class EffectiveNetworkSecurityGroupAssociation(Model): + """The effective network security group association. + + :param subnet: The ID of the subnet if assigned. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param network_interface: The ID of the network interface if assigned. + :type network_interface: + ~azure.mgmt.network.v2019_09_01.models.SubResource + """ + + _attribute_map = { + 'subnet': {'key': 'subnet', 'type': 'SubResource'}, + 'network_interface': {'key': 'networkInterface', 'type': 'SubResource'}, + } + + def __init__(self, **kwargs): + super(EffectiveNetworkSecurityGroupAssociation, self).__init__(**kwargs) + self.subnet = kwargs.get('subnet', None) + self.network_interface = kwargs.get('network_interface', None) + + +class EffectiveNetworkSecurityGroupListResult(Model): + """Response for list effective network security groups API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: A list of effective network security groups. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.EffectiveNetworkSecurityGroup] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[EffectiveNetworkSecurityGroup]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EffectiveNetworkSecurityGroupListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = None + + +class EffectiveNetworkSecurityRule(Model): + """Effective network security rules. + + :param name: The name of the security rule specified by the user (if + created by the user). + :type name: str + :param protocol: The network protocol this rule applies to. Possible + values include: 'Tcp', 'Udp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.EffectiveSecurityRuleProtocol + :param source_port_range: The source port or range. + :type source_port_range: str + :param destination_port_range: The destination port or range. + :type destination_port_range: str + :param source_port_ranges: The source port ranges. Expected values include + a single integer between 0 and 65535, a range using '-' as separator (e.g. + 100-400), or an asterisk (*). + :type source_port_ranges: list[str] + :param destination_port_ranges: The destination port ranges. Expected + values include a single integer between 0 and 65535, a range using '-' as + separator (e.g. 100-400), or an asterisk (*). + :type destination_port_ranges: list[str] + :param source_address_prefix: The source address prefix. + :type source_address_prefix: str + :param destination_address_prefix: The destination address prefix. + :type destination_address_prefix: str + :param source_address_prefixes: The source address prefixes. Expected + values include CIDR IP ranges, Default Tags (VirtualNetwork, + AzureLoadBalancer, Internet), System Tags, and the asterisk (*). + :type source_address_prefixes: list[str] + :param destination_address_prefixes: The destination address prefixes. + Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, + AzureLoadBalancer, Internet), System Tags, and the asterisk (*). + :type destination_address_prefixes: list[str] + :param expanded_source_address_prefix: The expanded source address prefix. + :type expanded_source_address_prefix: list[str] + :param expanded_destination_address_prefix: Expanded destination address + prefix. + :type expanded_destination_address_prefix: list[str] + :param access: Whether network traffic is allowed or denied. Possible + values include: 'Allow', 'Deny' + :type access: str or + ~azure.mgmt.network.v2019_09_01.models.SecurityRuleAccess + :param priority: The priority of the rule. + :type priority: int + :param direction: The direction of the rule. Possible values include: + 'Inbound', 'Outbound' + :type direction: str or + ~azure.mgmt.network.v2019_09_01.models.SecurityRuleDirection + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'source_port_range': {'key': 'sourcePortRange', 'type': 'str'}, + 'destination_port_range': {'key': 'destinationPortRange', 'type': 'str'}, + 'source_port_ranges': {'key': 'sourcePortRanges', 'type': '[str]'}, + 'destination_port_ranges': {'key': 'destinationPortRanges', 'type': '[str]'}, + 'source_address_prefix': {'key': 'sourceAddressPrefix', 'type': 'str'}, + 'destination_address_prefix': {'key': 'destinationAddressPrefix', 'type': 'str'}, + 'source_address_prefixes': {'key': 'sourceAddressPrefixes', 'type': '[str]'}, + 'destination_address_prefixes': {'key': 'destinationAddressPrefixes', 'type': '[str]'}, + 'expanded_source_address_prefix': {'key': 'expandedSourceAddressPrefix', 'type': '[str]'}, + 'expanded_destination_address_prefix': {'key': 'expandedDestinationAddressPrefix', 'type': '[str]'}, + 'access': {'key': 'access', 'type': 'str'}, + 'priority': {'key': 'priority', 'type': 'int'}, + 'direction': {'key': 'direction', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EffectiveNetworkSecurityRule, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.protocol = kwargs.get('protocol', None) + self.source_port_range = kwargs.get('source_port_range', None) + self.destination_port_range = kwargs.get('destination_port_range', None) + self.source_port_ranges = kwargs.get('source_port_ranges', None) + self.destination_port_ranges = kwargs.get('destination_port_ranges', None) + self.source_address_prefix = kwargs.get('source_address_prefix', None) + self.destination_address_prefix = kwargs.get('destination_address_prefix', None) + self.source_address_prefixes = kwargs.get('source_address_prefixes', None) + self.destination_address_prefixes = kwargs.get('destination_address_prefixes', None) + self.expanded_source_address_prefix = kwargs.get('expanded_source_address_prefix', None) + self.expanded_destination_address_prefix = kwargs.get('expanded_destination_address_prefix', None) + self.access = kwargs.get('access', None) + self.priority = kwargs.get('priority', None) + self.direction = kwargs.get('direction', None) + + +class EffectiveRoute(Model): + """Effective Route. + + :param name: The name of the user defined route. This is optional. + :type name: str + :param disable_bgp_route_propagation: If true, on-premises routes are not + propagated to the network interfaces in the subnet. + :type disable_bgp_route_propagation: bool + :param source: Who created the route. Possible values include: 'Unknown', + 'User', 'VirtualNetworkGateway', 'Default' + :type source: str or + ~azure.mgmt.network.v2019_09_01.models.EffectiveRouteSource + :param state: The value of effective route. Possible values include: + 'Active', 'Invalid' + :type state: str or + ~azure.mgmt.network.v2019_09_01.models.EffectiveRouteState + :param address_prefix: The address prefixes of the effective routes in + CIDR notation. + :type address_prefix: list[str] + :param next_hop_ip_address: The IP address of the next hop of the + effective route. + :type next_hop_ip_address: list[str] + :param next_hop_type: The type of Azure hop the packet should be sent to. + Possible values include: 'VirtualNetworkGateway', 'VnetLocal', 'Internet', + 'VirtualAppliance', 'None' + :type next_hop_type: str or + ~azure.mgmt.network.v2019_09_01.models.RouteNextHopType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'disable_bgp_route_propagation': {'key': 'disableBgpRoutePropagation', 'type': 'bool'}, + 'source': {'key': 'source', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'address_prefix': {'key': 'addressPrefix', 'type': '[str]'}, + 'next_hop_ip_address': {'key': 'nextHopIpAddress', 'type': '[str]'}, + 'next_hop_type': {'key': 'nextHopType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EffectiveRoute, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.disable_bgp_route_propagation = kwargs.get('disable_bgp_route_propagation', None) + self.source = kwargs.get('source', None) + self.state = kwargs.get('state', None) + self.address_prefix = kwargs.get('address_prefix', None) + self.next_hop_ip_address = kwargs.get('next_hop_ip_address', None) + self.next_hop_type = kwargs.get('next_hop_type', None) + + +class EffectiveRouteListResult(Model): + """Response for list effective route API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: A list of effective routes. + :type value: list[~azure.mgmt.network.v2019_09_01.models.EffectiveRoute] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[EffectiveRoute]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EffectiveRouteListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = None + + +class EndpointServiceResult(SubResource): + """Endpoint service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Name of the endpoint service. + :vartype name: str + :ivar type: Type of the endpoint service. + :vartype type: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(EndpointServiceResult, self).__init__(**kwargs) + self.name = None + self.type = None + + +class Error(Model): + """Common error representation. + + :param code: Error code. + :type code: str + :param message: Error message. + :type message: str + :param target: Error target. + :type target: str + :param details: Error details. + :type details: list[~azure.mgmt.network.v2019_09_01.models.ErrorDetails] + :param inner_error: Inner error message. + :type inner_error: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'details': {'key': 'details', 'type': '[ErrorDetails]'}, + 'inner_error': {'key': 'innerError', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Error, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.message = kwargs.get('message', None) + self.target = kwargs.get('target', None) + self.details = kwargs.get('details', None) + self.inner_error = kwargs.get('inner_error', None) + + +class ErrorException(HttpOperationError): + """Server responsed with exception of type: 'Error'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorException, self).__init__(deserialize, response, 'Error', *args) + + +class ErrorDetails(Model): + """Common error details representation. + + :param code: Error code. + :type code: str + :param target: Error target. + :type target: str + :param message: Error message. + :type message: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ErrorDetails, self).__init__(**kwargs) + self.code = kwargs.get('code', None) + self.target = kwargs.get('target', None) + self.message = kwargs.get('message', None) + + +class ErrorResponse(Model): + """The error object. + + :param error: Error. The error details object. + :type error: ~azure.mgmt.network.v2019_09_01.models.ErrorDetails + """ + + _attribute_map = { + 'error': {'key': 'error', 'type': 'ErrorDetails'}, + } + + def __init__(self, **kwargs): + super(ErrorResponse, self).__init__(**kwargs) + self.error = kwargs.get('error', None) + + +class ErrorResponseException(HttpOperationError): + """Server responsed with exception of type: 'ErrorResponse'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorResponseException, self).__init__(deserialize, response, 'ErrorResponse', *args) + + +class EvaluatedNetworkSecurityGroup(Model): + """Results of network security group evaluation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param network_security_group_id: Network security group ID. + :type network_security_group_id: str + :param applied_to: Resource ID of nic or subnet to which network security + group is applied. + :type applied_to: str + :param matched_rule: Matched network security rule. + :type matched_rule: ~azure.mgmt.network.v2019_09_01.models.MatchedRule + :ivar rules_evaluation_result: List of network security rules evaluation + results. + :vartype rules_evaluation_result: + list[~azure.mgmt.network.v2019_09_01.models.NetworkSecurityRulesEvaluationResult] + """ + + _validation = { + 'rules_evaluation_result': {'readonly': True}, + } + + _attribute_map = { + 'network_security_group_id': {'key': 'networkSecurityGroupId', 'type': 'str'}, + 'applied_to': {'key': 'appliedTo', 'type': 'str'}, + 'matched_rule': {'key': 'matchedRule', 'type': 'MatchedRule'}, + 'rules_evaluation_result': {'key': 'rulesEvaluationResult', 'type': '[NetworkSecurityRulesEvaluationResult]'}, + } + + def __init__(self, **kwargs): + super(EvaluatedNetworkSecurityGroup, self).__init__(**kwargs) + self.network_security_group_id = kwargs.get('network_security_group_id', None) + self.applied_to = kwargs.get('applied_to', None) + self.matched_rule = kwargs.get('matched_rule', None) + self.rules_evaluation_result = None + + +class ExpressRouteCircuit(Resource): + """ExpressRouteCircuit resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The SKU. + :type sku: ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitSku + :param allow_classic_operations: Allow classic operations. + :type allow_classic_operations: bool + :ivar circuit_provisioning_state: The CircuitProvisioningState state of + the resource. + :vartype circuit_provisioning_state: str + :ivar service_provider_provisioning_state: The + ServiceProviderProvisioningState state of the resource. Possible values + include: 'NotProvisioned', 'Provisioning', 'Provisioned', 'Deprovisioning' + :vartype service_provider_provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ServiceProviderProvisioningState + :param authorizations: The list of authorizations. + :type authorizations: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitAuthorization] + :param peerings: The list of peerings. + :type peerings: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeering] + :ivar service_key: The ServiceKey. + :vartype service_key: str + :param service_provider_notes: The ServiceProviderNotes. + :type service_provider_notes: str + :param service_provider_properties: The ServiceProviderProperties. + :type service_provider_properties: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitServiceProviderProperties + :param express_route_port: The reference to the ExpressRoutePort resource + when the circuit is provisioned on an ExpressRoutePort resource. + :type express_route_port: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param bandwidth_in_gbps: The bandwidth of the circuit when the circuit is + provisioned on an ExpressRoutePort resource. + :type bandwidth_in_gbps: float + :ivar stag: The identifier of the circuit traffic. Outer tag for QinQ + encapsulation. + :vartype stag: int + :ivar provisioning_state: The provisioning state of the express route + circuit resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param gateway_manager_etag: The GatewayManager Etag. + :type gateway_manager_etag: str + :ivar global_reach_enabled: Flag denoting Global reach status. + :vartype global_reach_enabled: bool + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'circuit_provisioning_state': {'readonly': True}, + 'service_provider_provisioning_state': {'readonly': True}, + 'service_key': {'readonly': True}, + 'stag': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'global_reach_enabled': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'ExpressRouteCircuitSku'}, + 'allow_classic_operations': {'key': 'properties.allowClassicOperations', 'type': 'bool'}, + 'circuit_provisioning_state': {'key': 'properties.circuitProvisioningState', 'type': 'str'}, + 'service_provider_provisioning_state': {'key': 'properties.serviceProviderProvisioningState', 'type': 'str'}, + 'authorizations': {'key': 'properties.authorizations', 'type': '[ExpressRouteCircuitAuthorization]'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'service_key': {'key': 'properties.serviceKey', 'type': 'str'}, + 'service_provider_notes': {'key': 'properties.serviceProviderNotes', 'type': 'str'}, + 'service_provider_properties': {'key': 'properties.serviceProviderProperties', 'type': 'ExpressRouteCircuitServiceProviderProperties'}, + 'express_route_port': {'key': 'properties.expressRoutePort', 'type': 'SubResource'}, + 'bandwidth_in_gbps': {'key': 'properties.bandwidthInGbps', 'type': 'float'}, + 'stag': {'key': 'properties.stag', 'type': 'int'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'gateway_manager_etag': {'key': 'properties.gatewayManagerEtag', 'type': 'str'}, + 'global_reach_enabled': {'key': 'properties.globalReachEnabled', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuit, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.allow_classic_operations = kwargs.get('allow_classic_operations', None) + self.circuit_provisioning_state = None + self.service_provider_provisioning_state = None + self.authorizations = kwargs.get('authorizations', None) + self.peerings = kwargs.get('peerings', None) + self.service_key = None + self.service_provider_notes = kwargs.get('service_provider_notes', None) + self.service_provider_properties = kwargs.get('service_provider_properties', None) + self.express_route_port = kwargs.get('express_route_port', None) + self.bandwidth_in_gbps = kwargs.get('bandwidth_in_gbps', None) + self.stag = None + self.provisioning_state = None + self.gateway_manager_etag = kwargs.get('gateway_manager_etag', None) + self.global_reach_enabled = None + self.etag = None + + +class ExpressRouteCircuitArpTable(Model): + """The ARP table associated with the ExpressRouteCircuit. + + :param age: Entry age in minutes. + :type age: int + :param interface: Interface address. + :type interface: str + :param ip_address: The IP address. + :type ip_address: str + :param mac_address: The MAC address. + :type mac_address: str + """ + + _attribute_map = { + 'age': {'key': 'age', 'type': 'int'}, + 'interface': {'key': 'interface', 'type': 'str'}, + 'ip_address': {'key': 'ipAddress', 'type': 'str'}, + 'mac_address': {'key': 'macAddress', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitArpTable, self).__init__(**kwargs) + self.age = kwargs.get('age', None) + self.interface = kwargs.get('interface', None) + self.ip_address = kwargs.get('ip_address', None) + self.mac_address = kwargs.get('mac_address', None) + + +class ExpressRouteCircuitAuthorization(SubResource): + """Authorization in an ExpressRouteCircuit resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar authorization_key: The authorization key. + :vartype authorization_key: str + :ivar authorization_use_status: The authorization use status. Possible + values include: 'Available', 'InUse' + :vartype authorization_use_status: str or + ~azure.mgmt.network.v2019_09_01.models.AuthorizationUseStatus + :ivar provisioning_state: The provisioning state of the authorization + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'authorization_key': {'readonly': True}, + 'authorization_use_status': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'authorization_use_status': {'key': 'properties.authorizationUseStatus', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitAuthorization, self).__init__(**kwargs) + self.authorization_key = None + self.authorization_use_status = None + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ExpressRouteCircuitConnection(SubResource): + """Express Route Circuit Connection in an ExpressRouteCircuitPeering resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param express_route_circuit_peering: Reference to Express Route Circuit + Private Peering Resource of the circuit initiating connection. + :type express_route_circuit_peering: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param peer_express_route_circuit_peering: Reference to Express Route + Circuit Private Peering Resource of the peered circuit. + :type peer_express_route_circuit_peering: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param address_prefix: /29 IP address space to carve out Customer + addresses for tunnels. + :type address_prefix: str + :param authorization_key: The authorization key. + :type authorization_key: str + :ivar circuit_connection_status: Express Route Circuit connection state. + Possible values include: 'Connected', 'Connecting', 'Disconnected' + :vartype circuit_connection_status: str or + ~azure.mgmt.network.v2019_09_01.models.CircuitConnectionStatus + :ivar provisioning_state: The provisioning state of the express route + circuit connection resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'circuit_connection_status': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'express_route_circuit_peering': {'key': 'properties.expressRouteCircuitPeering', 'type': 'SubResource'}, + 'peer_express_route_circuit_peering': {'key': 'properties.peerExpressRouteCircuitPeering', 'type': 'SubResource'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'circuit_connection_status': {'key': 'properties.circuitConnectionStatus', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitConnection, self).__init__(**kwargs) + self.express_route_circuit_peering = kwargs.get('express_route_circuit_peering', None) + self.peer_express_route_circuit_peering = kwargs.get('peer_express_route_circuit_peering', None) + self.address_prefix = kwargs.get('address_prefix', None) + self.authorization_key = kwargs.get('authorization_key', None) + self.circuit_connection_status = None + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ExpressRouteCircuitPeering(SubResource): + """Peering in an ExpressRouteCircuit resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param peering_type: The peering type. Possible values include: + 'AzurePublicPeering', 'AzurePrivatePeering', 'MicrosoftPeering' + :type peering_type: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRoutePeeringType + :param state: The peering state. Possible values include: 'Disabled', + 'Enabled' + :type state: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRoutePeeringState + :ivar azure_asn: The Azure ASN. + :vartype azure_asn: int + :param peer_asn: The peer ASN. + :type peer_asn: long + :param primary_peer_address_prefix: The primary address prefix. + :type primary_peer_address_prefix: str + :param secondary_peer_address_prefix: The secondary address prefix. + :type secondary_peer_address_prefix: str + :ivar primary_azure_port: The primary port. + :vartype primary_azure_port: str + :ivar secondary_azure_port: The secondary port. + :vartype secondary_azure_port: str + :param shared_key: The shared key. + :type shared_key: str + :param vlan_id: The VLAN ID. + :type vlan_id: int + :param microsoft_peering_config: The Microsoft peering configuration. + :type microsoft_peering_config: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeeringConfig + :param stats: The peering stats of express route circuit. + :type stats: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitStats + :ivar provisioning_state: The provisioning state of the express route + circuit peering resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param gateway_manager_etag: The GatewayManager Etag. + :type gateway_manager_etag: str + :ivar last_modified_by: Who was the last to modify the peering. + :vartype last_modified_by: str + :param route_filter: The reference of the RouteFilter resource. + :type route_filter: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param ipv6_peering_config: The IPv6 peering configuration. + :type ipv6_peering_config: + ~azure.mgmt.network.v2019_09_01.models.Ipv6ExpressRouteCircuitPeeringConfig + :param express_route_connection: The ExpressRoute connection. + :type express_route_connection: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteConnectionId + :ivar connections: The list of circuit connections associated with Azure + Private Peering for this circuit. + :vartype connections: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitConnection] + :ivar peered_connections: The list of peered circuit connections + associated with Azure Private Peering for this circuit. + :vartype peered_connections: + list[~azure.mgmt.network.v2019_09_01.models.PeerExpressRouteCircuitConnection] + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'azure_asn': {'readonly': True}, + 'peer_asn': {'maximum': 4294967295, 'minimum': 1}, + 'primary_azure_port': {'readonly': True}, + 'secondary_azure_port': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'last_modified_by': {'readonly': True}, + 'connections': {'readonly': True}, + 'peered_connections': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'peering_type': {'key': 'properties.peeringType', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'azure_asn': {'key': 'properties.azureASN', 'type': 'int'}, + 'peer_asn': {'key': 'properties.peerASN', 'type': 'long'}, + 'primary_peer_address_prefix': {'key': 'properties.primaryPeerAddressPrefix', 'type': 'str'}, + 'secondary_peer_address_prefix': {'key': 'properties.secondaryPeerAddressPrefix', 'type': 'str'}, + 'primary_azure_port': {'key': 'properties.primaryAzurePort', 'type': 'str'}, + 'secondary_azure_port': {'key': 'properties.secondaryAzurePort', 'type': 'str'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'vlan_id': {'key': 'properties.vlanId', 'type': 'int'}, + 'microsoft_peering_config': {'key': 'properties.microsoftPeeringConfig', 'type': 'ExpressRouteCircuitPeeringConfig'}, + 'stats': {'key': 'properties.stats', 'type': 'ExpressRouteCircuitStats'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'gateway_manager_etag': {'key': 'properties.gatewayManagerEtag', 'type': 'str'}, + 'last_modified_by': {'key': 'properties.lastModifiedBy', 'type': 'str'}, + 'route_filter': {'key': 'properties.routeFilter', 'type': 'SubResource'}, + 'ipv6_peering_config': {'key': 'properties.ipv6PeeringConfig', 'type': 'Ipv6ExpressRouteCircuitPeeringConfig'}, + 'express_route_connection': {'key': 'properties.expressRouteConnection', 'type': 'ExpressRouteConnectionId'}, + 'connections': {'key': 'properties.connections', 'type': '[ExpressRouteCircuitConnection]'}, + 'peered_connections': {'key': 'properties.peeredConnections', 'type': '[PeerExpressRouteCircuitConnection]'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitPeering, self).__init__(**kwargs) + self.peering_type = kwargs.get('peering_type', None) + self.state = kwargs.get('state', None) + self.azure_asn = None + self.peer_asn = kwargs.get('peer_asn', None) + self.primary_peer_address_prefix = kwargs.get('primary_peer_address_prefix', None) + self.secondary_peer_address_prefix = kwargs.get('secondary_peer_address_prefix', None) + self.primary_azure_port = None + self.secondary_azure_port = None + self.shared_key = kwargs.get('shared_key', None) + self.vlan_id = kwargs.get('vlan_id', None) + self.microsoft_peering_config = kwargs.get('microsoft_peering_config', None) + self.stats = kwargs.get('stats', None) + self.provisioning_state = None + self.gateway_manager_etag = kwargs.get('gateway_manager_etag', None) + self.last_modified_by = None + self.route_filter = kwargs.get('route_filter', None) + self.ipv6_peering_config = kwargs.get('ipv6_peering_config', None) + self.express_route_connection = kwargs.get('express_route_connection', None) + self.connections = None + self.peered_connections = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ExpressRouteCircuitPeeringConfig(Model): + """Specifies the peering configuration. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param advertised_public_prefixes: The reference of + AdvertisedPublicPrefixes. + :type advertised_public_prefixes: list[str] + :param advertised_communities: The communities of bgp peering. Specified + for microsoft peering. + :type advertised_communities: list[str] + :ivar advertised_public_prefixes_state: The advertised public prefix state + of the Peering resource. Possible values include: 'NotConfigured', + 'Configuring', 'Configured', 'ValidationNeeded' + :vartype advertised_public_prefixes_state: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeeringAdvertisedPublicPrefixState + :param legacy_mode: The legacy mode of the peering. + :type legacy_mode: int + :param customer_asn: The CustomerASN of the peering. + :type customer_asn: int + :param routing_registry_name: The RoutingRegistryName of the + configuration. + :type routing_registry_name: str + """ + + _validation = { + 'advertised_public_prefixes_state': {'readonly': True}, + } + + _attribute_map = { + 'advertised_public_prefixes': {'key': 'advertisedPublicPrefixes', 'type': '[str]'}, + 'advertised_communities': {'key': 'advertisedCommunities', 'type': '[str]'}, + 'advertised_public_prefixes_state': {'key': 'advertisedPublicPrefixesState', 'type': 'str'}, + 'legacy_mode': {'key': 'legacyMode', 'type': 'int'}, + 'customer_asn': {'key': 'customerASN', 'type': 'int'}, + 'routing_registry_name': {'key': 'routingRegistryName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitPeeringConfig, self).__init__(**kwargs) + self.advertised_public_prefixes = kwargs.get('advertised_public_prefixes', None) + self.advertised_communities = kwargs.get('advertised_communities', None) + self.advertised_public_prefixes_state = None + self.legacy_mode = kwargs.get('legacy_mode', None) + self.customer_asn = kwargs.get('customer_asn', None) + self.routing_registry_name = kwargs.get('routing_registry_name', None) + + +class ExpressRouteCircuitPeeringId(Model): + """ExpressRoute circuit peering identifier. + + :param id: The ID of the ExpressRoute circuit peering. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitPeeringId, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + + +class ExpressRouteCircuitReference(Model): + """Reference to an express route circuit. + + :param id: Corresponding Express Route Circuit Id. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitReference, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + + +class ExpressRouteCircuitRoutesTable(Model): + """The routes table associated with the ExpressRouteCircuit. + + :param network: IP address of a network entity. + :type network: str + :param next_hop: NextHop address. + :type next_hop: str + :param loc_prf: Local preference value as set with the set + local-preference route-map configuration command. + :type loc_prf: str + :param weight: Route Weight. + :type weight: int + :param path: Autonomous system paths to the destination network. + :type path: str + """ + + _attribute_map = { + 'network': {'key': 'network', 'type': 'str'}, + 'next_hop': {'key': 'nextHop', 'type': 'str'}, + 'loc_prf': {'key': 'locPrf', 'type': 'str'}, + 'weight': {'key': 'weight', 'type': 'int'}, + 'path': {'key': 'path', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitRoutesTable, self).__init__(**kwargs) + self.network = kwargs.get('network', None) + self.next_hop = kwargs.get('next_hop', None) + self.loc_prf = kwargs.get('loc_prf', None) + self.weight = kwargs.get('weight', None) + self.path = kwargs.get('path', None) + + +class ExpressRouteCircuitRoutesTableSummary(Model): + """The routes table associated with the ExpressRouteCircuit. + + :param neighbor: IP address of the neighbor. + :type neighbor: str + :param v: BGP version number spoken to the neighbor. + :type v: int + :param as_property: Autonomous system number. + :type as_property: int + :param up_down: The length of time that the BGP session has been in the + Established state, or the current status if not in the Established state. + :type up_down: str + :param state_pfx_rcd: Current state of the BGP session, and the number of + prefixes that have been received from a neighbor or peer group. + :type state_pfx_rcd: str + """ + + _attribute_map = { + 'neighbor': {'key': 'neighbor', 'type': 'str'}, + 'v': {'key': 'v', 'type': 'int'}, + 'as_property': {'key': 'as', 'type': 'int'}, + 'up_down': {'key': 'upDown', 'type': 'str'}, + 'state_pfx_rcd': {'key': 'statePfxRcd', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitRoutesTableSummary, self).__init__(**kwargs) + self.neighbor = kwargs.get('neighbor', None) + self.v = kwargs.get('v', None) + self.as_property = kwargs.get('as_property', None) + self.up_down = kwargs.get('up_down', None) + self.state_pfx_rcd = kwargs.get('state_pfx_rcd', None) + + +class ExpressRouteCircuitsArpTableListResult(Model): + """Response for ListArpTable associated with the Express Route Circuits API. + + :param value: A list of the ARP tables. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitArpTable] + :param next_link: The URL to get the next set of results. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCircuitArpTable]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitsArpTableListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = kwargs.get('next_link', None) + + +class ExpressRouteCircuitServiceProviderProperties(Model): + """Contains ServiceProviderProperties in an ExpressRouteCircuit. + + :param service_provider_name: The serviceProviderName. + :type service_provider_name: str + :param peering_location: The peering location. + :type peering_location: str + :param bandwidth_in_mbps: The BandwidthInMbps. + :type bandwidth_in_mbps: int + """ + + _attribute_map = { + 'service_provider_name': {'key': 'serviceProviderName', 'type': 'str'}, + 'peering_location': {'key': 'peeringLocation', 'type': 'str'}, + 'bandwidth_in_mbps': {'key': 'bandwidthInMbps', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitServiceProviderProperties, self).__init__(**kwargs) + self.service_provider_name = kwargs.get('service_provider_name', None) + self.peering_location = kwargs.get('peering_location', None) + self.bandwidth_in_mbps = kwargs.get('bandwidth_in_mbps', None) + + +class ExpressRouteCircuitSku(Model): + """Contains SKU in an ExpressRouteCircuit. + + :param name: The name of the SKU. + :type name: str + :param tier: The tier of the SKU. Possible values include: 'Standard', + 'Premium', 'Basic', 'Local' + :type tier: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitSkuTier + :param family: The family of the SKU. Possible values include: + 'UnlimitedData', 'MeteredData' + :type family: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitSkuFamily + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'family': {'key': 'family', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitSku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = kwargs.get('tier', None) + self.family = kwargs.get('family', None) + + +class ExpressRouteCircuitsRoutesTableListResult(Model): + """Response for ListRoutesTable associated with the Express Route Circuits + API. + + :param value: The list of routes table. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitRoutesTable] + :param next_link: The URL to get the next set of results. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCircuitRoutesTable]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitsRoutesTableListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = kwargs.get('next_link', None) + + +class ExpressRouteCircuitsRoutesTableSummaryListResult(Model): + """Response for ListRoutesTable associated with the Express Route Circuits + API. + + :param value: A list of the routes table. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitRoutesTableSummary] + :param next_link: The URL to get the next set of results. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCircuitRoutesTableSummary]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitsRoutesTableSummaryListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = kwargs.get('next_link', None) + + +class ExpressRouteCircuitStats(Model): + """Contains stats associated with the peering. + + :param primarybytes_in: The Primary BytesIn of the peering. + :type primarybytes_in: long + :param primarybytes_out: The primary BytesOut of the peering. + :type primarybytes_out: long + :param secondarybytes_in: The secondary BytesIn of the peering. + :type secondarybytes_in: long + :param secondarybytes_out: The secondary BytesOut of the peering. + :type secondarybytes_out: long + """ + + _attribute_map = { + 'primarybytes_in': {'key': 'primarybytesIn', 'type': 'long'}, + 'primarybytes_out': {'key': 'primarybytesOut', 'type': 'long'}, + 'secondarybytes_in': {'key': 'secondarybytesIn', 'type': 'long'}, + 'secondarybytes_out': {'key': 'secondarybytesOut', 'type': 'long'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCircuitStats, self).__init__(**kwargs) + self.primarybytes_in = kwargs.get('primarybytes_in', None) + self.primarybytes_out = kwargs.get('primarybytes_out', None) + self.secondarybytes_in = kwargs.get('secondarybytes_in', None) + self.secondarybytes_out = kwargs.get('secondarybytes_out', None) + + +class ExpressRouteConnection(SubResource): + """ExpressRouteConnection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :ivar provisioning_state: The provisioning state of the express route + connection resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param express_route_circuit_peering: Required. The ExpressRoute circuit + peering. + :type express_route_circuit_peering: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeeringId + :param authorization_key: Authorization key to establish the connection. + :type authorization_key: str + :param routing_weight: The routing weight associated to the connection. + :type routing_weight: int + :param enable_internet_security: Enable internet security. + :type enable_internet_security: bool + :param name: Required. The name of the resource. + :type name: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'express_route_circuit_peering': {'required': True}, + 'name': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'express_route_circuit_peering': {'key': 'properties.expressRouteCircuitPeering', 'type': 'ExpressRouteCircuitPeeringId'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'enable_internet_security': {'key': 'properties.enableInternetSecurity', 'type': 'bool'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteConnection, self).__init__(**kwargs) + self.provisioning_state = None + self.express_route_circuit_peering = kwargs.get('express_route_circuit_peering', None) + self.authorization_key = kwargs.get('authorization_key', None) + self.routing_weight = kwargs.get('routing_weight', None) + self.enable_internet_security = kwargs.get('enable_internet_security', None) + self.name = kwargs.get('name', None) + + +class ExpressRouteConnectionId(Model): + """The ID of the ExpressRouteConnection. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The ID of the ExpressRouteConnection. + :vartype id: str + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteConnectionId, self).__init__(**kwargs) + self.id = None + + +class ExpressRouteConnectionList(Model): + """ExpressRouteConnection list. + + :param value: The list of ExpressRoute connections. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteConnection] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteConnection]'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteConnectionList, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + + +class ExpressRouteCrossConnection(Resource): + """ExpressRouteCrossConnection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar primary_azure_port: The name of the primary port. + :vartype primary_azure_port: str + :ivar secondary_azure_port: The name of the secondary port. + :vartype secondary_azure_port: str + :ivar s_tag: The identifier of the circuit traffic. + :vartype s_tag: int + :param peering_location: The peering location of the ExpressRoute circuit. + :type peering_location: str + :param bandwidth_in_mbps: The circuit bandwidth In Mbps. + :type bandwidth_in_mbps: int + :param express_route_circuit: The ExpressRouteCircuit. + :type express_route_circuit: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitReference + :param service_provider_provisioning_state: The provisioning state of the + circuit in the connectivity provider system. Possible values include: + 'NotProvisioned', 'Provisioning', 'Provisioned', 'Deprovisioning' + :type service_provider_provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ServiceProviderProvisioningState + :param service_provider_notes: Additional read only notes set by the + connectivity provider. + :type service_provider_notes: str + :ivar provisioning_state: The provisioning state of the express route + cross connection resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param peerings: The list of peerings. + :type peerings: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnectionPeering] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'primary_azure_port': {'readonly': True}, + 'secondary_azure_port': {'readonly': True}, + 's_tag': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'primary_azure_port': {'key': 'properties.primaryAzurePort', 'type': 'str'}, + 'secondary_azure_port': {'key': 'properties.secondaryAzurePort', 'type': 'str'}, + 's_tag': {'key': 'properties.sTag', 'type': 'int'}, + 'peering_location': {'key': 'properties.peeringLocation', 'type': 'str'}, + 'bandwidth_in_mbps': {'key': 'properties.bandwidthInMbps', 'type': 'int'}, + 'express_route_circuit': {'key': 'properties.expressRouteCircuit', 'type': 'ExpressRouteCircuitReference'}, + 'service_provider_provisioning_state': {'key': 'properties.serviceProviderProvisioningState', 'type': 'str'}, + 'service_provider_notes': {'key': 'properties.serviceProviderNotes', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCrossConnectionPeering]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCrossConnection, self).__init__(**kwargs) + self.primary_azure_port = None + self.secondary_azure_port = None + self.s_tag = None + self.peering_location = kwargs.get('peering_location', None) + self.bandwidth_in_mbps = kwargs.get('bandwidth_in_mbps', None) + self.express_route_circuit = kwargs.get('express_route_circuit', None) + self.service_provider_provisioning_state = kwargs.get('service_provider_provisioning_state', None) + self.service_provider_notes = kwargs.get('service_provider_notes', None) + self.provisioning_state = None + self.peerings = kwargs.get('peerings', None) + self.etag = None + + +class ExpressRouteCrossConnectionPeering(SubResource): + """Peering in an ExpressRoute Cross Connection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param peering_type: The peering type. Possible values include: + 'AzurePublicPeering', 'AzurePrivatePeering', 'MicrosoftPeering' + :type peering_type: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRoutePeeringType + :param state: The peering state. Possible values include: 'Disabled', + 'Enabled' + :type state: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRoutePeeringState + :ivar azure_asn: The Azure ASN. + :vartype azure_asn: int + :param peer_asn: The peer ASN. + :type peer_asn: long + :param primary_peer_address_prefix: The primary address prefix. + :type primary_peer_address_prefix: str + :param secondary_peer_address_prefix: The secondary address prefix. + :type secondary_peer_address_prefix: str + :ivar primary_azure_port: The primary port. + :vartype primary_azure_port: str + :ivar secondary_azure_port: The secondary port. + :vartype secondary_azure_port: str + :param shared_key: The shared key. + :type shared_key: str + :param vlan_id: The VLAN ID. + :type vlan_id: int + :param microsoft_peering_config: The Microsoft peering configuration. + :type microsoft_peering_config: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeeringConfig + :ivar provisioning_state: The provisioning state of the express route + cross connection peering resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param gateway_manager_etag: The GatewayManager Etag. + :type gateway_manager_etag: str + :ivar last_modified_by: Who was the last to modify the peering. + :vartype last_modified_by: str + :param ipv6_peering_config: The IPv6 peering configuration. + :type ipv6_peering_config: + ~azure.mgmt.network.v2019_09_01.models.Ipv6ExpressRouteCircuitPeeringConfig + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'azure_asn': {'readonly': True}, + 'peer_asn': {'maximum': 4294967295, 'minimum': 1}, + 'primary_azure_port': {'readonly': True}, + 'secondary_azure_port': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'last_modified_by': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'peering_type': {'key': 'properties.peeringType', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'azure_asn': {'key': 'properties.azureASN', 'type': 'int'}, + 'peer_asn': {'key': 'properties.peerASN', 'type': 'long'}, + 'primary_peer_address_prefix': {'key': 'properties.primaryPeerAddressPrefix', 'type': 'str'}, + 'secondary_peer_address_prefix': {'key': 'properties.secondaryPeerAddressPrefix', 'type': 'str'}, + 'primary_azure_port': {'key': 'properties.primaryAzurePort', 'type': 'str'}, + 'secondary_azure_port': {'key': 'properties.secondaryAzurePort', 'type': 'str'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'vlan_id': {'key': 'properties.vlanId', 'type': 'int'}, + 'microsoft_peering_config': {'key': 'properties.microsoftPeeringConfig', 'type': 'ExpressRouteCircuitPeeringConfig'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'gateway_manager_etag': {'key': 'properties.gatewayManagerEtag', 'type': 'str'}, + 'last_modified_by': {'key': 'properties.lastModifiedBy', 'type': 'str'}, + 'ipv6_peering_config': {'key': 'properties.ipv6PeeringConfig', 'type': 'Ipv6ExpressRouteCircuitPeeringConfig'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCrossConnectionPeering, self).__init__(**kwargs) + self.peering_type = kwargs.get('peering_type', None) + self.state = kwargs.get('state', None) + self.azure_asn = None + self.peer_asn = kwargs.get('peer_asn', None) + self.primary_peer_address_prefix = kwargs.get('primary_peer_address_prefix', None) + self.secondary_peer_address_prefix = kwargs.get('secondary_peer_address_prefix', None) + self.primary_azure_port = None + self.secondary_azure_port = None + self.shared_key = kwargs.get('shared_key', None) + self.vlan_id = kwargs.get('vlan_id', None) + self.microsoft_peering_config = kwargs.get('microsoft_peering_config', None) + self.provisioning_state = None + self.gateway_manager_etag = kwargs.get('gateway_manager_etag', None) + self.last_modified_by = None + self.ipv6_peering_config = kwargs.get('ipv6_peering_config', None) + self.name = kwargs.get('name', None) + self.etag = None + + +class ExpressRouteCrossConnectionRoutesTableSummary(Model): + """The routes table associated with the ExpressRouteCircuit. + + :param neighbor: IP address of Neighbor router. + :type neighbor: str + :param asn: Autonomous system number. + :type asn: int + :param up_down: The length of time that the BGP session has been in the + Established state, or the current status if not in the Established state. + :type up_down: str + :param state_or_prefixes_received: Current state of the BGP session, and + the number of prefixes that have been received from a neighbor or peer + group. + :type state_or_prefixes_received: str + """ + + _attribute_map = { + 'neighbor': {'key': 'neighbor', 'type': 'str'}, + 'asn': {'key': 'asn', 'type': 'int'}, + 'up_down': {'key': 'upDown', 'type': 'str'}, + 'state_or_prefixes_received': {'key': 'stateOrPrefixesReceived', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCrossConnectionRoutesTableSummary, self).__init__(**kwargs) + self.neighbor = kwargs.get('neighbor', None) + self.asn = kwargs.get('asn', None) + self.up_down = kwargs.get('up_down', None) + self.state_or_prefixes_received = kwargs.get('state_or_prefixes_received', None) + + +class ExpressRouteCrossConnectionsRoutesTableSummaryListResult(Model): + """Response for ListRoutesTable associated with the Express Route Cross + Connections. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: A list of the routes table. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnectionRoutesTableSummary] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCrossConnectionRoutesTableSummary]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteCrossConnectionsRoutesTableSummaryListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = None + + +class ExpressRouteGateway(Resource): + """ExpressRoute gateway resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param auto_scale_configuration: Configuration for auto scaling. + :type auto_scale_configuration: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteGatewayPropertiesAutoScaleConfiguration + :ivar express_route_connections: List of ExpressRoute connections to the + ExpressRoute gateway. + :vartype express_route_connections: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteConnection] + :ivar provisioning_state: The provisioning state of the express route + gateway resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param virtual_hub: Required. The Virtual Hub where the ExpressRoute + gateway is or will be deployed. + :type virtual_hub: ~azure.mgmt.network.v2019_09_01.models.VirtualHubId + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'express_route_connections': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'virtual_hub': {'required': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'auto_scale_configuration': {'key': 'properties.autoScaleConfiguration', 'type': 'ExpressRouteGatewayPropertiesAutoScaleConfiguration'}, + 'express_route_connections': {'key': 'properties.expressRouteConnections', 'type': '[ExpressRouteConnection]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'virtual_hub': {'key': 'properties.virtualHub', 'type': 'VirtualHubId'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteGateway, self).__init__(**kwargs) + self.auto_scale_configuration = kwargs.get('auto_scale_configuration', None) + self.express_route_connections = None + self.provisioning_state = None + self.virtual_hub = kwargs.get('virtual_hub', None) + self.etag = None + + +class ExpressRouteGatewayList(Model): + """List of ExpressRoute gateways. + + :param value: List of ExpressRoute gateways. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteGateway] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteGateway]'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteGatewayList, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + + +class ExpressRouteGatewayPropertiesAutoScaleConfiguration(Model): + """Configuration for auto scaling. + + :param bounds: Minimum and maximum number of scale units to deploy. + :type bounds: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds + """ + + _attribute_map = { + 'bounds': {'key': 'bounds', 'type': 'ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteGatewayPropertiesAutoScaleConfiguration, self).__init__(**kwargs) + self.bounds = kwargs.get('bounds', None) + + +class ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds(Model): + """Minimum and maximum number of scale units to deploy. + + :param min: Minimum number of scale units deployed for ExpressRoute + gateway. + :type min: int + :param max: Maximum number of scale units deployed for ExpressRoute + gateway. + :type max: int + """ + + _attribute_map = { + 'min': {'key': 'min', 'type': 'int'}, + 'max': {'key': 'max', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds, self).__init__(**kwargs) + self.min = kwargs.get('min', None) + self.max = kwargs.get('max', None) + + +class ExpressRouteLink(SubResource): + """ExpressRouteLink. + + ExpressRouteLink child resource definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar router_name: Name of Azure router associated with physical port. + :vartype router_name: str + :ivar interface_name: Name of Azure router interface. + :vartype interface_name: str + :ivar patch_panel_id: Mapping between physical port to patch panel port. + :vartype patch_panel_id: str + :ivar rack_id: Mapping of physical patch panel to rack. + :vartype rack_id: str + :ivar connector_type: Physical fiber port type. Possible values include: + 'LC', 'SC' + :vartype connector_type: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteLinkConnectorType + :param admin_state: Administrative state of the physical port. Possible + values include: 'Enabled', 'Disabled' + :type admin_state: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteLinkAdminState + :ivar provisioning_state: The provisioning state of the express route link + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param mac_sec_config: MacSec configuration. + :type mac_sec_config: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteLinkMacSecConfig + :param name: Name of child port resource that is unique among child port + resources of the parent. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'router_name': {'readonly': True}, + 'interface_name': {'readonly': True}, + 'patch_panel_id': {'readonly': True}, + 'rack_id': {'readonly': True}, + 'connector_type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'router_name': {'key': 'properties.routerName', 'type': 'str'}, + 'interface_name': {'key': 'properties.interfaceName', 'type': 'str'}, + 'patch_panel_id': {'key': 'properties.patchPanelId', 'type': 'str'}, + 'rack_id': {'key': 'properties.rackId', 'type': 'str'}, + 'connector_type': {'key': 'properties.connectorType', 'type': 'str'}, + 'admin_state': {'key': 'properties.adminState', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'mac_sec_config': {'key': 'properties.macSecConfig', 'type': 'ExpressRouteLinkMacSecConfig'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteLink, self).__init__(**kwargs) + self.router_name = None + self.interface_name = None + self.patch_panel_id = None + self.rack_id = None + self.connector_type = None + self.admin_state = kwargs.get('admin_state', None) + self.provisioning_state = None + self.mac_sec_config = kwargs.get('mac_sec_config', None) + self.name = kwargs.get('name', None) + self.etag = None + + +class ExpressRouteLinkMacSecConfig(Model): + """Definition of ExpressRouteLink Mac Security configuration. + + ExpressRouteLink Mac Security Configuration. + + :param ckn_secret_identifier: Keyvault Secret Identifier URL containing + Mac security CKN key. + :type ckn_secret_identifier: str + :param cak_secret_identifier: Keyvault Secret Identifier URL containing + Mac security CAK key. + :type cak_secret_identifier: str + :param cipher: Mac security cipher. Possible values include: + 'gcm-aes-128', 'gcm-aes-256' + :type cipher: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteLinkMacSecCipher + """ + + _attribute_map = { + 'ckn_secret_identifier': {'key': 'cknSecretIdentifier', 'type': 'str'}, + 'cak_secret_identifier': {'key': 'cakSecretIdentifier', 'type': 'str'}, + 'cipher': {'key': 'cipher', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteLinkMacSecConfig, self).__init__(**kwargs) + self.ckn_secret_identifier = kwargs.get('ckn_secret_identifier', None) + self.cak_secret_identifier = kwargs.get('cak_secret_identifier', None) + self.cipher = kwargs.get('cipher', None) + + +class ExpressRoutePort(Resource): + """ExpressRoute Port. + + ExpressRoutePort resource definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param peering_location: The name of the peering location that the + ExpressRoutePort is mapped to physically. + :type peering_location: str + :param bandwidth_in_gbps: Bandwidth of procured ports in Gbps. + :type bandwidth_in_gbps: int + :ivar provisioned_bandwidth_in_gbps: Aggregate Gbps of associated circuit + bandwidths. + :vartype provisioned_bandwidth_in_gbps: float + :ivar mtu: Maximum transmission unit of the physical port pair(s). + :vartype mtu: str + :param encapsulation: Encapsulation method on physical ports. Possible + values include: 'Dot1Q', 'QinQ' + :type encapsulation: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRoutePortsEncapsulation + :ivar ether_type: Ether type of the physical port. + :vartype ether_type: str + :ivar allocation_date: Date of the physical port allocation to be used in + Letter of Authorization. + :vartype allocation_date: str + :param links: ExpressRouteLink Sub-Resources. The set of physical links of + the ExpressRoutePort resource. + :type links: list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteLink] + :ivar circuits: Reference the ExpressRoute circuit(s) that are provisioned + on this ExpressRoutePort resource. + :vartype circuits: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar provisioning_state: The provisioning state of the express route port + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar resource_guid: The resource GUID property of the express route port + resource. + :vartype resource_guid: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :param identity: The identity of ExpressRoutePort, if configured. + :type identity: + ~azure.mgmt.network.v2019_09_01.models.ManagedServiceIdentity + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioned_bandwidth_in_gbps': {'readonly': True}, + 'mtu': {'readonly': True}, + 'ether_type': {'readonly': True}, + 'allocation_date': {'readonly': True}, + 'circuits': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'peering_location': {'key': 'properties.peeringLocation', 'type': 'str'}, + 'bandwidth_in_gbps': {'key': 'properties.bandwidthInGbps', 'type': 'int'}, + 'provisioned_bandwidth_in_gbps': {'key': 'properties.provisionedBandwidthInGbps', 'type': 'float'}, + 'mtu': {'key': 'properties.mtu', 'type': 'str'}, + 'encapsulation': {'key': 'properties.encapsulation', 'type': 'str'}, + 'ether_type': {'key': 'properties.etherType', 'type': 'str'}, + 'allocation_date': {'key': 'properties.allocationDate', 'type': 'str'}, + 'links': {'key': 'properties.links', 'type': '[ExpressRouteLink]'}, + 'circuits': {'key': 'properties.circuits', 'type': '[SubResource]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'identity': {'key': 'identity', 'type': 'ManagedServiceIdentity'}, + } + + def __init__(self, **kwargs): + super(ExpressRoutePort, self).__init__(**kwargs) + self.peering_location = kwargs.get('peering_location', None) + self.bandwidth_in_gbps = kwargs.get('bandwidth_in_gbps', None) + self.provisioned_bandwidth_in_gbps = None + self.mtu = None + self.encapsulation = kwargs.get('encapsulation', None) + self.ether_type = None + self.allocation_date = None + self.links = kwargs.get('links', None) + self.circuits = None + self.provisioning_state = None + self.resource_guid = None + self.etag = None + self.identity = kwargs.get('identity', None) + + +class ExpressRoutePortsLocation(Resource): + """ExpressRoutePorts Peering Location. + + Definition of the ExpressRoutePorts peering location resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar address: Address of peering location. + :vartype address: str + :ivar contact: Contact details of peering locations. + :vartype contact: str + :param available_bandwidths: The inventory of available ExpressRoutePort + bandwidths. + :type available_bandwidths: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRoutePortsLocationBandwidths] + :ivar provisioning_state: The provisioning state of the express route port + location resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'address': {'readonly': True}, + 'contact': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'address': {'key': 'properties.address', 'type': 'str'}, + 'contact': {'key': 'properties.contact', 'type': 'str'}, + 'available_bandwidths': {'key': 'properties.availableBandwidths', 'type': '[ExpressRoutePortsLocationBandwidths]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRoutePortsLocation, self).__init__(**kwargs) + self.address = None + self.contact = None + self.available_bandwidths = kwargs.get('available_bandwidths', None) + self.provisioning_state = None + + +class ExpressRoutePortsLocationBandwidths(Model): + """ExpressRoutePorts Location Bandwidths. + + Real-time inventory of available ExpressRoute port bandwidths. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar offer_name: Bandwidth descriptive name. + :vartype offer_name: str + :ivar value_in_gbps: Bandwidth value in Gbps. + :vartype value_in_gbps: int + """ + + _validation = { + 'offer_name': {'readonly': True}, + 'value_in_gbps': {'readonly': True}, + } + + _attribute_map = { + 'offer_name': {'key': 'offerName', 'type': 'str'}, + 'value_in_gbps': {'key': 'valueInGbps', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ExpressRoutePortsLocationBandwidths, self).__init__(**kwargs) + self.offer_name = None + self.value_in_gbps = None + + +class ExpressRouteServiceProvider(Resource): + """A ExpressRouteResourceProvider object. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param peering_locations: A list of peering locations. + :type peering_locations: list[str] + :param bandwidths_offered: A list of bandwidths offered. + :type bandwidths_offered: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteServiceProviderBandwidthsOffered] + :ivar provisioning_state: The provisioning state of the express route + service provider resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'peering_locations': {'key': 'properties.peeringLocations', 'type': '[str]'}, + 'bandwidths_offered': {'key': 'properties.bandwidthsOffered', 'type': '[ExpressRouteServiceProviderBandwidthsOffered]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteServiceProvider, self).__init__(**kwargs) + self.peering_locations = kwargs.get('peering_locations', None) + self.bandwidths_offered = kwargs.get('bandwidths_offered', None) + self.provisioning_state = None + + +class ExpressRouteServiceProviderBandwidthsOffered(Model): + """Contains bandwidths offered in ExpressRouteServiceProvider resources. + + :param offer_name: The OfferName. + :type offer_name: str + :param value_in_mbps: The ValueInMbps. + :type value_in_mbps: int + """ + + _attribute_map = { + 'offer_name': {'key': 'offerName', 'type': 'str'}, + 'value_in_mbps': {'key': 'valueInMbps', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(ExpressRouteServiceProviderBandwidthsOffered, self).__init__(**kwargs) + self.offer_name = kwargs.get('offer_name', None) + self.value_in_mbps = kwargs.get('value_in_mbps', None) + + +class FirewallPolicy(Resource): + """FirewallPolicy Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar rule_groups: List of references to FirewallPolicyRuleGroups. + :vartype rule_groups: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar provisioning_state: The provisioning state of the firewall policy + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param base_policy: The parent firewall policy from which rules are + inherited. + :type base_policy: ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar firewalls: List of references to Azure Firewalls that this Firewall + Policy is associated with. + :vartype firewalls: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar child_policies: List of references to Child Firewall Policies. + :vartype child_policies: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param threat_intel_mode: The operation mode for Threat Intelligence. + Possible values include: 'Alert', 'Deny', 'Off' + :type threat_intel_mode: str or + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallThreatIntelMode + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'rule_groups': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'firewalls': {'readonly': True}, + 'child_policies': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'rule_groups': {'key': 'properties.ruleGroups', 'type': '[SubResource]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'base_policy': {'key': 'properties.basePolicy', 'type': 'SubResource'}, + 'firewalls': {'key': 'properties.firewalls', 'type': '[SubResource]'}, + 'child_policies': {'key': 'properties.childPolicies', 'type': '[SubResource]'}, + 'threat_intel_mode': {'key': 'properties.threatIntelMode', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(FirewallPolicy, self).__init__(**kwargs) + self.rule_groups = None + self.provisioning_state = None + self.base_policy = kwargs.get('base_policy', None) + self.firewalls = None + self.child_policies = None + self.threat_intel_mode = kwargs.get('threat_intel_mode', None) + self.etag = None + + +class FirewallPolicyRule(Model): + """Properties of the rule. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: FirewallPolicyNatRule, FirewallPolicyFilterRule + + All required parameters must be populated in order to send to Azure. + + :param name: The name of the rule. + :type name: str + :param priority: Priority of the Firewall Policy Rule resource. + :type priority: int + :param rule_type: Required. Constant filled by server. + :type rule_type: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'rule_type': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'priority': {'key': 'priority', 'type': 'int'}, + 'rule_type': {'key': 'ruleType', 'type': 'str'}, + } + + _subtype_map = { + 'rule_type': {'FirewallPolicyNatRule': 'FirewallPolicyNatRule', 'FirewallPolicyFilterRule': 'FirewallPolicyFilterRule'} + } + + def __init__(self, **kwargs): + super(FirewallPolicyRule, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.priority = kwargs.get('priority', None) + self.rule_type = None + + +class FirewallPolicyFilterRule(FirewallPolicyRule): + """Firewall Policy Filter Rule. + + All required parameters must be populated in order to send to Azure. + + :param name: The name of the rule. + :type name: str + :param priority: Priority of the Firewall Policy Rule resource. + :type priority: int + :param rule_type: Required. Constant filled by server. + :type rule_type: str + :param action: The action type of a Filter rule. + :type action: + ~azure.mgmt.network.v2019_09_01.models.FirewallPolicyFilterRuleAction + :param rule_conditions: Collection of rule conditions used by a rule. + :type rule_conditions: + list[~azure.mgmt.network.v2019_09_01.models.FirewallPolicyRuleCondition] + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'rule_type': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'priority': {'key': 'priority', 'type': 'int'}, + 'rule_type': {'key': 'ruleType', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'FirewallPolicyFilterRuleAction'}, + 'rule_conditions': {'key': 'ruleConditions', 'type': '[FirewallPolicyRuleCondition]'}, + } + + def __init__(self, **kwargs): + super(FirewallPolicyFilterRule, self).__init__(**kwargs) + self.action = kwargs.get('action', None) + self.rule_conditions = kwargs.get('rule_conditions', None) + self.rule_type = 'FirewallPolicyFilterRule' + + +class FirewallPolicyFilterRuleAction(Model): + """Properties of the FirewallPolicyFilterRuleAction. + + :param type: The type of action. Possible values include: 'Allow', 'Deny' + :type type: str or + ~azure.mgmt.network.v2019_09_01.models.FirewallPolicyFilterRuleActionType + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(FirewallPolicyFilterRuleAction, self).__init__(**kwargs) + self.type = kwargs.get('type', None) + + +class FirewallPolicyNatRule(FirewallPolicyRule): + """Firewall Policy NAT Rule. + + All required parameters must be populated in order to send to Azure. + + :param name: The name of the rule. + :type name: str + :param priority: Priority of the Firewall Policy Rule resource. + :type priority: int + :param rule_type: Required. Constant filled by server. + :type rule_type: str + :param action: The action type of a Nat rule. + :type action: + ~azure.mgmt.network.v2019_09_01.models.FirewallPolicyNatRuleAction + :param translated_address: The translated address for this NAT rule. + :type translated_address: str + :param translated_port: The translated port for this NAT rule. + :type translated_port: str + :param rule_condition: The match conditions for incoming traffic. + :type rule_condition: + ~azure.mgmt.network.v2019_09_01.models.FirewallPolicyRuleCondition + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'rule_type': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'priority': {'key': 'priority', 'type': 'int'}, + 'rule_type': {'key': 'ruleType', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'FirewallPolicyNatRuleAction'}, + 'translated_address': {'key': 'translatedAddress', 'type': 'str'}, + 'translated_port': {'key': 'translatedPort', 'type': 'str'}, + 'rule_condition': {'key': 'ruleCondition', 'type': 'FirewallPolicyRuleCondition'}, + } + + def __init__(self, **kwargs): + super(FirewallPolicyNatRule, self).__init__(**kwargs) + self.action = kwargs.get('action', None) + self.translated_address = kwargs.get('translated_address', None) + self.translated_port = kwargs.get('translated_port', None) + self.rule_condition = kwargs.get('rule_condition', None) + self.rule_type = 'FirewallPolicyNatRule' + + +class FirewallPolicyNatRuleAction(Model): + """Properties of the FirewallPolicyNatRuleAction. + + :param type: The type of action. Possible values include: 'DNAT' + :type type: str or + ~azure.mgmt.network.v2019_09_01.models.FirewallPolicyNatRuleActionType + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(FirewallPolicyNatRuleAction, self).__init__(**kwargs) + self.type = kwargs.get('type', None) + + +class FirewallPolicyRuleConditionApplicationProtocol(Model): + """Properties of the application rule protocol. + + :param protocol_type: Protocol type. Possible values include: 'Http', + 'Https' + :type protocol_type: str or + ~azure.mgmt.network.v2019_09_01.models.FirewallPolicyRuleConditionApplicationProtocolType + :param port: Port number for the protocol, cannot be greater than 64000. + :type port: int + """ + + _validation = { + 'port': {'maximum': 64000, 'minimum': 0}, + } + + _attribute_map = { + 'protocol_type': {'key': 'protocolType', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(FirewallPolicyRuleConditionApplicationProtocol, self).__init__(**kwargs) + self.protocol_type = kwargs.get('protocol_type', None) + self.port = kwargs.get('port', None) + + +class FirewallPolicyRuleGroup(SubResource): + """Rule Group resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param priority: Priority of the Firewall Policy Rule Group resource. + :type priority: int + :param rules: Group of Firewall Policy rules. + :type rules: + list[~azure.mgmt.network.v2019_09_01.models.FirewallPolicyRule] + :ivar provisioning_state: The provisioning state of the firewall policy + rule group resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Rule Group type. + :vartype type: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'rules': {'key': 'properties.rules', 'type': '[FirewallPolicyRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(FirewallPolicyRuleGroup, self).__init__(**kwargs) + self.priority = kwargs.get('priority', None) + self.rules = kwargs.get('rules', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class FlowLogFormatParameters(Model): + """Parameters that define the flow log format. + + :param type: The file type of flow log. Possible values include: 'JSON' + :type type: str or + ~azure.mgmt.network.v2019_09_01.models.FlowLogFormatType + :param version: The version (revision) of the flow log. Default value: 0 . + :type version: int + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'version': {'key': 'version', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(FlowLogFormatParameters, self).__init__(**kwargs) + self.type = kwargs.get('type', None) + self.version = kwargs.get('version', 0) + + +class FlowLogInformation(Model): + """Information on the configuration of flow log and traffic analytics + (optional) . + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the resource to configure + for flow log and traffic analytics (optional) . + :type target_resource_id: str + :param storage_id: Required. ID of the storage account which is used to + store the flow log. + :type storage_id: str + :param enabled: Required. Flag to enable/disable flow logging. + :type enabled: bool + :param retention_policy: Parameters that define the retention policy for + flow log. + :type retention_policy: + ~azure.mgmt.network.v2019_09_01.models.RetentionPolicyParameters + :param format: Parameters that define the flow log format. + :type format: + ~azure.mgmt.network.v2019_09_01.models.FlowLogFormatParameters + :param flow_analytics_configuration: Parameters that define the + configuration of traffic analytics. + :type flow_analytics_configuration: + ~azure.mgmt.network.v2019_09_01.models.TrafficAnalyticsProperties + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'storage_id': {'required': True}, + 'enabled': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'storage_id': {'key': 'properties.storageId', 'type': 'str'}, + 'enabled': {'key': 'properties.enabled', 'type': 'bool'}, + 'retention_policy': {'key': 'properties.retentionPolicy', 'type': 'RetentionPolicyParameters'}, + 'format': {'key': 'properties.format', 'type': 'FlowLogFormatParameters'}, + 'flow_analytics_configuration': {'key': 'flowAnalyticsConfiguration', 'type': 'TrafficAnalyticsProperties'}, + } + + def __init__(self, **kwargs): + super(FlowLogInformation, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) + self.storage_id = kwargs.get('storage_id', None) + self.enabled = kwargs.get('enabled', None) + self.retention_policy = kwargs.get('retention_policy', None) + self.format = kwargs.get('format', None) + self.flow_analytics_configuration = kwargs.get('flow_analytics_configuration', None) + + +class FlowLogStatusParameters(Model): + """Parameters that define a resource to query flow log and traffic analytics + (optional) status. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The target resource where getting the + flow log and traffic analytics (optional) status. + :type target_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(FlowLogStatusParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) + + +class FrontendIPConfiguration(SubResource): + """Frontend IP address of the load balancer. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar inbound_nat_rules: An array of references to inbound rules that use + this frontend IP. + :vartype inbound_nat_rules: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar inbound_nat_pools: An array of references to inbound pools that use + this frontend IP. + :vartype inbound_nat_pools: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar outbound_rules: An array of references to outbound rules that use + this frontend IP. + :vartype outbound_rules: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar load_balancing_rules: An array of references to load balancing rules + that use this frontend IP. + :vartype load_balancing_rules: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param private_ip_address: The private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: The Private IP allocation method. + Possible values include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2019_09_01.models.IPAllocationMethod + :param private_ip_address_version: Whether the specific ipconfiguration is + IPv4 or IPv6. Default is taken as IPv4. Possible values include: 'IPv4', + 'IPv6' + :type private_ip_address_version: str or + ~azure.mgmt.network.v2019_09_01.models.IPVersion + :param subnet: The reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.Subnet + :param public_ip_address: The reference of the Public IP resource. + :type public_ip_address: + ~azure.mgmt.network.v2019_09_01.models.PublicIPAddress + :param public_ip_prefix: The reference of the Public IP Prefix resource. + :type public_ip_prefix: ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar provisioning_state: The provisioning state of the frontend IP + configuration resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within the set of + frontend IP configurations used by the load balancer. This name can be + used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + :param zones: A list of availability zones denoting the IP allocated for + the resource needs to come from. + :type zones: list[str] + """ + + _validation = { + 'inbound_nat_rules': {'readonly': True}, + 'inbound_nat_pools': {'readonly': True}, + 'outbound_rules': {'readonly': True}, + 'load_balancing_rules': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'inbound_nat_rules': {'key': 'properties.inboundNatRules', 'type': '[SubResource]'}, + 'inbound_nat_pools': {'key': 'properties.inboundNatPools', 'type': '[SubResource]'}, + 'outbound_rules': {'key': 'properties.outboundRules', 'type': '[SubResource]'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[SubResource]'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'private_ip_address_version': {'key': 'properties.privateIPAddressVersion', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'PublicIPAddress'}, + 'public_ip_prefix': {'key': 'properties.publicIPPrefix', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(FrontendIPConfiguration, self).__init__(**kwargs) + self.inbound_nat_rules = None + self.inbound_nat_pools = None + self.outbound_rules = None + self.load_balancing_rules = None + self.private_ip_address = kwargs.get('private_ip_address', None) + self.private_ip_allocation_method = kwargs.get('private_ip_allocation_method', None) + self.private_ip_address_version = kwargs.get('private_ip_address_version', None) + self.subnet = kwargs.get('subnet', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.public_ip_prefix = kwargs.get('public_ip_prefix', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + self.zones = kwargs.get('zones', None) + + +class GatewayRoute(Model): + """Gateway routing details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar local_address: The gateway's local address. + :vartype local_address: str + :ivar network: The route's network prefix. + :vartype network: str + :ivar next_hop: The route's next hop. + :vartype next_hop: str + :ivar source_peer: The peer this route was learned from. + :vartype source_peer: str + :ivar origin: The source this route was learned from. + :vartype origin: str + :ivar as_path: The route's AS path sequence. + :vartype as_path: str + :ivar weight: The route's weight. + :vartype weight: int + """ + + _validation = { + 'local_address': {'readonly': True}, + 'network': {'readonly': True}, + 'next_hop': {'readonly': True}, + 'source_peer': {'readonly': True}, + 'origin': {'readonly': True}, + 'as_path': {'readonly': True}, + 'weight': {'readonly': True}, + } + + _attribute_map = { + 'local_address': {'key': 'localAddress', 'type': 'str'}, + 'network': {'key': 'network', 'type': 'str'}, + 'next_hop': {'key': 'nextHop', 'type': 'str'}, + 'source_peer': {'key': 'sourcePeer', 'type': 'str'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'as_path': {'key': 'asPath', 'type': 'str'}, + 'weight': {'key': 'weight', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(GatewayRoute, self).__init__(**kwargs) + self.local_address = None + self.network = None + self.next_hop = None + self.source_peer = None + self.origin = None + self.as_path = None + self.weight = None + + +class GatewayRouteListResult(Model): + """List of virtual network gateway routes. + + :param value: List of gateway routes. + :type value: list[~azure.mgmt.network.v2019_09_01.models.GatewayRoute] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[GatewayRoute]'}, + } + + def __init__(self, **kwargs): + super(GatewayRouteListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + + +class GetVpnSitesConfigurationRequest(Model): + """List of Vpn-Sites. + + All required parameters must be populated in order to send to Azure. + + :param vpn_sites: List of resource-ids of the vpn-sites for which config + is to be downloaded. + :type vpn_sites: list[str] + :param output_blob_sas_url: Required. The sas-url to download the + configurations for vpn-sites. + :type output_blob_sas_url: str + """ + + _validation = { + 'output_blob_sas_url': {'required': True}, + } + + _attribute_map = { + 'vpn_sites': {'key': 'vpnSites', 'type': '[str]'}, + 'output_blob_sas_url': {'key': 'outputBlobSasUrl', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(GetVpnSitesConfigurationRequest, self).__init__(**kwargs) + self.vpn_sites = kwargs.get('vpn_sites', None) + self.output_blob_sas_url = kwargs.get('output_blob_sas_url', None) + + +class HTTPConfiguration(Model): + """HTTP configuration of the connectivity check. + + :param method: HTTP method. Possible values include: 'Get' + :type method: str or ~azure.mgmt.network.v2019_09_01.models.HTTPMethod + :param headers: List of HTTP headers. + :type headers: list[~azure.mgmt.network.v2019_09_01.models.HTTPHeader] + :param valid_status_codes: Valid status codes. + :type valid_status_codes: list[int] + """ + + _attribute_map = { + 'method': {'key': 'method', 'type': 'str'}, + 'headers': {'key': 'headers', 'type': '[HTTPHeader]'}, + 'valid_status_codes': {'key': 'validStatusCodes', 'type': '[int]'}, + } + + def __init__(self, **kwargs): + super(HTTPConfiguration, self).__init__(**kwargs) + self.method = kwargs.get('method', None) + self.headers = kwargs.get('headers', None) + self.valid_status_codes = kwargs.get('valid_status_codes', None) + + +class HTTPHeader(Model): + """Describes the HTTP header. + + :param name: The name in HTTP header. + :type name: str + :param value: The value in HTTP header. + :type value: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(HTTPHeader, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.value = kwargs.get('value', None) + + +class HubIPAddresses(Model): + """IP addresses associated with azure firewall. + + :param public_ip_addresses: List of Public IP addresses associated with + azure firewall. + :type public_ip_addresses: + list[~azure.mgmt.network.v2019_09_01.models.AzureFirewallPublicIPAddress] + :param private_ip_address: Private IP Address associated with azure + firewall. + :type private_ip_address: str + """ + + _attribute_map = { + 'public_ip_addresses': {'key': 'publicIPAddresses', 'type': '[AzureFirewallPublicIPAddress]'}, + 'private_ip_address': {'key': 'privateIPAddress', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(HubIPAddresses, self).__init__(**kwargs) + self.public_ip_addresses = kwargs.get('public_ip_addresses', None) + self.private_ip_address = kwargs.get('private_ip_address', None) + + +class HubVirtualNetworkConnection(SubResource): + """HubVirtualNetworkConnection Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param remote_virtual_network: Reference to the remote virtual network. + :type remote_virtual_network: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param allow_hub_to_remote_vnet_transit: VirtualHub to RemoteVnet transit + to enabled or not. + :type allow_hub_to_remote_vnet_transit: bool + :param allow_remote_vnet_to_use_hub_vnet_gateways: Allow RemoteVnet to use + Virtual Hub's gateways. + :type allow_remote_vnet_to_use_hub_vnet_gateways: bool + :param enable_internet_security: Enable internet security. + :type enable_internet_security: bool + :ivar provisioning_state: The provisioning state of the hub virtual + network connection resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'remote_virtual_network': {'key': 'properties.remoteVirtualNetwork', 'type': 'SubResource'}, + 'allow_hub_to_remote_vnet_transit': {'key': 'properties.allowHubToRemoteVnetTransit', 'type': 'bool'}, + 'allow_remote_vnet_to_use_hub_vnet_gateways': {'key': 'properties.allowRemoteVnetToUseHubVnetGateways', 'type': 'bool'}, + 'enable_internet_security': {'key': 'properties.enableInternetSecurity', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(HubVirtualNetworkConnection, self).__init__(**kwargs) + self.remote_virtual_network = kwargs.get('remote_virtual_network', None) + self.allow_hub_to_remote_vnet_transit = kwargs.get('allow_hub_to_remote_vnet_transit', None) + self.allow_remote_vnet_to_use_hub_vnet_gateways = kwargs.get('allow_remote_vnet_to_use_hub_vnet_gateways', None) + self.enable_internet_security = kwargs.get('enable_internet_security', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + + +class InboundNatPool(SubResource): + """Inbound NAT pool of the load balancer. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: A reference to frontend IP addresses. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param protocol: Required. The reference to the transport protocol used by + the inbound NAT pool. Possible values include: 'Udp', 'Tcp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.TransportProtocol + :param frontend_port_range_start: Required. The first port number in the + range of external ports that will be used to provide Inbound Nat to NICs + associated with a load balancer. Acceptable values range between 1 and + 65534. + :type frontend_port_range_start: int + :param frontend_port_range_end: Required. The last port number in the + range of external ports that will be used to provide Inbound Nat to NICs + associated with a load balancer. Acceptable values range between 1 and + 65535. + :type frontend_port_range_end: int + :param backend_port: Required. The port used for internal connections on + the endpoint. Acceptable values are between 1 and 65535. + :type backend_port: int + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + The value can be set between 4 and 30 minutes. The default value is 4 + minutes. This element is only used when the protocol is set to TCP. + :type idle_timeout_in_minutes: int + :param enable_floating_ip: Configures a virtual machine's endpoint for the + floating IP capability required to configure a SQL AlwaysOn Availability + Group. This setting is required when using the SQL AlwaysOn Availability + Groups in SQL server. This setting can't be changed after you create the + endpoint. + :type enable_floating_ip: bool + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :ivar provisioning_state: The provisioning state of the inbound NAT pool + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within the set of + inbound NAT pools used by the load balancer. This name can be used to + access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'protocol': {'required': True}, + 'frontend_port_range_start': {'required': True}, + 'frontend_port_range_end': {'required': True}, + 'backend_port': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'frontend_port_range_start': {'key': 'properties.frontendPortRangeStart', 'type': 'int'}, + 'frontend_port_range_end': {'key': 'properties.frontendPortRangeEnd', 'type': 'int'}, + 'backend_port': {'key': 'properties.backendPort', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'enable_floating_ip': {'key': 'properties.enableFloatingIP', 'type': 'bool'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(InboundNatPool, self).__init__(**kwargs) + self.frontend_ip_configuration = kwargs.get('frontend_ip_configuration', None) + self.protocol = kwargs.get('protocol', None) + self.frontend_port_range_start = kwargs.get('frontend_port_range_start', None) + self.frontend_port_range_end = kwargs.get('frontend_port_range_end', None) + self.backend_port = kwargs.get('backend_port', None) + self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None) + self.enable_floating_ip = kwargs.get('enable_floating_ip', None) + self.enable_tcp_reset = kwargs.get('enable_tcp_reset', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class InboundNatRule(SubResource): + """Inbound NAT rule of the load balancer. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: A reference to frontend IP addresses. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar backend_ip_configuration: A reference to a private IP address + defined on a network interface of a VM. Traffic sent to the frontend port + of each of the frontend IP configurations is forwarded to the backend IP. + :vartype backend_ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfiguration + :param protocol: The reference to the transport protocol used by the load + balancing rule. Possible values include: 'Udp', 'Tcp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.TransportProtocol + :param frontend_port: The port for the external endpoint. Port numbers for + each rule must be unique within the Load Balancer. Acceptable values range + from 1 to 65534. + :type frontend_port: int + :param backend_port: The port used for the internal endpoint. Acceptable + values range from 1 to 65535. + :type backend_port: int + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + The value can be set between 4 and 30 minutes. The default value is 4 + minutes. This element is only used when the protocol is set to TCP. + :type idle_timeout_in_minutes: int + :param enable_floating_ip: Configures a virtual machine's endpoint for the + floating IP capability required to configure a SQL AlwaysOn Availability + Group. This setting is required when using the SQL AlwaysOn Availability + Groups in SQL server. This setting can't be changed after you create the + endpoint. + :type enable_floating_ip: bool + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :ivar provisioning_state: The provisioning state of the inbound NAT rule + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within the set of + inbound NAT rules used by the load balancer. This name can be used to + access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'backend_ip_configuration': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'backend_ip_configuration': {'key': 'properties.backendIPConfiguration', 'type': 'NetworkInterfaceIPConfiguration'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'frontend_port': {'key': 'properties.frontendPort', 'type': 'int'}, + 'backend_port': {'key': 'properties.backendPort', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'enable_floating_ip': {'key': 'properties.enableFloatingIP', 'type': 'bool'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(InboundNatRule, self).__init__(**kwargs) + self.frontend_ip_configuration = kwargs.get('frontend_ip_configuration', None) + self.backend_ip_configuration = None + self.protocol = kwargs.get('protocol', None) + self.frontend_port = kwargs.get('frontend_port', None) + self.backend_port = kwargs.get('backend_port', None) + self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None) + self.enable_floating_ip = kwargs.get('enable_floating_ip', None) + self.enable_tcp_reset = kwargs.get('enable_tcp_reset', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class IPAddressAvailabilityResult(Model): + """Response for CheckIPAddressAvailability API service call. + + :param available: Private IP address availability. + :type available: bool + :param available_ip_addresses: Contains other available private IP + addresses if the asked for address is taken. + :type available_ip_addresses: list[str] + """ + + _attribute_map = { + 'available': {'key': 'available', 'type': 'bool'}, + 'available_ip_addresses': {'key': 'availableIPAddresses', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(IPAddressAvailabilityResult, self).__init__(**kwargs) + self.available = kwargs.get('available', None) + self.available_ip_addresses = kwargs.get('available_ip_addresses', None) + + +class IPConfiguration(SubResource): + """IP configuration. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param private_ip_address: The private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: The private IP address allocation + method. Possible values include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2019_09_01.models.IPAllocationMethod + :param subnet: The reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.Subnet + :param public_ip_address: The reference of the public IP resource. + :type public_ip_address: + ~azure.mgmt.network.v2019_09_01.models.PublicIPAddress + :ivar provisioning_state: The provisioning state of the IP configuration + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'PublicIPAddress'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IPConfiguration, self).__init__(**kwargs) + self.private_ip_address = kwargs.get('private_ip_address', None) + self.private_ip_allocation_method = kwargs.get('private_ip_allocation_method', None) + self.subnet = kwargs.get('subnet', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + + +class IPConfigurationProfile(SubResource): + """IP configuration profile child resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param subnet: The reference of the subnet resource to create a container + network interface ip configuration. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.Subnet + :ivar provisioning_state: The provisioning state of the IP configuration + profile resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource. This name can be used to access the + resource. + :type name: str + :ivar type: Sub Resource type. + :vartype type: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IPConfigurationProfile, self).__init__(**kwargs) + self.subnet = kwargs.get('subnet', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.type = None + self.etag = None + + +class IpGroup(Resource): + """The IpGroups resource information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar provisioning_state: The provisioning state of the IpGroups resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param ip_addresses: IpAddresses/IpAddressPrefixes in the IpGroups + resource. + :type ip_addresses: list[str] + :ivar firewalls: List of references to Azure resources that this IpGroups + is associated with + :vartype firewalls: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'firewalls': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'ip_addresses': {'key': 'properties.ipAddresses', 'type': '[str]'}, + 'firewalls': {'key': 'properties.firewalls', 'type': '[SubResource]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IpGroup, self).__init__(**kwargs) + self.provisioning_state = None + self.ip_addresses = kwargs.get('ip_addresses', None) + self.firewalls = None + self.etag = None + + +class IpsecPolicy(Model): + """An IPSec Policy configuration for a virtual network gateway connection. + + All required parameters must be populated in order to send to Azure. + + :param sa_life_time_seconds: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to + site VPN tunnel. + :type sa_life_time_seconds: int + :param sa_data_size_kilobytes: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) payload size in KB for a site to + site VPN tunnel. + :type sa_data_size_kilobytes: int + :param ipsec_encryption: Required. The IPSec encryption algorithm (IKE + phase 1). Possible values include: 'None', 'DES', 'DES3', 'AES128', + 'AES192', 'AES256', 'GCMAES128', 'GCMAES192', 'GCMAES256' + :type ipsec_encryption: str or + ~azure.mgmt.network.v2019_09_01.models.IpsecEncryption + :param ipsec_integrity: Required. The IPSec integrity algorithm (IKE phase + 1). Possible values include: 'MD5', 'SHA1', 'SHA256', 'GCMAES128', + 'GCMAES192', 'GCMAES256' + :type ipsec_integrity: str or + ~azure.mgmt.network.v2019_09_01.models.IpsecIntegrity + :param ike_encryption: Required. The IKE encryption algorithm (IKE phase + 2). Possible values include: 'DES', 'DES3', 'AES128', 'AES192', 'AES256', + 'GCMAES256', 'GCMAES128' + :type ike_encryption: str or + ~azure.mgmt.network.v2019_09_01.models.IkeEncryption + :param ike_integrity: Required. The IKE integrity algorithm (IKE phase 2). + Possible values include: 'MD5', 'SHA1', 'SHA256', 'SHA384', 'GCMAES256', + 'GCMAES128' + :type ike_integrity: str or + ~azure.mgmt.network.v2019_09_01.models.IkeIntegrity + :param dh_group: Required. The DH Group used in IKE Phase 1 for initial + SA. Possible values include: 'None', 'DHGroup1', 'DHGroup2', 'DHGroup14', + 'DHGroup2048', 'ECP256', 'ECP384', 'DHGroup24' + :type dh_group: str or ~azure.mgmt.network.v2019_09_01.models.DhGroup + :param pfs_group: Required. The Pfs Group used in IKE Phase 2 for new + child SA. Possible values include: 'None', 'PFS1', 'PFS2', 'PFS2048', + 'ECP256', 'ECP384', 'PFS24', 'PFS14', 'PFSMM' + :type pfs_group: str or ~azure.mgmt.network.v2019_09_01.models.PfsGroup + """ + + _validation = { + 'sa_life_time_seconds': {'required': True}, + 'sa_data_size_kilobytes': {'required': True}, + 'ipsec_encryption': {'required': True}, + 'ipsec_integrity': {'required': True}, + 'ike_encryption': {'required': True}, + 'ike_integrity': {'required': True}, + 'dh_group': {'required': True}, + 'pfs_group': {'required': True}, + } + + _attribute_map = { + 'sa_life_time_seconds': {'key': 'saLifeTimeSeconds', 'type': 'int'}, + 'sa_data_size_kilobytes': {'key': 'saDataSizeKilobytes', 'type': 'int'}, + 'ipsec_encryption': {'key': 'ipsecEncryption', 'type': 'str'}, + 'ipsec_integrity': {'key': 'ipsecIntegrity', 'type': 'str'}, + 'ike_encryption': {'key': 'ikeEncryption', 'type': 'str'}, + 'ike_integrity': {'key': 'ikeIntegrity', 'type': 'str'}, + 'dh_group': {'key': 'dhGroup', 'type': 'str'}, + 'pfs_group': {'key': 'pfsGroup', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IpsecPolicy, self).__init__(**kwargs) + self.sa_life_time_seconds = kwargs.get('sa_life_time_seconds', None) + self.sa_data_size_kilobytes = kwargs.get('sa_data_size_kilobytes', None) + self.ipsec_encryption = kwargs.get('ipsec_encryption', None) + self.ipsec_integrity = kwargs.get('ipsec_integrity', None) + self.ike_encryption = kwargs.get('ike_encryption', None) + self.ike_integrity = kwargs.get('ike_integrity', None) + self.dh_group = kwargs.get('dh_group', None) + self.pfs_group = kwargs.get('pfs_group', None) + + +class IpTag(Model): + """Contains the IpTag associated with the object. + + :param ip_tag_type: The IP tag type. Example: FirstPartyUsage. + :type ip_tag_type: str + :param tag: The value of the IP tag associated with the public IP. + Example: SQL. + :type tag: str + """ + + _attribute_map = { + 'ip_tag_type': {'key': 'ipTagType', 'type': 'str'}, + 'tag': {'key': 'tag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(IpTag, self).__init__(**kwargs) + self.ip_tag_type = kwargs.get('ip_tag_type', None) + self.tag = kwargs.get('tag', None) + + +class Ipv6ExpressRouteCircuitPeeringConfig(Model): + """Contains IPv6 peering config. + + :param primary_peer_address_prefix: The primary address prefix. + :type primary_peer_address_prefix: str + :param secondary_peer_address_prefix: The secondary address prefix. + :type secondary_peer_address_prefix: str + :param microsoft_peering_config: The Microsoft peering configuration. + :type microsoft_peering_config: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeeringConfig + :param route_filter: The reference of the RouteFilter resource. + :type route_filter: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param state: The state of peering. Possible values include: 'Disabled', + 'Enabled' + :type state: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeeringState + """ + + _attribute_map = { + 'primary_peer_address_prefix': {'key': 'primaryPeerAddressPrefix', 'type': 'str'}, + 'secondary_peer_address_prefix': {'key': 'secondaryPeerAddressPrefix', 'type': 'str'}, + 'microsoft_peering_config': {'key': 'microsoftPeeringConfig', 'type': 'ExpressRouteCircuitPeeringConfig'}, + 'route_filter': {'key': 'routeFilter', 'type': 'SubResource'}, + 'state': {'key': 'state', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Ipv6ExpressRouteCircuitPeeringConfig, self).__init__(**kwargs) + self.primary_peer_address_prefix = kwargs.get('primary_peer_address_prefix', None) + self.secondary_peer_address_prefix = kwargs.get('secondary_peer_address_prefix', None) + self.microsoft_peering_config = kwargs.get('microsoft_peering_config', None) + self.route_filter = kwargs.get('route_filter', None) + self.state = kwargs.get('state', None) + + +class LoadBalancer(Resource): + """LoadBalancer resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The load balancer SKU. + :type sku: ~azure.mgmt.network.v2019_09_01.models.LoadBalancerSku + :param frontend_ip_configurations: Object representing the frontend IPs to + be used for the load balancer. + :type frontend_ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.FrontendIPConfiguration] + :param backend_address_pools: Collection of backend address pools used by + a load balancer. + :type backend_address_pools: + list[~azure.mgmt.network.v2019_09_01.models.BackendAddressPool] + :param load_balancing_rules: Object collection representing the load + balancing rules Gets the provisioning. + :type load_balancing_rules: + list[~azure.mgmt.network.v2019_09_01.models.LoadBalancingRule] + :param probes: Collection of probe objects used in the load balancer. + :type probes: list[~azure.mgmt.network.v2019_09_01.models.Probe] + :param inbound_nat_rules: Collection of inbound NAT Rules used by a load + balancer. Defining inbound NAT rules on your load balancer is mutually + exclusive with defining an inbound NAT pool. Inbound NAT pools are + referenced from virtual machine scale sets. NICs that are associated with + individual virtual machines cannot reference an Inbound NAT pool. They + have to reference individual inbound NAT rules. + :type inbound_nat_rules: + list[~azure.mgmt.network.v2019_09_01.models.InboundNatRule] + :param inbound_nat_pools: Defines an external port range for inbound NAT + to a single backend port on NICs associated with a load balancer. Inbound + NAT rules are created automatically for each NIC associated with the Load + Balancer using an external port from this range. Defining an Inbound NAT + pool on your Load Balancer is mutually exclusive with defining inbound Nat + rules. Inbound NAT pools are referenced from virtual machine scale sets. + NICs that are associated with individual virtual machines cannot reference + an inbound NAT pool. They have to reference individual inbound NAT rules. + :type inbound_nat_pools: + list[~azure.mgmt.network.v2019_09_01.models.InboundNatPool] + :param outbound_rules: The outbound rules. + :type outbound_rules: + list[~azure.mgmt.network.v2019_09_01.models.OutboundRule] + :ivar resource_guid: The resource GUID property of the load balancer + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the load balancer + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'LoadBalancerSku'}, + 'frontend_ip_configurations': {'key': 'properties.frontendIPConfigurations', 'type': '[FrontendIPConfiguration]'}, + 'backend_address_pools': {'key': 'properties.backendAddressPools', 'type': '[BackendAddressPool]'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[LoadBalancingRule]'}, + 'probes': {'key': 'properties.probes', 'type': '[Probe]'}, + 'inbound_nat_rules': {'key': 'properties.inboundNatRules', 'type': '[InboundNatRule]'}, + 'inbound_nat_pools': {'key': 'properties.inboundNatPools', 'type': '[InboundNatPool]'}, + 'outbound_rules': {'key': 'properties.outboundRules', 'type': '[OutboundRule]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LoadBalancer, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.frontend_ip_configurations = kwargs.get('frontend_ip_configurations', None) + self.backend_address_pools = kwargs.get('backend_address_pools', None) + self.load_balancing_rules = kwargs.get('load_balancing_rules', None) + self.probes = kwargs.get('probes', None) + self.inbound_nat_rules = kwargs.get('inbound_nat_rules', None) + self.inbound_nat_pools = kwargs.get('inbound_nat_pools', None) + self.outbound_rules = kwargs.get('outbound_rules', None) + self.resource_guid = None + self.provisioning_state = None + self.etag = None + + +class LoadBalancerSku(Model): + """SKU of a load balancer. + + :param name: Name of a load balancer SKU. Possible values include: + 'Basic', 'Standard' + :type name: str or + ~azure.mgmt.network.v2019_09_01.models.LoadBalancerSkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LoadBalancerSku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + + +class LoadBalancingRule(SubResource): + """A load balancing rule for a load balancer. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: A reference to frontend IP addresses. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param backend_address_pool: A reference to a pool of DIPs. Inbound + traffic is randomly load balanced across IPs in the backend IPs. + :type backend_address_pool: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param probe: The reference of the load balancer probe used by the load + balancing rule. + :type probe: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param protocol: Required. The reference to the transport protocol used by + the load balancing rule. Possible values include: 'Udp', 'Tcp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.TransportProtocol + :param load_distribution: The load distribution policy for this rule. + Possible values include: 'Default', 'SourceIP', 'SourceIPProtocol' + :type load_distribution: str or + ~azure.mgmt.network.v2019_09_01.models.LoadDistribution + :param frontend_port: Required. The port for the external endpoint. Port + numbers for each rule must be unique within the Load Balancer. Acceptable + values are between 0 and 65534. Note that value 0 enables "Any Port". + :type frontend_port: int + :param backend_port: The port used for internal connections on the + endpoint. Acceptable values are between 0 and 65535. Note that value 0 + enables "Any Port". + :type backend_port: int + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + The value can be set between 4 and 30 minutes. The default value is 4 + minutes. This element is only used when the protocol is set to TCP. + :type idle_timeout_in_minutes: int + :param enable_floating_ip: Configures a virtual machine's endpoint for the + floating IP capability required to configure a SQL AlwaysOn Availability + Group. This setting is required when using the SQL AlwaysOn Availability + Groups in SQL server. This setting can't be changed after you create the + endpoint. + :type enable_floating_ip: bool + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param disable_outbound_snat: Configures SNAT for the VMs in the backend + pool to use the publicIP address specified in the frontend of the load + balancing rule. + :type disable_outbound_snat: bool + :ivar provisioning_state: The provisioning state of the load balancing + rule resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within the set of + load balancing rules used by the load balancer. This name can be used to + access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'protocol': {'required': True}, + 'frontend_port': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'probe': {'key': 'properties.probe', 'type': 'SubResource'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'load_distribution': {'key': 'properties.loadDistribution', 'type': 'str'}, + 'frontend_port': {'key': 'properties.frontendPort', 'type': 'int'}, + 'backend_port': {'key': 'properties.backendPort', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'enable_floating_ip': {'key': 'properties.enableFloatingIP', 'type': 'bool'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'disable_outbound_snat': {'key': 'properties.disableOutboundSnat', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LoadBalancingRule, self).__init__(**kwargs) + self.frontend_ip_configuration = kwargs.get('frontend_ip_configuration', None) + self.backend_address_pool = kwargs.get('backend_address_pool', None) + self.probe = kwargs.get('probe', None) + self.protocol = kwargs.get('protocol', None) + self.load_distribution = kwargs.get('load_distribution', None) + self.frontend_port = kwargs.get('frontend_port', None) + self.backend_port = kwargs.get('backend_port', None) + self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None) + self.enable_floating_ip = kwargs.get('enable_floating_ip', None) + self.enable_tcp_reset = kwargs.get('enable_tcp_reset', None) + self.disable_outbound_snat = kwargs.get('disable_outbound_snat', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class LocalNetworkGateway(Resource): + """A common class for general resource information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param local_network_address_space: Local network site address space. + :type local_network_address_space: + ~azure.mgmt.network.v2019_09_01.models.AddressSpace + :param gateway_ip_address: IP address of local network gateway. + :type gateway_ip_address: str + :param bgp_settings: Local network gateway's BGP speaker settings. + :type bgp_settings: ~azure.mgmt.network.v2019_09_01.models.BgpSettings + :ivar resource_guid: The resource GUID property of the local network + gateway resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the local network + gateway resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'local_network_address_space': {'key': 'properties.localNetworkAddressSpace', 'type': 'AddressSpace'}, + 'gateway_ip_address': {'key': 'properties.gatewayIpAddress', 'type': 'str'}, + 'bgp_settings': {'key': 'properties.bgpSettings', 'type': 'BgpSettings'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LocalNetworkGateway, self).__init__(**kwargs) + self.local_network_address_space = kwargs.get('local_network_address_space', None) + self.gateway_ip_address = kwargs.get('gateway_ip_address', None) + self.bgp_settings = kwargs.get('bgp_settings', None) + self.resource_guid = None + self.provisioning_state = None + self.etag = None + + +class LogSpecification(Model): + """Description of logging specification. + + :param name: The name of the specification. + :type name: str + :param display_name: The display name of the specification. + :type display_name: str + :param blob_duration: Duration of the blob. + :type blob_duration: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'blob_duration': {'key': 'blobDuration', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(LogSpecification, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display_name = kwargs.get('display_name', None) + self.blob_duration = kwargs.get('blob_duration', None) + + +class ManagedRuleGroupOverride(Model): + """Defines a managed rule group override setting. + + All required parameters must be populated in order to send to Azure. + + :param rule_group_name: Required. Describes the managed rule group to + override. + :type rule_group_name: str + :param rules: List of rules that will be disabled. If none specified, all + rules in the group will be disabled. + :type rules: + list[~azure.mgmt.network.v2019_09_01.models.ManagedRuleOverride] + """ + + _validation = { + 'rule_group_name': {'required': True}, + } + + _attribute_map = { + 'rule_group_name': {'key': 'ruleGroupName', 'type': 'str'}, + 'rules': {'key': 'rules', 'type': '[ManagedRuleOverride]'}, + } + + def __init__(self, **kwargs): + super(ManagedRuleGroupOverride, self).__init__(**kwargs) + self.rule_group_name = kwargs.get('rule_group_name', None) + self.rules = kwargs.get('rules', None) + + +class ManagedRuleOverride(Model): + """Defines a managed rule group override setting. + + All required parameters must be populated in order to send to Azure. + + :param rule_id: Required. Identifier for the managed rule. + :type rule_id: str + :param state: Describes the state of the managed rule. Defaults to + Disabled if not specified. Possible values include: 'Disabled' + :type state: str or + ~azure.mgmt.network.v2019_09_01.models.ManagedRuleEnabledState + """ + + _validation = { + 'rule_id': {'required': True}, + } + + _attribute_map = { + 'rule_id': {'key': 'ruleId', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ManagedRuleOverride, self).__init__(**kwargs) + self.rule_id = kwargs.get('rule_id', None) + self.state = kwargs.get('state', None) + + +class ManagedRulesDefinition(Model): + """Allow to exclude some variable satisfy the condition for the WAF check. + + All required parameters must be populated in order to send to Azure. + + :param exclusions: Describes the Exclusions that are applied on the + policy. + :type exclusions: + list[~azure.mgmt.network.v2019_09_01.models.OwaspCrsExclusionEntry] + :param managed_rule_sets: Required. Describes the ruleSets that are + associated with the policy. + :type managed_rule_sets: + list[~azure.mgmt.network.v2019_09_01.models.ManagedRuleSet] + """ + + _validation = { + 'managed_rule_sets': {'required': True}, + } + + _attribute_map = { + 'exclusions': {'key': 'exclusions', 'type': '[OwaspCrsExclusionEntry]'}, + 'managed_rule_sets': {'key': 'managedRuleSets', 'type': '[ManagedRuleSet]'}, + } + + def __init__(self, **kwargs): + super(ManagedRulesDefinition, self).__init__(**kwargs) + self.exclusions = kwargs.get('exclusions', None) + self.managed_rule_sets = kwargs.get('managed_rule_sets', None) + + +class ManagedRuleSet(Model): + """Defines a managed rule set. + + All required parameters must be populated in order to send to Azure. + + :param rule_set_type: Required. Defines the rule set type to use. + :type rule_set_type: str + :param rule_set_version: Required. Defines the version of the rule set to + use. + :type rule_set_version: str + :param rule_group_overrides: Defines the rule group overrides to apply to + the rule set. + :type rule_group_overrides: + list[~azure.mgmt.network.v2019_09_01.models.ManagedRuleGroupOverride] + """ + + _validation = { + 'rule_set_type': {'required': True}, + 'rule_set_version': {'required': True}, + } + + _attribute_map = { + 'rule_set_type': {'key': 'ruleSetType', 'type': 'str'}, + 'rule_set_version': {'key': 'ruleSetVersion', 'type': 'str'}, + 'rule_group_overrides': {'key': 'ruleGroupOverrides', 'type': '[ManagedRuleGroupOverride]'}, + } + + def __init__(self, **kwargs): + super(ManagedRuleSet, self).__init__(**kwargs) + self.rule_set_type = kwargs.get('rule_set_type', None) + self.rule_set_version = kwargs.get('rule_set_version', None) + self.rule_group_overrides = kwargs.get('rule_group_overrides', None) + + +class ManagedServiceIdentity(Model): + """Identity for the resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar principal_id: The principal id of the system assigned identity. This + property will only be provided for a system assigned identity. + :vartype principal_id: str + :ivar tenant_id: The tenant id of the system assigned identity. This + property will only be provided for a system assigned identity. + :vartype tenant_id: str + :param type: The type of identity used for the resource. The type + 'SystemAssigned, UserAssigned' includes both an implicitly created + identity and a set of user assigned identities. The type 'None' will + remove any identities from the virtual machine. Possible values include: + 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned', 'None' + :type type: str or + ~azure.mgmt.network.v2019_09_01.models.ResourceIdentityType + :param user_assigned_identities: The list of user identities associated + with resource. The user identity dictionary key references will be ARM + resource ids in the form: + '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. + :type user_assigned_identities: dict[str, + ~azure.mgmt.network.v2019_09_01.models.ManagedServiceIdentityUserAssignedIdentitiesValue] + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'tenant_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'ResourceIdentityType'}, + 'user_assigned_identities': {'key': 'userAssignedIdentities', 'type': '{ManagedServiceIdentityUserAssignedIdentitiesValue}'}, + } + + def __init__(self, **kwargs): + super(ManagedServiceIdentity, self).__init__(**kwargs) + self.principal_id = None + self.tenant_id = None + self.type = kwargs.get('type', None) + self.user_assigned_identities = kwargs.get('user_assigned_identities', None) + + +class ManagedServiceIdentityUserAssignedIdentitiesValue(Model): + """ManagedServiceIdentityUserAssignedIdentitiesValue. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar principal_id: The principal id of user assigned identity. + :vartype principal_id: str + :ivar client_id: The client id of user assigned identity. + :vartype client_id: str + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'client_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'client_id': {'key': 'clientId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ManagedServiceIdentityUserAssignedIdentitiesValue, self).__init__(**kwargs) + self.principal_id = None + self.client_id = None + + +class MatchCondition(Model): + """Define match conditions. + + All required parameters must be populated in order to send to Azure. + + :param match_variables: Required. List of match variables. + :type match_variables: + list[~azure.mgmt.network.v2019_09_01.models.MatchVariable] + :param operator: Required. Describes operator to be matched. Possible + values include: 'IPMatch', 'Equal', 'Contains', 'LessThan', 'GreaterThan', + 'LessThanOrEqual', 'GreaterThanOrEqual', 'BeginsWith', 'EndsWith', + 'Regex', 'GeoMatch' + :type operator: str or + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallOperator + :param negation_conditon: Describes if this is negate condition or not. + :type negation_conditon: bool + :param match_values: Required. Match value. + :type match_values: list[str] + :param transforms: List of transforms. + :type transforms: list[str or + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallTransform] + """ + + _validation = { + 'match_variables': {'required': True}, + 'operator': {'required': True}, + 'match_values': {'required': True}, + } + + _attribute_map = { + 'match_variables': {'key': 'matchVariables', 'type': '[MatchVariable]'}, + 'operator': {'key': 'operator', 'type': 'str'}, + 'negation_conditon': {'key': 'negationConditon', 'type': 'bool'}, + 'match_values': {'key': 'matchValues', 'type': '[str]'}, + 'transforms': {'key': 'transforms', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(MatchCondition, self).__init__(**kwargs) + self.match_variables = kwargs.get('match_variables', None) + self.operator = kwargs.get('operator', None) + self.negation_conditon = kwargs.get('negation_conditon', None) + self.match_values = kwargs.get('match_values', None) + self.transforms = kwargs.get('transforms', None) + + +class MatchedRule(Model): + """Matched rule. + + :param rule_name: Name of the matched network security rule. + :type rule_name: str + :param action: The network traffic is allowed or denied. Possible values + are 'Allow' and 'Deny'. + :type action: str + """ + + _attribute_map = { + 'rule_name': {'key': 'ruleName', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MatchedRule, self).__init__(**kwargs) + self.rule_name = kwargs.get('rule_name', None) + self.action = kwargs.get('action', None) + + +class MatchVariable(Model): + """Define match variables. + + All required parameters must be populated in order to send to Azure. + + :param variable_name: Required. Match Variable. Possible values include: + 'RemoteAddr', 'RequestMethod', 'QueryString', 'PostArgs', 'RequestUri', + 'RequestHeaders', 'RequestBody', 'RequestCookies' + :type variable_name: str or + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallMatchVariable + :param selector: Describes field of the matchVariable collection. + :type selector: str + """ + + _validation = { + 'variable_name': {'required': True}, + } + + _attribute_map = { + 'variable_name': {'key': 'variableName', 'type': 'str'}, + 'selector': {'key': 'selector', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MatchVariable, self).__init__(**kwargs) + self.variable_name = kwargs.get('variable_name', None) + self.selector = kwargs.get('selector', None) + + +class MetricSpecification(Model): + """Description of metrics specification. + + :param name: The name of the metric. + :type name: str + :param display_name: The display name of the metric. + :type display_name: str + :param display_description: The description of the metric. + :type display_description: str + :param unit: Units the metric to be displayed in. + :type unit: str + :param aggregation_type: The aggregation type. + :type aggregation_type: str + :param availabilities: List of availability. + :type availabilities: + list[~azure.mgmt.network.v2019_09_01.models.Availability] + :param enable_regional_mdm_account: Whether regional MDM account enabled. + :type enable_regional_mdm_account: bool + :param fill_gap_with_zero: Whether gaps would be filled with zeros. + :type fill_gap_with_zero: bool + :param metric_filter_pattern: Pattern for the filter of the metric. + :type metric_filter_pattern: str + :param dimensions: List of dimensions. + :type dimensions: list[~azure.mgmt.network.v2019_09_01.models.Dimension] + :param is_internal: Whether the metric is internal. + :type is_internal: bool + :param source_mdm_account: The source MDM account. + :type source_mdm_account: str + :param source_mdm_namespace: The source MDM namespace. + :type source_mdm_namespace: str + :param resource_id_dimension_name_override: The resource Id dimension name + override. + :type resource_id_dimension_name_override: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'display_description': {'key': 'displayDescription', 'type': 'str'}, + 'unit': {'key': 'unit', 'type': 'str'}, + 'aggregation_type': {'key': 'aggregationType', 'type': 'str'}, + 'availabilities': {'key': 'availabilities', 'type': '[Availability]'}, + 'enable_regional_mdm_account': {'key': 'enableRegionalMdmAccount', 'type': 'bool'}, + 'fill_gap_with_zero': {'key': 'fillGapWithZero', 'type': 'bool'}, + 'metric_filter_pattern': {'key': 'metricFilterPattern', 'type': 'str'}, + 'dimensions': {'key': 'dimensions', 'type': '[Dimension]'}, + 'is_internal': {'key': 'isInternal', 'type': 'bool'}, + 'source_mdm_account': {'key': 'sourceMdmAccount', 'type': 'str'}, + 'source_mdm_namespace': {'key': 'sourceMdmNamespace', 'type': 'str'}, + 'resource_id_dimension_name_override': {'key': 'resourceIdDimensionNameOverride', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(MetricSpecification, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display_name = kwargs.get('display_name', None) + self.display_description = kwargs.get('display_description', None) + self.unit = kwargs.get('unit', None) + self.aggregation_type = kwargs.get('aggregation_type', None) + self.availabilities = kwargs.get('availabilities', None) + self.enable_regional_mdm_account = kwargs.get('enable_regional_mdm_account', None) + self.fill_gap_with_zero = kwargs.get('fill_gap_with_zero', None) + self.metric_filter_pattern = kwargs.get('metric_filter_pattern', None) + self.dimensions = kwargs.get('dimensions', None) + self.is_internal = kwargs.get('is_internal', None) + self.source_mdm_account = kwargs.get('source_mdm_account', None) + self.source_mdm_namespace = kwargs.get('source_mdm_namespace', None) + self.resource_id_dimension_name_override = kwargs.get('resource_id_dimension_name_override', None) + + +class NatGateway(Resource): + """Nat Gateway resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The nat gateway SKU. + :type sku: ~azure.mgmt.network.v2019_09_01.models.NatGatewaySku + :param idle_timeout_in_minutes: The idle timeout of the nat gateway. + :type idle_timeout_in_minutes: int + :param public_ip_addresses: An array of public ip addresses associated + with the nat gateway resource. + :type public_ip_addresses: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param public_ip_prefixes: An array of public ip prefixes associated with + the nat gateway resource. + :type public_ip_prefixes: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar subnets: An array of references to the subnets using this nat + gateway resource. + :vartype subnets: list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar resource_guid: The resource GUID property of the NAT gateway + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the NAT gateway + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param zones: A list of availability zones denoting the zone in which Nat + Gateway should be deployed. + :type zones: list[str] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'subnets': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'NatGatewaySku'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'public_ip_addresses': {'key': 'properties.publicIpAddresses', 'type': '[SubResource]'}, + 'public_ip_prefixes': {'key': 'properties.publicIpPrefixes', 'type': '[SubResource]'}, + 'subnets': {'key': 'properties.subnets', 'type': '[SubResource]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NatGateway, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None) + self.public_ip_addresses = kwargs.get('public_ip_addresses', None) + self.public_ip_prefixes = kwargs.get('public_ip_prefixes', None) + self.subnets = None + self.resource_guid = None + self.provisioning_state = None + self.zones = kwargs.get('zones', None) + self.etag = None + + +class NatGatewaySku(Model): + """SKU of nat gateway. + + :param name: Name of Nat Gateway SKU. Possible values include: 'Standard' + :type name: str or + ~azure.mgmt.network.v2019_09_01.models.NatGatewaySkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NatGatewaySku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + + +class NetworkConfigurationDiagnosticParameters(Model): + """Parameters to get network configuration diagnostic. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the target resource to + perform network configuration diagnostic. Valid options are VM, + NetworkInterface, VMSS/NetworkInterface and Application Gateway. + :type target_resource_id: str + :param verbosity_level: Verbosity level. Possible values include: + 'Normal', 'Minimum', 'Full' + :type verbosity_level: str or + ~azure.mgmt.network.v2019_09_01.models.VerbosityLevel + :param profiles: Required. List of network configuration diagnostic + profiles. + :type profiles: + list[~azure.mgmt.network.v2019_09_01.models.NetworkConfigurationDiagnosticProfile] + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'profiles': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'verbosity_level': {'key': 'verbosityLevel', 'type': 'str'}, + 'profiles': {'key': 'profiles', 'type': '[NetworkConfigurationDiagnosticProfile]'}, + } + + def __init__(self, **kwargs): + super(NetworkConfigurationDiagnosticParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) + self.verbosity_level = kwargs.get('verbosity_level', None) + self.profiles = kwargs.get('profiles', None) + + +class NetworkConfigurationDiagnosticProfile(Model): + """Parameters to compare with network configuration. + + All required parameters must be populated in order to send to Azure. + + :param direction: Required. The direction of the traffic. Possible values + include: 'Inbound', 'Outbound' + :type direction: str or ~azure.mgmt.network.v2019_09_01.models.Direction + :param protocol: Required. Protocol to be verified on. Accepted values are + '*', TCP, UDP. + :type protocol: str + :param source: Required. Traffic source. Accepted values are '*', IP + Address/CIDR, Service Tag. + :type source: str + :param destination: Required. Traffic destination. Accepted values are: + '*', IP Address/CIDR, Service Tag. + :type destination: str + :param destination_port: Required. Traffic destination port. Accepted + values are '*' and a single port in the range (0 - 65535). + :type destination_port: str + """ + + _validation = { + 'direction': {'required': True}, + 'protocol': {'required': True}, + 'source': {'required': True}, + 'destination': {'required': True}, + 'destination_port': {'required': True}, + } + + _attribute_map = { + 'direction': {'key': 'direction', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'source': {'key': 'source', 'type': 'str'}, + 'destination': {'key': 'destination', 'type': 'str'}, + 'destination_port': {'key': 'destinationPort', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkConfigurationDiagnosticProfile, self).__init__(**kwargs) + self.direction = kwargs.get('direction', None) + self.protocol = kwargs.get('protocol', None) + self.source = kwargs.get('source', None) + self.destination = kwargs.get('destination', None) + self.destination_port = kwargs.get('destination_port', None) + + +class NetworkConfigurationDiagnosticResponse(Model): + """Results of network configuration diagnostic on the target resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar results: List of network configuration diagnostic results. + :vartype results: + list[~azure.mgmt.network.v2019_09_01.models.NetworkConfigurationDiagnosticResult] + """ + + _validation = { + 'results': {'readonly': True}, + } + + _attribute_map = { + 'results': {'key': 'results', 'type': '[NetworkConfigurationDiagnosticResult]'}, + } + + def __init__(self, **kwargs): + super(NetworkConfigurationDiagnosticResponse, self).__init__(**kwargs) + self.results = None + + +class NetworkConfigurationDiagnosticResult(Model): + """Network configuration diagnostic result corresponded to provided traffic + query. + + :param profile: Network configuration diagnostic profile. + :type profile: + ~azure.mgmt.network.v2019_09_01.models.NetworkConfigurationDiagnosticProfile + :param network_security_group_result: Network security group result. + :type network_security_group_result: + ~azure.mgmt.network.v2019_09_01.models.NetworkSecurityGroupResult + """ + + _attribute_map = { + 'profile': {'key': 'profile', 'type': 'NetworkConfigurationDiagnosticProfile'}, + 'network_security_group_result': {'key': 'networkSecurityGroupResult', 'type': 'NetworkSecurityGroupResult'}, + } + + def __init__(self, **kwargs): + super(NetworkConfigurationDiagnosticResult, self).__init__(**kwargs) + self.profile = kwargs.get('profile', None) + self.network_security_group_result = kwargs.get('network_security_group_result', None) + + +class NetworkIntentPolicy(Resource): + """Network Intent Policy resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkIntentPolicy, self).__init__(**kwargs) + self.etag = None + + +class NetworkIntentPolicyConfiguration(Model): + """Details of NetworkIntentPolicyConfiguration for + PrepareNetworkPoliciesRequest. + + :param network_intent_policy_name: The name of the Network Intent Policy + for storing in target subscription. + :type network_intent_policy_name: str + :param source_network_intent_policy: Source network intent policy. + :type source_network_intent_policy: + ~azure.mgmt.network.v2019_09_01.models.NetworkIntentPolicy + """ + + _attribute_map = { + 'network_intent_policy_name': {'key': 'networkIntentPolicyName', 'type': 'str'}, + 'source_network_intent_policy': {'key': 'sourceNetworkIntentPolicy', 'type': 'NetworkIntentPolicy'}, + } + + def __init__(self, **kwargs): + super(NetworkIntentPolicyConfiguration, self).__init__(**kwargs) + self.network_intent_policy_name = kwargs.get('network_intent_policy_name', None) + self.source_network_intent_policy = kwargs.get('source_network_intent_policy', None) + + +class NetworkInterface(Resource): + """A network interface in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar virtual_machine: The reference of a virtual machine. + :vartype virtual_machine: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param network_security_group: The reference of the NetworkSecurityGroup + resource. + :type network_security_group: + ~azure.mgmt.network.v2019_09_01.models.NetworkSecurityGroup + :ivar private_endpoint: A reference to the private endpoint to which the + network interface is linked. + :vartype private_endpoint: + ~azure.mgmt.network.v2019_09_01.models.PrivateEndpoint + :param ip_configurations: A list of IPConfigurations of the network + interface. + :type ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfiguration] + :ivar tap_configurations: A list of TapConfigurations of the network + interface. + :vartype tap_configurations: + list[~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceTapConfiguration] + :param dns_settings: The DNS settings in network interface. + :type dns_settings: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceDnsSettings + :ivar mac_address: The MAC address of the network interface. + :vartype mac_address: str + :ivar primary: Whether this is a primary network interface on a virtual + machine. + :vartype primary: bool + :param enable_accelerated_networking: If the network interface is + accelerated networking enabled. + :type enable_accelerated_networking: bool + :param enable_ip_forwarding: Indicates whether IP forwarding is enabled on + this network interface. + :type enable_ip_forwarding: bool + :ivar hosted_workloads: A list of references to linked BareMetal + resources. + :vartype hosted_workloads: list[str] + :ivar resource_guid: The resource GUID property of the network interface + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the network interface + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_machine': {'readonly': True}, + 'private_endpoint': {'readonly': True}, + 'tap_configurations': {'readonly': True}, + 'mac_address': {'readonly': True}, + 'primary': {'readonly': True}, + 'hosted_workloads': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_machine': {'key': 'properties.virtualMachine', 'type': 'SubResource'}, + 'network_security_group': {'key': 'properties.networkSecurityGroup', 'type': 'NetworkSecurityGroup'}, + 'private_endpoint': {'key': 'properties.privateEndpoint', 'type': 'PrivateEndpoint'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[NetworkInterfaceIPConfiguration]'}, + 'tap_configurations': {'key': 'properties.tapConfigurations', 'type': '[NetworkInterfaceTapConfiguration]'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'NetworkInterfaceDnsSettings'}, + 'mac_address': {'key': 'properties.macAddress', 'type': 'str'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'enable_accelerated_networking': {'key': 'properties.enableAcceleratedNetworking', 'type': 'bool'}, + 'enable_ip_forwarding': {'key': 'properties.enableIPForwarding', 'type': 'bool'}, + 'hosted_workloads': {'key': 'properties.hostedWorkloads', 'type': '[str]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkInterface, self).__init__(**kwargs) + self.virtual_machine = None + self.network_security_group = kwargs.get('network_security_group', None) + self.private_endpoint = None + self.ip_configurations = kwargs.get('ip_configurations', None) + self.tap_configurations = None + self.dns_settings = kwargs.get('dns_settings', None) + self.mac_address = None + self.primary = None + self.enable_accelerated_networking = kwargs.get('enable_accelerated_networking', None) + self.enable_ip_forwarding = kwargs.get('enable_ip_forwarding', None) + self.hosted_workloads = None + self.resource_guid = None + self.provisioning_state = None + self.etag = None + + +class NetworkInterfaceAssociation(Model): + """Network interface and its custom security rules. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Network interface ID. + :vartype id: str + :param security_rules: Collection of custom security rules. + :type security_rules: + list[~azure.mgmt.network.v2019_09_01.models.SecurityRule] + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'security_rules': {'key': 'securityRules', 'type': '[SecurityRule]'}, + } + + def __init__(self, **kwargs): + super(NetworkInterfaceAssociation, self).__init__(**kwargs) + self.id = None + self.security_rules = kwargs.get('security_rules', None) + + +class NetworkInterfaceDnsSettings(Model): + """DNS settings of a network interface. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param dns_servers: List of DNS servers IP addresses. Use + 'AzureProvidedDNS' to switch to azure provided DNS resolution. + 'AzureProvidedDNS' value cannot be combined with other IPs, it must be the + only value in dnsServers collection. + :type dns_servers: list[str] + :ivar applied_dns_servers: If the VM that uses this NIC is part of an + Availability Set, then this list will have the union of all DNS servers + from all NICs that are part of the Availability Set. This property is what + is configured on each of those VMs. + :vartype applied_dns_servers: list[str] + :param internal_dns_name_label: Relative DNS name for this NIC used for + internal communications between VMs in the same virtual network. + :type internal_dns_name_label: str + :ivar internal_fqdn: Fully qualified DNS name supporting internal + communications between VMs in the same virtual network. + :vartype internal_fqdn: str + :ivar internal_domain_name_suffix: Even if internalDnsNameLabel is not + specified, a DNS entry is created for the primary NIC of the VM. This DNS + name can be constructed by concatenating the VM name with the value of + internalDomainNameSuffix. + :vartype internal_domain_name_suffix: str + """ + + _validation = { + 'applied_dns_servers': {'readonly': True}, + 'internal_fqdn': {'readonly': True}, + 'internal_domain_name_suffix': {'readonly': True}, + } + + _attribute_map = { + 'dns_servers': {'key': 'dnsServers', 'type': '[str]'}, + 'applied_dns_servers': {'key': 'appliedDnsServers', 'type': '[str]'}, + 'internal_dns_name_label': {'key': 'internalDnsNameLabel', 'type': 'str'}, + 'internal_fqdn': {'key': 'internalFqdn', 'type': 'str'}, + 'internal_domain_name_suffix': {'key': 'internalDomainNameSuffix', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkInterfaceDnsSettings, self).__init__(**kwargs) + self.dns_servers = kwargs.get('dns_servers', None) + self.applied_dns_servers = None + self.internal_dns_name_label = kwargs.get('internal_dns_name_label', None) + self.internal_fqdn = None + self.internal_domain_name_suffix = None + + +class NetworkInterfaceIPConfiguration(SubResource): + """IPConfiguration in a network interface. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param virtual_network_taps: The reference to Virtual Network Taps. + :type virtual_network_taps: + list[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkTap] + :param application_gateway_backend_address_pools: The reference of + ApplicationGatewayBackendAddressPool resource. + :type application_gateway_backend_address_pools: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendAddressPool] + :param load_balancer_backend_address_pools: The reference of + LoadBalancerBackendAddressPool resource. + :type load_balancer_backend_address_pools: + list[~azure.mgmt.network.v2019_09_01.models.BackendAddressPool] + :param load_balancer_inbound_nat_rules: A list of references of + LoadBalancerInboundNatRules. + :type load_balancer_inbound_nat_rules: + list[~azure.mgmt.network.v2019_09_01.models.InboundNatRule] + :param private_ip_address: Private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: The private IP address allocation + method. Possible values include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2019_09_01.models.IPAllocationMethod + :param private_ip_address_version: Whether the specific IP configuration + is IPv4 or IPv6. Default is IPv4. Possible values include: 'IPv4', 'IPv6' + :type private_ip_address_version: str or + ~azure.mgmt.network.v2019_09_01.models.IPVersion + :param subnet: Subnet bound to the IP configuration. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.Subnet + :param primary: Whether this is a primary customer address on the network + interface. + :type primary: bool + :param public_ip_address: Public IP address bound to the IP configuration. + :type public_ip_address: + ~azure.mgmt.network.v2019_09_01.models.PublicIPAddress + :param application_security_groups: Application security groups in which + the IP configuration is included. + :type application_security_groups: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationSecurityGroup] + :ivar provisioning_state: The provisioning state of the network interface + IP configuration. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar private_link_connection_properties: PrivateLinkConnection properties + for the network interface. + :vartype private_link_connection_properties: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'private_link_connection_properties': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'virtual_network_taps': {'key': 'properties.virtualNetworkTaps', 'type': '[VirtualNetworkTap]'}, + 'application_gateway_backend_address_pools': {'key': 'properties.applicationGatewayBackendAddressPools', 'type': '[ApplicationGatewayBackendAddressPool]'}, + 'load_balancer_backend_address_pools': {'key': 'properties.loadBalancerBackendAddressPools', 'type': '[BackendAddressPool]'}, + 'load_balancer_inbound_nat_rules': {'key': 'properties.loadBalancerInboundNatRules', 'type': '[InboundNatRule]'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'private_ip_address_version': {'key': 'properties.privateIPAddressVersion', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'PublicIPAddress'}, + 'application_security_groups': {'key': 'properties.applicationSecurityGroups', 'type': '[ApplicationSecurityGroup]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'private_link_connection_properties': {'key': 'properties.privateLinkConnectionProperties', 'type': 'NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkInterfaceIPConfiguration, self).__init__(**kwargs) + self.virtual_network_taps = kwargs.get('virtual_network_taps', None) + self.application_gateway_backend_address_pools = kwargs.get('application_gateway_backend_address_pools', None) + self.load_balancer_backend_address_pools = kwargs.get('load_balancer_backend_address_pools', None) + self.load_balancer_inbound_nat_rules = kwargs.get('load_balancer_inbound_nat_rules', None) + self.private_ip_address = kwargs.get('private_ip_address', None) + self.private_ip_allocation_method = kwargs.get('private_ip_allocation_method', None) + self.private_ip_address_version = kwargs.get('private_ip_address_version', None) + self.subnet = kwargs.get('subnet', None) + self.primary = kwargs.get('primary', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.application_security_groups = kwargs.get('application_security_groups', None) + self.provisioning_state = None + self.private_link_connection_properties = None + self.name = kwargs.get('name', None) + self.etag = None + + +class NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties(Model): + """PrivateLinkConnection properties for the network interface. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar group_id: The group ID for current private link connection. + :vartype group_id: str + :ivar required_member_name: The required member name for current private + link connection. + :vartype required_member_name: str + :ivar fqdns: List of FQDNs for current private link connection. + :vartype fqdns: list[str] + """ + + _validation = { + 'group_id': {'readonly': True}, + 'required_member_name': {'readonly': True}, + 'fqdns': {'readonly': True}, + } + + _attribute_map = { + 'group_id': {'key': 'groupId', 'type': 'str'}, + 'required_member_name': {'key': 'requiredMemberName', 'type': 'str'}, + 'fqdns': {'key': 'fqdns', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties, self).__init__(**kwargs) + self.group_id = None + self.required_member_name = None + self.fqdns = None + + +class NetworkInterfaceTapConfiguration(SubResource): + """Tap configuration in a Network Interface. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param virtual_network_tap: The reference of the Virtual Network Tap + resource. + :type virtual_network_tap: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkTap + :ivar provisioning_state: The provisioning state of the network interface + tap configuration resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Sub Resource type. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'virtual_network_tap': {'key': 'properties.virtualNetworkTap', 'type': 'VirtualNetworkTap'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkInterfaceTapConfiguration, self).__init__(**kwargs) + self.virtual_network_tap = kwargs.get('virtual_network_tap', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class NetworkProfile(Resource): + """Network profile resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar container_network_interfaces: List of child container network + interfaces. + :vartype container_network_interfaces: + list[~azure.mgmt.network.v2019_09_01.models.ContainerNetworkInterface] + :param container_network_interface_configurations: List of chid container + network interface configurations. + :type container_network_interface_configurations: + list[~azure.mgmt.network.v2019_09_01.models.ContainerNetworkInterfaceConfiguration] + :ivar resource_guid: The resource GUID property of the network profile + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the network profile + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'container_network_interfaces': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'container_network_interfaces': {'key': 'properties.containerNetworkInterfaces', 'type': '[ContainerNetworkInterface]'}, + 'container_network_interface_configurations': {'key': 'properties.containerNetworkInterfaceConfigurations', 'type': '[ContainerNetworkInterfaceConfiguration]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkProfile, self).__init__(**kwargs) + self.container_network_interfaces = None + self.container_network_interface_configurations = kwargs.get('container_network_interface_configurations', None) + self.resource_guid = None + self.provisioning_state = None + self.etag = None + + +class NetworkRuleCondition(FirewallPolicyRuleCondition): + """Rule condition of type network. + + All required parameters must be populated in order to send to Azure. + + :param name: Name of the rule condition. + :type name: str + :param description: Description of the rule condition. + :type description: str + :param rule_condition_type: Required. Constant filled by server. + :type rule_condition_type: str + :param ip_protocols: Array of FirewallPolicyRuleConditionNetworkProtocols. + :type ip_protocols: list[str or + ~azure.mgmt.network.v2019_09_01.models.FirewallPolicyRuleConditionNetworkProtocol] + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param destination_addresses: List of destination IP addresses or Service + Tags. + :type destination_addresses: list[str] + :param destination_ports: List of destination ports. + :type destination_ports: list[str] + """ + + _validation = { + 'rule_condition_type': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'rule_condition_type': {'key': 'ruleConditionType', 'type': 'str'}, + 'ip_protocols': {'key': 'ipProtocols', 'type': '[str]'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'destination_addresses': {'key': 'destinationAddresses', 'type': '[str]'}, + 'destination_ports': {'key': 'destinationPorts', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(NetworkRuleCondition, self).__init__(**kwargs) + self.ip_protocols = kwargs.get('ip_protocols', None) + self.source_addresses = kwargs.get('source_addresses', None) + self.destination_addresses = kwargs.get('destination_addresses', None) + self.destination_ports = kwargs.get('destination_ports', None) + self.rule_condition_type = 'NetworkRuleCondition' + + +class NetworkSecurityGroup(Resource): + """NetworkSecurityGroup resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param security_rules: A collection of security rules of the network + security group. + :type security_rules: + list[~azure.mgmt.network.v2019_09_01.models.SecurityRule] + :ivar default_security_rules: The default security rules of network + security group. + :vartype default_security_rules: + list[~azure.mgmt.network.v2019_09_01.models.SecurityRule] + :ivar network_interfaces: A collection of references to network + interfaces. + :vartype network_interfaces: + list[~azure.mgmt.network.v2019_09_01.models.NetworkInterface] + :ivar subnets: A collection of references to subnets. + :vartype subnets: list[~azure.mgmt.network.v2019_09_01.models.Subnet] + :ivar resource_guid: The resource GUID property of the network security + group resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the network security + group resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'default_security_rules': {'readonly': True}, + 'network_interfaces': {'readonly': True}, + 'subnets': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'security_rules': {'key': 'properties.securityRules', 'type': '[SecurityRule]'}, + 'default_security_rules': {'key': 'properties.defaultSecurityRules', 'type': '[SecurityRule]'}, + 'network_interfaces': {'key': 'properties.networkInterfaces', 'type': '[NetworkInterface]'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkSecurityGroup, self).__init__(**kwargs) + self.security_rules = kwargs.get('security_rules', None) + self.default_security_rules = None + self.network_interfaces = None + self.subnets = None + self.resource_guid = None + self.provisioning_state = None + self.etag = None + + +class NetworkSecurityGroupResult(Model): + """Network configuration diagnostic result corresponded provided traffic + query. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param security_rule_access_result: The network traffic is allowed or + denied. Possible values include: 'Allow', 'Deny' + :type security_rule_access_result: str or + ~azure.mgmt.network.v2019_09_01.models.SecurityRuleAccess + :ivar evaluated_network_security_groups: List of results network security + groups diagnostic. + :vartype evaluated_network_security_groups: + list[~azure.mgmt.network.v2019_09_01.models.EvaluatedNetworkSecurityGroup] + """ + + _validation = { + 'evaluated_network_security_groups': {'readonly': True}, + } + + _attribute_map = { + 'security_rule_access_result': {'key': 'securityRuleAccessResult', 'type': 'str'}, + 'evaluated_network_security_groups': {'key': 'evaluatedNetworkSecurityGroups', 'type': '[EvaluatedNetworkSecurityGroup]'}, + } + + def __init__(self, **kwargs): + super(NetworkSecurityGroupResult, self).__init__(**kwargs) + self.security_rule_access_result = kwargs.get('security_rule_access_result', None) + self.evaluated_network_security_groups = None + + +class NetworkSecurityRulesEvaluationResult(Model): + """Network security rules evaluation result. + + :param name: Name of the network security rule. + :type name: str + :param protocol_matched: Value indicating whether protocol is matched. + :type protocol_matched: bool + :param source_matched: Value indicating whether source is matched. + :type source_matched: bool + :param source_port_matched: Value indicating whether source port is + matched. + :type source_port_matched: bool + :param destination_matched: Value indicating whether destination is + matched. + :type destination_matched: bool + :param destination_port_matched: Value indicating whether destination port + is matched. + :type destination_port_matched: bool + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'protocol_matched': {'key': 'protocolMatched', 'type': 'bool'}, + 'source_matched': {'key': 'sourceMatched', 'type': 'bool'}, + 'source_port_matched': {'key': 'sourcePortMatched', 'type': 'bool'}, + 'destination_matched': {'key': 'destinationMatched', 'type': 'bool'}, + 'destination_port_matched': {'key': 'destinationPortMatched', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(NetworkSecurityRulesEvaluationResult, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.protocol_matched = kwargs.get('protocol_matched', None) + self.source_matched = kwargs.get('source_matched', None) + self.source_port_matched = kwargs.get('source_port_matched', None) + self.destination_matched = kwargs.get('destination_matched', None) + self.destination_port_matched = kwargs.get('destination_port_matched', None) + + +class NetworkWatcher(Resource): + """Network watcher in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar provisioning_state: The provisioning state of the network watcher + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NetworkWatcher, self).__init__(**kwargs) + self.etag = None + self.provisioning_state = None + + +class NextHopParameters(Model): + """Parameters that define the source and destination endpoint. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The resource identifier of the target + resource against which the action is to be performed. + :type target_resource_id: str + :param source_ip_address: Required. The source IP address. + :type source_ip_address: str + :param destination_ip_address: Required. The destination IP address. + :type destination_ip_address: str + :param target_nic_resource_id: The NIC ID. (If VM has multiple NICs and IP + forwarding is enabled on any of the nics, then this parameter must be + specified. Otherwise optional). + :type target_nic_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'source_ip_address': {'required': True}, + 'destination_ip_address': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'source_ip_address': {'key': 'sourceIPAddress', 'type': 'str'}, + 'destination_ip_address': {'key': 'destinationIPAddress', 'type': 'str'}, + 'target_nic_resource_id': {'key': 'targetNicResourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NextHopParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) + self.source_ip_address = kwargs.get('source_ip_address', None) + self.destination_ip_address = kwargs.get('destination_ip_address', None) + self.target_nic_resource_id = kwargs.get('target_nic_resource_id', None) + + +class NextHopResult(Model): + """The information about next hop from the specified VM. + + :param next_hop_type: Next hop type. Possible values include: 'Internet', + 'VirtualAppliance', 'VirtualNetworkGateway', 'VnetLocal', + 'HyperNetGateway', 'None' + :type next_hop_type: str or + ~azure.mgmt.network.v2019_09_01.models.NextHopType + :param next_hop_ip_address: Next hop IP Address. + :type next_hop_ip_address: str + :param route_table_id: The resource identifier for the route table + associated with the route being returned. If the route being returned does + not correspond to any user created routes then this field will be the + string 'System Route'. + :type route_table_id: str + """ + + _attribute_map = { + 'next_hop_type': {'key': 'nextHopType', 'type': 'str'}, + 'next_hop_ip_address': {'key': 'nextHopIpAddress', 'type': 'str'}, + 'route_table_id': {'key': 'routeTableId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(NextHopResult, self).__init__(**kwargs) + self.next_hop_type = kwargs.get('next_hop_type', None) + self.next_hop_ip_address = kwargs.get('next_hop_ip_address', None) + self.route_table_id = kwargs.get('route_table_id', None) + + +class Operation(Model): + """Network REST API operation definition. + + :param name: Operation name: {provider}/{resource}/{operation}. + :type name: str + :param display: Display metadata associated with the operation. + :type display: ~azure.mgmt.network.v2019_09_01.models.OperationDisplay + :param origin: Origin of the operation. + :type origin: str + :param service_specification: Specification of the service. + :type service_specification: + ~azure.mgmt.network.v2019_09_01.models.OperationPropertiesFormatServiceSpecification + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'service_specification': {'key': 'properties.serviceSpecification', 'type': 'OperationPropertiesFormatServiceSpecification'}, + } + + def __init__(self, **kwargs): + super(Operation, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.display = kwargs.get('display', None) + self.origin = kwargs.get('origin', None) + self.service_specification = kwargs.get('service_specification', None) + + +class OperationDisplay(Model): + """Display metadata associated with the operation. + + :param provider: Service provider: Microsoft Network. + :type provider: str + :param resource: Resource on which the operation is performed. + :type resource: str + :param operation: Type of the operation: get, read, delete, etc. + :type operation: str + :param description: Description of the operation. + :type description: str + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'resource': {'key': 'resource', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OperationDisplay, self).__init__(**kwargs) + self.provider = kwargs.get('provider', None) + self.resource = kwargs.get('resource', None) + self.operation = kwargs.get('operation', None) + self.description = kwargs.get('description', None) + + +class OperationPropertiesFormatServiceSpecification(Model): + """Specification of the service. + + :param metric_specifications: Operation service specification. + :type metric_specifications: + list[~azure.mgmt.network.v2019_09_01.models.MetricSpecification] + :param log_specifications: Operation log specification. + :type log_specifications: + list[~azure.mgmt.network.v2019_09_01.models.LogSpecification] + """ + + _attribute_map = { + 'metric_specifications': {'key': 'metricSpecifications', 'type': '[MetricSpecification]'}, + 'log_specifications': {'key': 'logSpecifications', 'type': '[LogSpecification]'}, + } + + def __init__(self, **kwargs): + super(OperationPropertiesFormatServiceSpecification, self).__init__(**kwargs) + self.metric_specifications = kwargs.get('metric_specifications', None) + self.log_specifications = kwargs.get('log_specifications', None) + + +class OutboundRule(SubResource): + """Outbound rule of the load balancer. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param allocated_outbound_ports: The number of outbound ports to be used + for NAT. + :type allocated_outbound_ports: int + :param frontend_ip_configurations: Required. The Frontend IP addresses of + the load balancer. + :type frontend_ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param backend_address_pool: Required. A reference to a pool of DIPs. + Outbound traffic is randomly load balanced across IPs in the backend IPs. + :type backend_address_pool: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar provisioning_state: The provisioning state of the outbound rule + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param protocol: Required. The protocol for the outbound rule in load + balancer. Possible values include: 'Tcp', 'Udp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.LoadBalancerOutboundRuleProtocol + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + :type idle_timeout_in_minutes: int + :param name: The name of the resource that is unique within the set of + outbound rules used by the load balancer. This name can be used to access + the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'frontend_ip_configurations': {'required': True}, + 'backend_address_pool': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'protocol': {'required': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'allocated_outbound_ports': {'key': 'properties.allocatedOutboundPorts', 'type': 'int'}, + 'frontend_ip_configurations': {'key': 'properties.frontendIPConfigurations', 'type': '[SubResource]'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OutboundRule, self).__init__(**kwargs) + self.allocated_outbound_ports = kwargs.get('allocated_outbound_ports', None) + self.frontend_ip_configurations = kwargs.get('frontend_ip_configurations', None) + self.backend_address_pool = kwargs.get('backend_address_pool', None) + self.provisioning_state = None + self.protocol = kwargs.get('protocol', None) + self.enable_tcp_reset = kwargs.get('enable_tcp_reset', None) + self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None) + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class OwaspCrsExclusionEntry(Model): + """Allow to exclude some variable satisfy the condition for the WAF check. + + All required parameters must be populated in order to send to Azure. + + :param match_variable: Required. The variable to be excluded. Possible + values include: 'RequestHeaderNames', 'RequestCookieNames', + 'RequestArgNames' + :type match_variable: str or + ~azure.mgmt.network.v2019_09_01.models.OwaspCrsExclusionEntryMatchVariable + :param selector_match_operator: Required. When matchVariable is a + collection, operate on the selector to specify which elements in the + collection this exclusion applies to. Possible values include: 'Equals', + 'Contains', 'StartsWith', 'EndsWith', 'EqualsAny' + :type selector_match_operator: str or + ~azure.mgmt.network.v2019_09_01.models.OwaspCrsExclusionEntrySelectorMatchOperator + :param selector: Required. When matchVariable is a collection, operator + used to specify which elements in the collection this exclusion applies + to. + :type selector: str + """ + + _validation = { + 'match_variable': {'required': True}, + 'selector_match_operator': {'required': True}, + 'selector': {'required': True}, + } + + _attribute_map = { + 'match_variable': {'key': 'matchVariable', 'type': 'str'}, + 'selector_match_operator': {'key': 'selectorMatchOperator', 'type': 'str'}, + 'selector': {'key': 'selector', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(OwaspCrsExclusionEntry, self).__init__(**kwargs) + self.match_variable = kwargs.get('match_variable', None) + self.selector_match_operator = kwargs.get('selector_match_operator', None) + self.selector = kwargs.get('selector', None) + + +class P2SConnectionConfiguration(SubResource): + """P2SConnectionConfiguration Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param vpn_client_address_pool: The reference of the address space + resource which represents Address space for P2S VpnClient. + :type vpn_client_address_pool: + ~azure.mgmt.network.v2019_09_01.models.AddressSpace + :ivar provisioning_state: The provisioning state of the + P2SConnectionConfiguration resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'vpn_client_address_pool': {'key': 'properties.vpnClientAddressPool', 'type': 'AddressSpace'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(P2SConnectionConfiguration, self).__init__(**kwargs) + self.vpn_client_address_pool = kwargs.get('vpn_client_address_pool', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + + +class P2SVpnConnectionHealth(Model): + """P2S Vpn connection detailed health written to sas url. + + :param sas_url: Returned sas url of the blob to which the p2s vpn + connection detailed health will be written. + :type sas_url: str + """ + + _attribute_map = { + 'sas_url': {'key': 'sasUrl', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(P2SVpnConnectionHealth, self).__init__(**kwargs) + self.sas_url = kwargs.get('sas_url', None) + + +class P2SVpnConnectionHealthRequest(Model): + """List of P2S Vpn connection health request. + + :param vpn_user_names_filter: The list of p2s vpn user names whose p2s vpn + connection detailed health to retrieve for. + :type vpn_user_names_filter: list[str] + :param output_blob_sas_url: The sas-url to download the P2S Vpn connection + health detail. + :type output_blob_sas_url: str + """ + + _attribute_map = { + 'vpn_user_names_filter': {'key': 'vpnUserNamesFilter', 'type': '[str]'}, + 'output_blob_sas_url': {'key': 'outputBlobSasUrl', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(P2SVpnConnectionHealthRequest, self).__init__(**kwargs) + self.vpn_user_names_filter = kwargs.get('vpn_user_names_filter', None) + self.output_blob_sas_url = kwargs.get('output_blob_sas_url', None) + + +class P2SVpnGateway(Resource): + """P2SVpnGateway Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_hub: The VirtualHub to which the gateway belongs. + :type virtual_hub: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param p2_sconnection_configurations: List of all p2s connection + configurations of the gateway. + :type p2_sconnection_configurations: + list[~azure.mgmt.network.v2019_09_01.models.P2SConnectionConfiguration] + :ivar provisioning_state: The provisioning state of the P2S VPN gateway + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param vpn_gateway_scale_unit: The scale unit for this p2s vpn gateway. + :type vpn_gateway_scale_unit: int + :param vpn_server_configuration: The VpnServerConfiguration to which the + p2sVpnGateway is attached to. + :type vpn_server_configuration: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar vpn_client_connection_health: All P2S VPN clients' connection health + status. + :vartype vpn_client_connection_health: + ~azure.mgmt.network.v2019_09_01.models.VpnClientConnectionHealth + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'vpn_client_connection_health': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_hub': {'key': 'properties.virtualHub', 'type': 'SubResource'}, + 'p2_sconnection_configurations': {'key': 'properties.p2SConnectionConfigurations', 'type': '[P2SConnectionConfiguration]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'vpn_gateway_scale_unit': {'key': 'properties.vpnGatewayScaleUnit', 'type': 'int'}, + 'vpn_server_configuration': {'key': 'properties.vpnServerConfiguration', 'type': 'SubResource'}, + 'vpn_client_connection_health': {'key': 'properties.vpnClientConnectionHealth', 'type': 'VpnClientConnectionHealth'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(P2SVpnGateway, self).__init__(**kwargs) + self.virtual_hub = kwargs.get('virtual_hub', None) + self.p2_sconnection_configurations = kwargs.get('p2_sconnection_configurations', None) + self.provisioning_state = None + self.vpn_gateway_scale_unit = kwargs.get('vpn_gateway_scale_unit', None) + self.vpn_server_configuration = kwargs.get('vpn_server_configuration', None) + self.vpn_client_connection_health = None + self.etag = None + + +class P2SVpnProfileParameters(Model): + """Vpn Client Parameters for package generation. + + :param authentication_method: VPN client authentication method. Possible + values include: 'EAPTLS', 'EAPMSCHAPv2' + :type authentication_method: str or + ~azure.mgmt.network.v2019_09_01.models.AuthenticationMethod + """ + + _attribute_map = { + 'authentication_method': {'key': 'authenticationMethod', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(P2SVpnProfileParameters, self).__init__(**kwargs) + self.authentication_method = kwargs.get('authentication_method', None) + + +class PacketCapture(Model): + """Parameters that define the create packet capture operation. + + All required parameters must be populated in order to send to Azure. + + :param target: Required. The ID of the targeted resource, only VM is + currently supported. + :type target: str + :param bytes_to_capture_per_packet: Number of bytes captured per packet, + the remaining bytes are truncated. Default value: 0 . + :type bytes_to_capture_per_packet: int + :param total_bytes_per_session: Maximum size of the capture output. + Default value: 1073741824 . + :type total_bytes_per_session: int + :param time_limit_in_seconds: Maximum duration of the capture session in + seconds. Default value: 18000 . + :type time_limit_in_seconds: int + :param storage_location: Required. Describes the storage location for a + packet capture session. + :type storage_location: + ~azure.mgmt.network.v2019_09_01.models.PacketCaptureStorageLocation + :param filters: A list of packet capture filters. + :type filters: + list[~azure.mgmt.network.v2019_09_01.models.PacketCaptureFilter] + """ + + _validation = { + 'target': {'required': True}, + 'storage_location': {'required': True}, + } + + _attribute_map = { + 'target': {'key': 'properties.target', 'type': 'str'}, + 'bytes_to_capture_per_packet': {'key': 'properties.bytesToCapturePerPacket', 'type': 'int'}, + 'total_bytes_per_session': {'key': 'properties.totalBytesPerSession', 'type': 'int'}, + 'time_limit_in_seconds': {'key': 'properties.timeLimitInSeconds', 'type': 'int'}, + 'storage_location': {'key': 'properties.storageLocation', 'type': 'PacketCaptureStorageLocation'}, + 'filters': {'key': 'properties.filters', 'type': '[PacketCaptureFilter]'}, + } + + def __init__(self, **kwargs): + super(PacketCapture, self).__init__(**kwargs) + self.target = kwargs.get('target', None) + self.bytes_to_capture_per_packet = kwargs.get('bytes_to_capture_per_packet', 0) + self.total_bytes_per_session = kwargs.get('total_bytes_per_session', 1073741824) + self.time_limit_in_seconds = kwargs.get('time_limit_in_seconds', 18000) + self.storage_location = kwargs.get('storage_location', None) + self.filters = kwargs.get('filters', None) + + +class PacketCaptureFilter(Model): + """Filter that is applied to packet capture request. Multiple filters can be + applied. + + :param protocol: Protocol to be filtered on. Possible values include: + 'TCP', 'UDP', 'Any'. Default value: "Any" . + :type protocol: str or ~azure.mgmt.network.v2019_09_01.models.PcProtocol + :param local_ip_address: Local IP Address to be filtered on. Notation: + "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" for range. + "127.0.0.1;127.0.0.5"? for multiple entries. Multiple ranges not currently + supported. Mixing ranges with multiple entries not currently supported. + Default = null. + :type local_ip_address: str + :param remote_ip_address: Local IP Address to be filtered on. Notation: + "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" for range. + "127.0.0.1;127.0.0.5;" for multiple entries. Multiple ranges not currently + supported. Mixing ranges with multiple entries not currently supported. + Default = null. + :type remote_ip_address: str + :param local_port: Local port to be filtered on. Notation: "80" for single + port entry."80-85" for range. "80;443;" for multiple entries. Multiple + ranges not currently supported. Mixing ranges with multiple entries not + currently supported. Default = null. + :type local_port: str + :param remote_port: Remote port to be filtered on. Notation: "80" for + single port entry."80-85" for range. "80;443;" for multiple entries. + Multiple ranges not currently supported. Mixing ranges with multiple + entries not currently supported. Default = null. + :type remote_port: str + """ + + _attribute_map = { + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'local_ip_address': {'key': 'localIPAddress', 'type': 'str'}, + 'remote_ip_address': {'key': 'remoteIPAddress', 'type': 'str'}, + 'local_port': {'key': 'localPort', 'type': 'str'}, + 'remote_port': {'key': 'remotePort', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PacketCaptureFilter, self).__init__(**kwargs) + self.protocol = kwargs.get('protocol', "Any") + self.local_ip_address = kwargs.get('local_ip_address', None) + self.remote_ip_address = kwargs.get('remote_ip_address', None) + self.local_port = kwargs.get('local_port', None) + self.remote_port = kwargs.get('remote_port', None) + + +class PacketCaptureParameters(Model): + """Parameters that define the create packet capture operation. + + All required parameters must be populated in order to send to Azure. + + :param target: Required. The ID of the targeted resource, only VM is + currently supported. + :type target: str + :param bytes_to_capture_per_packet: Number of bytes captured per packet, + the remaining bytes are truncated. Default value: 0 . + :type bytes_to_capture_per_packet: int + :param total_bytes_per_session: Maximum size of the capture output. + Default value: 1073741824 . + :type total_bytes_per_session: int + :param time_limit_in_seconds: Maximum duration of the capture session in + seconds. Default value: 18000 . + :type time_limit_in_seconds: int + :param storage_location: Required. Describes the storage location for a + packet capture session. + :type storage_location: + ~azure.mgmt.network.v2019_09_01.models.PacketCaptureStorageLocation + :param filters: A list of packet capture filters. + :type filters: + list[~azure.mgmt.network.v2019_09_01.models.PacketCaptureFilter] + """ + + _validation = { + 'target': {'required': True}, + 'storage_location': {'required': True}, + } + + _attribute_map = { + 'target': {'key': 'target', 'type': 'str'}, + 'bytes_to_capture_per_packet': {'key': 'bytesToCapturePerPacket', 'type': 'int'}, + 'total_bytes_per_session': {'key': 'totalBytesPerSession', 'type': 'int'}, + 'time_limit_in_seconds': {'key': 'timeLimitInSeconds', 'type': 'int'}, + 'storage_location': {'key': 'storageLocation', 'type': 'PacketCaptureStorageLocation'}, + 'filters': {'key': 'filters', 'type': '[PacketCaptureFilter]'}, + } + + def __init__(self, **kwargs): + super(PacketCaptureParameters, self).__init__(**kwargs) + self.target = kwargs.get('target', None) + self.bytes_to_capture_per_packet = kwargs.get('bytes_to_capture_per_packet', 0) + self.total_bytes_per_session = kwargs.get('total_bytes_per_session', 1073741824) + self.time_limit_in_seconds = kwargs.get('time_limit_in_seconds', 18000) + self.storage_location = kwargs.get('storage_location', None) + self.filters = kwargs.get('filters', None) + + +class PacketCaptureQueryStatusResult(Model): + """Status of packet capture session. + + :param name: The name of the packet capture resource. + :type name: str + :param id: The ID of the packet capture resource. + :type id: str + :param capture_start_time: The start time of the packet capture session. + :type capture_start_time: datetime + :param packet_capture_status: The status of the packet capture session. + Possible values include: 'NotStarted', 'Running', 'Stopped', 'Error', + 'Unknown' + :type packet_capture_status: str or + ~azure.mgmt.network.v2019_09_01.models.PcStatus + :param stop_reason: The reason the current packet capture session was + stopped. + :type stop_reason: str + :param packet_capture_error: List of errors of packet capture session. + :type packet_capture_error: list[str or + ~azure.mgmt.network.v2019_09_01.models.PcError] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'capture_start_time': {'key': 'captureStartTime', 'type': 'iso-8601'}, + 'packet_capture_status': {'key': 'packetCaptureStatus', 'type': 'str'}, + 'stop_reason': {'key': 'stopReason', 'type': 'str'}, + 'packet_capture_error': {'key': 'packetCaptureError', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(PacketCaptureQueryStatusResult, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.id = kwargs.get('id', None) + self.capture_start_time = kwargs.get('capture_start_time', None) + self.packet_capture_status = kwargs.get('packet_capture_status', None) + self.stop_reason = kwargs.get('stop_reason', None) + self.packet_capture_error = kwargs.get('packet_capture_error', None) + + +class PacketCaptureResult(Model): + """Information about packet capture session. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar name: Name of the packet capture session. + :vartype name: str + :ivar id: ID of the packet capture operation. + :vartype id: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :param target: Required. The ID of the targeted resource, only VM is + currently supported. + :type target: str + :param bytes_to_capture_per_packet: Number of bytes captured per packet, + the remaining bytes are truncated. Default value: 0 . + :type bytes_to_capture_per_packet: int + :param total_bytes_per_session: Maximum size of the capture output. + Default value: 1073741824 . + :type total_bytes_per_session: int + :param time_limit_in_seconds: Maximum duration of the capture session in + seconds. Default value: 18000 . + :type time_limit_in_seconds: int + :param storage_location: Required. Describes the storage location for a + packet capture session. + :type storage_location: + ~azure.mgmt.network.v2019_09_01.models.PacketCaptureStorageLocation + :param filters: A list of packet capture filters. + :type filters: + list[~azure.mgmt.network.v2019_09_01.models.PacketCaptureFilter] + :ivar provisioning_state: The provisioning state of the packet capture + session. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + """ + + _validation = { + 'name': {'readonly': True}, + 'id': {'readonly': True}, + 'etag': {'readonly': True}, + 'target': {'required': True}, + 'storage_location': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'target': {'key': 'properties.target', 'type': 'str'}, + 'bytes_to_capture_per_packet': {'key': 'properties.bytesToCapturePerPacket', 'type': 'int'}, + 'total_bytes_per_session': {'key': 'properties.totalBytesPerSession', 'type': 'int'}, + 'time_limit_in_seconds': {'key': 'properties.timeLimitInSeconds', 'type': 'int'}, + 'storage_location': {'key': 'properties.storageLocation', 'type': 'PacketCaptureStorageLocation'}, + 'filters': {'key': 'properties.filters', 'type': '[PacketCaptureFilter]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PacketCaptureResult, self).__init__(**kwargs) + self.name = None + self.id = None + self.etag = None + self.target = kwargs.get('target', None) + self.bytes_to_capture_per_packet = kwargs.get('bytes_to_capture_per_packet', 0) + self.total_bytes_per_session = kwargs.get('total_bytes_per_session', 1073741824) + self.time_limit_in_seconds = kwargs.get('time_limit_in_seconds', 18000) + self.storage_location = kwargs.get('storage_location', None) + self.filters = kwargs.get('filters', None) + self.provisioning_state = None + + +class PacketCaptureStorageLocation(Model): + """Describes the storage location for a packet capture session. + + :param storage_id: The ID of the storage account to save the packet + capture session. Required if no local file path is provided. + :type storage_id: str + :param storage_path: The URI of the storage path to save the packet + capture. Must be a well-formed URI describing the location to save the + packet capture. + :type storage_path: str + :param file_path: A valid local path on the targeting VM. Must include the + name of the capture file (*.cap). For linux virtual machine it must start + with /var/captures. Required if no storage ID is provided, otherwise + optional. + :type file_path: str + """ + + _attribute_map = { + 'storage_id': {'key': 'storageId', 'type': 'str'}, + 'storage_path': {'key': 'storagePath', 'type': 'str'}, + 'file_path': {'key': 'filePath', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PacketCaptureStorageLocation, self).__init__(**kwargs) + self.storage_id = kwargs.get('storage_id', None) + self.storage_path = kwargs.get('storage_path', None) + self.file_path = kwargs.get('file_path', None) + + +class PatchRouteFilter(SubResource): + """Route Filter Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param rules: Collection of RouteFilterRules contained within a route + filter. + :type rules: list[~azure.mgmt.network.v2019_09_01.models.RouteFilterRule] + :ivar peerings: A collection of references to express route circuit + peerings. + :vartype peerings: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeering] + :ivar ipv6_peerings: A collection of references to express route circuit + ipv6 peerings. + :vartype ipv6_peerings: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeering] + :ivar provisioning_state: The provisioning state of the route filter + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :vartype name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Resource type. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _validation = { + 'peerings': {'readonly': True}, + 'ipv6_peerings': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'name': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'rules': {'key': 'properties.rules', 'type': '[RouteFilterRule]'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'ipv6_peerings': {'key': 'properties.ipv6Peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(PatchRouteFilter, self).__init__(**kwargs) + self.rules = kwargs.get('rules', None) + self.peerings = None + self.ipv6_peerings = None + self.provisioning_state = None + self.name = None + self.etag = None + self.type = None + self.tags = kwargs.get('tags', None) + + +class PatchRouteFilterRule(SubResource): + """Route Filter Rule Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param access: Required. The access type of the rule. Possible values + include: 'Allow', 'Deny' + :type access: str or ~azure.mgmt.network.v2019_09_01.models.Access + :ivar route_filter_rule_type: Required. The rule type of the rule. Default + value: "Community" . + :vartype route_filter_rule_type: str + :param communities: Required. The collection for bgp community values to + filter on. e.g. ['12076:5010','12076:5020']. + :type communities: list[str] + :ivar provisioning_state: The provisioning state of the route filter rule + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :vartype name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'access': {'required': True}, + 'route_filter_rule_type': {'required': True, 'constant': True}, + 'communities': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'name': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'access': {'key': 'properties.access', 'type': 'str'}, + 'route_filter_rule_type': {'key': 'properties.routeFilterRuleType', 'type': 'str'}, + 'communities': {'key': 'properties.communities', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + route_filter_rule_type = "Community" + + def __init__(self, **kwargs): + super(PatchRouteFilterRule, self).__init__(**kwargs) + self.access = kwargs.get('access', None) + self.communities = kwargs.get('communities', None) + self.provisioning_state = None + self.name = None + self.etag = None + + +class PeerExpressRouteCircuitConnection(SubResource): + """Peer Express Route Circuit Connection in an ExpressRouteCircuitPeering + resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param express_route_circuit_peering: Reference to Express Route Circuit + Private Peering Resource of the circuit. + :type express_route_circuit_peering: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param peer_express_route_circuit_peering: Reference to Express Route + Circuit Private Peering Resource of the peered circuit. + :type peer_express_route_circuit_peering: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param address_prefix: /29 IP address space to carve out Customer + addresses for tunnels. + :type address_prefix: str + :param circuit_connection_status: Express Route Circuit connection state. + Possible values include: 'Connected', 'Connecting', 'Disconnected' + :type circuit_connection_status: str or + ~azure.mgmt.network.v2019_09_01.models.CircuitConnectionStatus + :param connection_name: The name of the express route circuit connection + resource. + :type connection_name: str + :param auth_resource_guid: The resource guid of the authorization used for + the express route circuit connection. + :type auth_resource_guid: str + :ivar provisioning_state: The provisioning state of the peer express route + circuit connection resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'express_route_circuit_peering': {'key': 'properties.expressRouteCircuitPeering', 'type': 'SubResource'}, + 'peer_express_route_circuit_peering': {'key': 'properties.peerExpressRouteCircuitPeering', 'type': 'SubResource'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'circuit_connection_status': {'key': 'properties.circuitConnectionStatus', 'type': 'str'}, + 'connection_name': {'key': 'properties.connectionName', 'type': 'str'}, + 'auth_resource_guid': {'key': 'properties.authResourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PeerExpressRouteCircuitConnection, self).__init__(**kwargs) + self.express_route_circuit_peering = kwargs.get('express_route_circuit_peering', None) + self.peer_express_route_circuit_peering = kwargs.get('peer_express_route_circuit_peering', None) + self.address_prefix = kwargs.get('address_prefix', None) + self.circuit_connection_status = kwargs.get('circuit_connection_status', None) + self.connection_name = kwargs.get('connection_name', None) + self.auth_resource_guid = kwargs.get('auth_resource_guid', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class PolicySettings(Model): + """Defines contents of a web application firewall global configuration. + + :param state: Describes if the policy is in enabled state or disabled + state. Possible values include: 'Disabled', 'Enabled' + :type state: str or + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallEnabledState + :param mode: Describes if it is in detection mode or prevention mode at + policy level. Possible values include: 'Prevention', 'Detection' + :type mode: str or + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallMode + :param request_body_check: Whether to allow WAF to check request Body. + :type request_body_check: bool + :param max_request_body_size_in_kb: Maximum request body size in Kb for + WAF. + :type max_request_body_size_in_kb: int + :param file_upload_limit_in_mb: Maximum file upload size in Mb for WAF. + :type file_upload_limit_in_mb: int + """ + + _validation = { + 'max_request_body_size_in_kb': {'maximum': 128, 'minimum': 8}, + 'file_upload_limit_in_mb': {'minimum': 0}, + } + + _attribute_map = { + 'state': {'key': 'state', 'type': 'str'}, + 'mode': {'key': 'mode', 'type': 'str'}, + 'request_body_check': {'key': 'requestBodyCheck', 'type': 'bool'}, + 'max_request_body_size_in_kb': {'key': 'maxRequestBodySizeInKb', 'type': 'int'}, + 'file_upload_limit_in_mb': {'key': 'fileUploadLimitInMb', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(PolicySettings, self).__init__(**kwargs) + self.state = kwargs.get('state', None) + self.mode = kwargs.get('mode', None) + self.request_body_check = kwargs.get('request_body_check', None) + self.max_request_body_size_in_kb = kwargs.get('max_request_body_size_in_kb', None) + self.file_upload_limit_in_mb = kwargs.get('file_upload_limit_in_mb', None) + + +class PrepareNetworkPoliciesRequest(Model): + """Details of PrepareNetworkPolicies for Subnet. + + :param service_name: The name of the service for which subnet is being + prepared for. + :type service_name: str + :param network_intent_policy_configurations: A list of + NetworkIntentPolicyConfiguration. + :type network_intent_policy_configurations: + list[~azure.mgmt.network.v2019_09_01.models.NetworkIntentPolicyConfiguration] + """ + + _attribute_map = { + 'service_name': {'key': 'serviceName', 'type': 'str'}, + 'network_intent_policy_configurations': {'key': 'networkIntentPolicyConfigurations', 'type': '[NetworkIntentPolicyConfiguration]'}, + } + + def __init__(self, **kwargs): + super(PrepareNetworkPoliciesRequest, self).__init__(**kwargs) + self.service_name = kwargs.get('service_name', None) + self.network_intent_policy_configurations = kwargs.get('network_intent_policy_configurations', None) + + +class PrivateEndpoint(Resource): + """Private endpoint resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param subnet: The ID of the subnet from which the private IP will be + allocated. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.Subnet + :ivar network_interfaces: An array of references to the network interfaces + created for this private endpoint. + :vartype network_interfaces: + list[~azure.mgmt.network.v2019_09_01.models.NetworkInterface] + :ivar provisioning_state: The provisioning state of the private endpoint + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param private_link_service_connections: A grouping of information about + the connection to the remote resource. + :type private_link_service_connections: + list[~azure.mgmt.network.v2019_09_01.models.PrivateLinkServiceConnection] + :param manual_private_link_service_connections: A grouping of information + about the connection to the remote resource. Used when the network admin + does not have access to approve connections to the remote resource. + :type manual_private_link_service_connections: + list[~azure.mgmt.network.v2019_09_01.models.PrivateLinkServiceConnection] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'network_interfaces': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'network_interfaces': {'key': 'properties.networkInterfaces', 'type': '[NetworkInterface]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'private_link_service_connections': {'key': 'properties.privateLinkServiceConnections', 'type': '[PrivateLinkServiceConnection]'}, + 'manual_private_link_service_connections': {'key': 'properties.manualPrivateLinkServiceConnections', 'type': '[PrivateLinkServiceConnection]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PrivateEndpoint, self).__init__(**kwargs) + self.subnet = kwargs.get('subnet', None) + self.network_interfaces = None + self.provisioning_state = None + self.private_link_service_connections = kwargs.get('private_link_service_connections', None) + self.manual_private_link_service_connections = kwargs.get('manual_private_link_service_connections', None) + self.etag = None + + +class PrivateEndpointConnection(SubResource): + """PrivateEndpointConnection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar private_endpoint: The resource of private end point. + :vartype private_endpoint: + ~azure.mgmt.network.v2019_09_01.models.PrivateEndpoint + :param private_link_service_connection_state: A collection of information + about the state of the connection between service consumer and provider. + :type private_link_service_connection_state: + ~azure.mgmt.network.v2019_09_01.models.PrivateLinkServiceConnectionState + :ivar provisioning_state: The provisioning state of the private endpoint + connection resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar link_identifier: The consumer link id. + :vartype link_identifier: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar type: The resource type. + :vartype type: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'private_endpoint': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'link_identifier': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_endpoint': {'key': 'properties.privateEndpoint', 'type': 'PrivateEndpoint'}, + 'private_link_service_connection_state': {'key': 'properties.privateLinkServiceConnectionState', 'type': 'PrivateLinkServiceConnectionState'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'link_identifier': {'key': 'properties.linkIdentifier', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PrivateEndpointConnection, self).__init__(**kwargs) + self.private_endpoint = None + self.private_link_service_connection_state = kwargs.get('private_link_service_connection_state', None) + self.provisioning_state = None + self.link_identifier = None + self.name = kwargs.get('name', None) + self.type = None + self.etag = None + + +class PrivateLinkService(Resource): + """Private link service resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param load_balancer_frontend_ip_configurations: An array of references to + the load balancer IP configurations. + :type load_balancer_frontend_ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.FrontendIPConfiguration] + :param ip_configurations: An array of private link service IP + configurations. + :type ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.PrivateLinkServiceIpConfiguration] + :ivar network_interfaces: An array of references to the network interfaces + created for this private link service. + :vartype network_interfaces: + list[~azure.mgmt.network.v2019_09_01.models.NetworkInterface] + :ivar provisioning_state: The provisioning state of the private link + service resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar private_endpoint_connections: An array of list about connections to + the private endpoint. + :vartype private_endpoint_connections: + list[~azure.mgmt.network.v2019_09_01.models.PrivateEndpointConnection] + :param visibility: The visibility list of the private link service. + :type visibility: + ~azure.mgmt.network.v2019_09_01.models.PrivateLinkServicePropertiesVisibility + :param auto_approval: The auto-approval list of the private link service. + :type auto_approval: + ~azure.mgmt.network.v2019_09_01.models.PrivateLinkServicePropertiesAutoApproval + :param fqdns: The list of Fqdn. + :type fqdns: list[str] + :ivar alias: The alias of the private link service. + :vartype alias: str + :param enable_proxy_protocol: Whether the private link service is enabled + for proxy protocol or not. + :type enable_proxy_protocol: bool + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'network_interfaces': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'private_endpoint_connections': {'readonly': True}, + 'alias': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'load_balancer_frontend_ip_configurations': {'key': 'properties.loadBalancerFrontendIpConfigurations', 'type': '[FrontendIPConfiguration]'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[PrivateLinkServiceIpConfiguration]'}, + 'network_interfaces': {'key': 'properties.networkInterfaces', 'type': '[NetworkInterface]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'private_endpoint_connections': {'key': 'properties.privateEndpointConnections', 'type': '[PrivateEndpointConnection]'}, + 'visibility': {'key': 'properties.visibility', 'type': 'PrivateLinkServicePropertiesVisibility'}, + 'auto_approval': {'key': 'properties.autoApproval', 'type': 'PrivateLinkServicePropertiesAutoApproval'}, + 'fqdns': {'key': 'properties.fqdns', 'type': '[str]'}, + 'alias': {'key': 'properties.alias', 'type': 'str'}, + 'enable_proxy_protocol': {'key': 'properties.enableProxyProtocol', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PrivateLinkService, self).__init__(**kwargs) + self.load_balancer_frontend_ip_configurations = kwargs.get('load_balancer_frontend_ip_configurations', None) + self.ip_configurations = kwargs.get('ip_configurations', None) + self.network_interfaces = None + self.provisioning_state = None + self.private_endpoint_connections = None + self.visibility = kwargs.get('visibility', None) + self.auto_approval = kwargs.get('auto_approval', None) + self.fqdns = kwargs.get('fqdns', None) + self.alias = None + self.enable_proxy_protocol = kwargs.get('enable_proxy_protocol', None) + self.etag = None + + +class PrivateLinkServiceConnection(SubResource): + """PrivateLinkServiceConnection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar provisioning_state: The provisioning state of the private link + service connection resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param private_link_service_id: The resource id of private link service. + :type private_link_service_id: str + :param group_ids: The ID(s) of the group(s) obtained from the remote + resource that this private endpoint should connect to. + :type group_ids: list[str] + :param request_message: A message passed to the owner of the remote + resource with this connection request. Restricted to 140 chars. + :type request_message: str + :param private_link_service_connection_state: A collection of read-only + information about the state of the connection to the remote resource. + :type private_link_service_connection_state: + ~azure.mgmt.network.v2019_09_01.models.PrivateLinkServiceConnectionState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar type: The resource type. + :vartype type: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'private_link_service_id': {'key': 'properties.privateLinkServiceId', 'type': 'str'}, + 'group_ids': {'key': 'properties.groupIds', 'type': '[str]'}, + 'request_message': {'key': 'properties.requestMessage', 'type': 'str'}, + 'private_link_service_connection_state': {'key': 'properties.privateLinkServiceConnectionState', 'type': 'PrivateLinkServiceConnectionState'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PrivateLinkServiceConnection, self).__init__(**kwargs) + self.provisioning_state = None + self.private_link_service_id = kwargs.get('private_link_service_id', None) + self.group_ids = kwargs.get('group_ids', None) + self.request_message = kwargs.get('request_message', None) + self.private_link_service_connection_state = kwargs.get('private_link_service_connection_state', None) + self.name = kwargs.get('name', None) + self.type = None + self.etag = None + + +class PrivateLinkServiceConnectionState(Model): + """A collection of information about the state of the connection between + service consumer and provider. + + :param status: Indicates whether the connection has been + Approved/Rejected/Removed by the owner of the service. + :type status: str + :param description: The reason for approval/rejection of the connection. + :type description: str + :param action_required: A message indicating if changes on the service + provider require any updates on the consumer. + :type action_required: str + """ + + _attribute_map = { + 'status': {'key': 'status', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'action_required': {'key': 'actionRequired', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PrivateLinkServiceConnectionState, self).__init__(**kwargs) + self.status = kwargs.get('status', None) + self.description = kwargs.get('description', None) + self.action_required = kwargs.get('action_required', None) + + +class PrivateLinkServiceIpConfiguration(SubResource): + """The private link service ip configuration. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param private_ip_address: The private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: The private IP address allocation + method. Possible values include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2019_09_01.models.IPAllocationMethod + :param subnet: The reference to the subnet resource. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.Subnet + :param primary: Whether the ip configuration is primary or not. + :type primary: bool + :ivar provisioning_state: The provisioning state of the private link + service IP configuration resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param private_ip_address_version: Whether the specific IP configuration + is IPv4 or IPv6. Default is IPv4. Possible values include: 'IPv4', 'IPv6' + :type private_ip_address_version: str or + ~azure.mgmt.network.v2019_09_01.models.IPVersion + :param name: The name of private link service ip configuration. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: The resource type. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'private_ip_address_version': {'key': 'properties.privateIPAddressVersion', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PrivateLinkServiceIpConfiguration, self).__init__(**kwargs) + self.private_ip_address = kwargs.get('private_ip_address', None) + self.private_ip_allocation_method = kwargs.get('private_ip_allocation_method', None) + self.subnet = kwargs.get('subnet', None) + self.primary = kwargs.get('primary', None) + self.provisioning_state = None + self.private_ip_address_version = kwargs.get('private_ip_address_version', None) + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ResourceSet(Model): + """The base resource set for visibility and auto-approval. + + :param subscriptions: The list of subscriptions. + :type subscriptions: list[str] + """ + + _attribute_map = { + 'subscriptions': {'key': 'subscriptions', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(ResourceSet, self).__init__(**kwargs) + self.subscriptions = kwargs.get('subscriptions', None) + + +class PrivateLinkServicePropertiesAutoApproval(ResourceSet): + """The auto-approval list of the private link service. + + :param subscriptions: The list of subscriptions. + :type subscriptions: list[str] + """ + + _attribute_map = { + 'subscriptions': {'key': 'subscriptions', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(PrivateLinkServicePropertiesAutoApproval, self).__init__(**kwargs) + + +class PrivateLinkServicePropertiesVisibility(ResourceSet): + """The visibility list of the private link service. + + :param subscriptions: The list of subscriptions. + :type subscriptions: list[str] + """ + + _attribute_map = { + 'subscriptions': {'key': 'subscriptions', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(PrivateLinkServicePropertiesVisibility, self).__init__(**kwargs) + + +class PrivateLinkServiceVisibility(Model): + """Response for the CheckPrivateLinkServiceVisibility API service call. + + :param visible: Private Link Service Visibility (True/False). + :type visible: bool + """ + + _attribute_map = { + 'visible': {'key': 'visible', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(PrivateLinkServiceVisibility, self).__init__(**kwargs) + self.visible = kwargs.get('visible', None) + + +class Probe(SubResource): + """A load balancer probe. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :ivar load_balancing_rules: The load balancer rules that use this probe. + :vartype load_balancing_rules: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param protocol: Required. The protocol of the end point. If 'Tcp' is + specified, a received ACK is required for the probe to be successful. If + 'Http' or 'Https' is specified, a 200 OK response from the specifies URI + is required for the probe to be successful. Possible values include: + 'Http', 'Tcp', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.ProbeProtocol + :param port: Required. The port for communicating the probe. Possible + values range from 1 to 65535, inclusive. + :type port: int + :param interval_in_seconds: The interval, in seconds, for how frequently + to probe the endpoint for health status. Typically, the interval is + slightly less than half the allocated timeout period (in seconds) which + allows two full probes before taking the instance out of rotation. The + default value is 15, the minimum value is 5. + :type interval_in_seconds: int + :param number_of_probes: The number of probes where if no response, will + result in stopping further traffic from being delivered to the endpoint. + This values allows endpoints to be taken out of rotation faster or slower + than the typical times used in Azure. + :type number_of_probes: int + :param request_path: The URI used for requesting health status from the + VM. Path is required if a protocol is set to http. Otherwise, it is not + allowed. There is no default value. + :type request_path: str + :ivar provisioning_state: The provisioning state of the probe resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within the set of + probes used by the load balancer. This name can be used to access the + resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'load_balancing_rules': {'readonly': True}, + 'protocol': {'required': True}, + 'port': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[SubResource]'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'interval_in_seconds': {'key': 'properties.intervalInSeconds', 'type': 'int'}, + 'number_of_probes': {'key': 'properties.numberOfProbes', 'type': 'int'}, + 'request_path': {'key': 'properties.requestPath', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Probe, self).__init__(**kwargs) + self.load_balancing_rules = None + self.protocol = kwargs.get('protocol', None) + self.port = kwargs.get('port', None) + self.interval_in_seconds = kwargs.get('interval_in_seconds', None) + self.number_of_probes = kwargs.get('number_of_probes', None) + self.request_path = kwargs.get('request_path', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ProtocolConfiguration(Model): + """Configuration of the protocol. + + :param http_configuration: HTTP configuration of the connectivity check. + :type http_configuration: + ~azure.mgmt.network.v2019_09_01.models.HTTPConfiguration + """ + + _attribute_map = { + 'http_configuration': {'key': 'HTTPConfiguration', 'type': 'HTTPConfiguration'}, + } + + def __init__(self, **kwargs): + super(ProtocolConfiguration, self).__init__(**kwargs) + self.http_configuration = kwargs.get('http_configuration', None) + + +class ProtocolCustomSettingsFormat(Model): + """DDoS custom policy properties. + + :param protocol: The protocol for which the DDoS protection policy is + being customized. Possible values include: 'Tcp', 'Udp', 'Syn' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.DdosCustomPolicyProtocol + :param trigger_rate_override: The customized DDoS protection trigger rate. + :type trigger_rate_override: str + :param source_rate_override: The customized DDoS protection source rate. + :type source_rate_override: str + :param trigger_sensitivity_override: The customized DDoS protection + trigger rate sensitivity degrees. High: Trigger rate set with most + sensitivity w.r.t. normal traffic. Default: Trigger rate set with moderate + sensitivity w.r.t. normal traffic. Low: Trigger rate set with less + sensitivity w.r.t. normal traffic. Relaxed: Trigger rate set with least + sensitivity w.r.t. normal traffic. Possible values include: 'Relaxed', + 'Low', 'Default', 'High' + :type trigger_sensitivity_override: str or + ~azure.mgmt.network.v2019_09_01.models.DdosCustomPolicyTriggerSensitivityOverride + """ + + _attribute_map = { + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'trigger_rate_override': {'key': 'triggerRateOverride', 'type': 'str'}, + 'source_rate_override': {'key': 'sourceRateOverride', 'type': 'str'}, + 'trigger_sensitivity_override': {'key': 'triggerSensitivityOverride', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ProtocolCustomSettingsFormat, self).__init__(**kwargs) + self.protocol = kwargs.get('protocol', None) + self.trigger_rate_override = kwargs.get('trigger_rate_override', None) + self.source_rate_override = kwargs.get('source_rate_override', None) + self.trigger_sensitivity_override = kwargs.get('trigger_sensitivity_override', None) + + +class PublicIPAddress(Resource): + """Public IP address resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The public IP address SKU. + :type sku: ~azure.mgmt.network.v2019_09_01.models.PublicIPAddressSku + :param public_ip_allocation_method: The public IP address allocation + method. Possible values include: 'Static', 'Dynamic' + :type public_ip_allocation_method: str or + ~azure.mgmt.network.v2019_09_01.models.IPAllocationMethod + :param public_ip_address_version: The public IP address version. Possible + values include: 'IPv4', 'IPv6' + :type public_ip_address_version: str or + ~azure.mgmt.network.v2019_09_01.models.IPVersion + :ivar ip_configuration: The IP configuration associated with the public IP + address. + :vartype ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.IPConfiguration + :param dns_settings: The FQDN of the DNS record associated with the public + IP address. + :type dns_settings: + ~azure.mgmt.network.v2019_09_01.models.PublicIPAddressDnsSettings + :param ddos_settings: The DDoS protection custom policy associated with + the public IP address. + :type ddos_settings: ~azure.mgmt.network.v2019_09_01.models.DdosSettings + :param ip_tags: The list of tags associated with the public IP address. + :type ip_tags: list[~azure.mgmt.network.v2019_09_01.models.IpTag] + :param ip_address: The IP address associated with the public IP address + resource. + :type ip_address: str + :param public_ip_prefix: The Public IP Prefix this Public IP Address + should be allocated from. + :type public_ip_prefix: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param idle_timeout_in_minutes: The idle timeout of the public IP address. + :type idle_timeout_in_minutes: int + :ivar resource_guid: The resource GUID property of the public IP address + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the public IP address + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :param zones: A list of availability zones denoting the IP allocated for + the resource needs to come from. + :type zones: list[str] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'ip_configuration': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'PublicIPAddressSku'}, + 'public_ip_allocation_method': {'key': 'properties.publicIPAllocationMethod', 'type': 'str'}, + 'public_ip_address_version': {'key': 'properties.publicIPAddressVersion', 'type': 'str'}, + 'ip_configuration': {'key': 'properties.ipConfiguration', 'type': 'IPConfiguration'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'PublicIPAddressDnsSettings'}, + 'ddos_settings': {'key': 'properties.ddosSettings', 'type': 'DdosSettings'}, + 'ip_tags': {'key': 'properties.ipTags', 'type': '[IpTag]'}, + 'ip_address': {'key': 'properties.ipAddress', 'type': 'str'}, + 'public_ip_prefix': {'key': 'properties.publicIPPrefix', 'type': 'SubResource'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(PublicIPAddress, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.public_ip_allocation_method = kwargs.get('public_ip_allocation_method', None) + self.public_ip_address_version = kwargs.get('public_ip_address_version', None) + self.ip_configuration = None + self.dns_settings = kwargs.get('dns_settings', None) + self.ddos_settings = kwargs.get('ddos_settings', None) + self.ip_tags = kwargs.get('ip_tags', None) + self.ip_address = kwargs.get('ip_address', None) + self.public_ip_prefix = kwargs.get('public_ip_prefix', None) + self.idle_timeout_in_minutes = kwargs.get('idle_timeout_in_minutes', None) + self.resource_guid = None + self.provisioning_state = None + self.etag = None + self.zones = kwargs.get('zones', None) + + +class PublicIPAddressDnsSettings(Model): + """Contains FQDN of the DNS record associated with the public IP address. + + :param domain_name_label: The domain name label. The concatenation of the + domain name label and the regionalized DNS zone make up the fully + qualified domain name associated with the public IP address. If a domain + name label is specified, an A DNS record is created for the public IP in + the Microsoft Azure DNS system. + :type domain_name_label: str + :param fqdn: The Fully Qualified Domain Name of the A DNS record + associated with the public IP. This is the concatenation of the + domainNameLabel and the regionalized DNS zone. + :type fqdn: str + :param reverse_fqdn: The reverse FQDN. A user-visible, fully qualified + domain name that resolves to this public IP address. If the reverseFqdn is + specified, then a PTR DNS record is created pointing from the IP address + in the in-addr.arpa domain to the reverse FQDN. + :type reverse_fqdn: str + """ + + _attribute_map = { + 'domain_name_label': {'key': 'domainNameLabel', 'type': 'str'}, + 'fqdn': {'key': 'fqdn', 'type': 'str'}, + 'reverse_fqdn': {'key': 'reverseFqdn', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PublicIPAddressDnsSettings, self).__init__(**kwargs) + self.domain_name_label = kwargs.get('domain_name_label', None) + self.fqdn = kwargs.get('fqdn', None) + self.reverse_fqdn = kwargs.get('reverse_fqdn', None) + + +class PublicIPAddressSku(Model): + """SKU of a public IP address. + + :param name: Name of a public IP address SKU. Possible values include: + 'Basic', 'Standard' + :type name: str or + ~azure.mgmt.network.v2019_09_01.models.PublicIPAddressSkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PublicIPAddressSku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + + +class PublicIPPrefix(Resource): + """Public IP prefix resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The public IP prefix SKU. + :type sku: ~azure.mgmt.network.v2019_09_01.models.PublicIPPrefixSku + :param public_ip_address_version: The public IP address version. Possible + values include: 'IPv4', 'IPv6' + :type public_ip_address_version: str or + ~azure.mgmt.network.v2019_09_01.models.IPVersion + :param ip_tags: The list of tags associated with the public IP prefix. + :type ip_tags: list[~azure.mgmt.network.v2019_09_01.models.IpTag] + :param prefix_length: The Length of the Public IP Prefix. + :type prefix_length: int + :ivar ip_prefix: The allocated Prefix. + :vartype ip_prefix: str + :ivar public_ip_addresses: The list of all referenced PublicIPAddresses. + :vartype public_ip_addresses: + list[~azure.mgmt.network.v2019_09_01.models.ReferencedPublicIpAddress] + :ivar load_balancer_frontend_ip_configuration: The reference to load + balancer frontend IP configuration associated with the public IP prefix. + :vartype load_balancer_frontend_ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar resource_guid: The resource GUID property of the public IP prefix + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the public IP prefix + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :param zones: A list of availability zones denoting the IP allocated for + the resource needs to come from. + :type zones: list[str] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'ip_prefix': {'readonly': True}, + 'public_ip_addresses': {'readonly': True}, + 'load_balancer_frontend_ip_configuration': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'PublicIPPrefixSku'}, + 'public_ip_address_version': {'key': 'properties.publicIPAddressVersion', 'type': 'str'}, + 'ip_tags': {'key': 'properties.ipTags', 'type': '[IpTag]'}, + 'prefix_length': {'key': 'properties.prefixLength', 'type': 'int'}, + 'ip_prefix': {'key': 'properties.ipPrefix', 'type': 'str'}, + 'public_ip_addresses': {'key': 'properties.publicIPAddresses', 'type': '[ReferencedPublicIpAddress]'}, + 'load_balancer_frontend_ip_configuration': {'key': 'properties.loadBalancerFrontendIpConfiguration', 'type': 'SubResource'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(PublicIPPrefix, self).__init__(**kwargs) + self.sku = kwargs.get('sku', None) + self.public_ip_address_version = kwargs.get('public_ip_address_version', None) + self.ip_tags = kwargs.get('ip_tags', None) + self.prefix_length = kwargs.get('prefix_length', None) + self.ip_prefix = None + self.public_ip_addresses = None + self.load_balancer_frontend_ip_configuration = None + self.resource_guid = None + self.provisioning_state = None + self.etag = None + self.zones = kwargs.get('zones', None) + + +class PublicIPPrefixSku(Model): + """SKU of a public IP prefix. + + :param name: Name of a public IP prefix SKU. Possible values include: + 'Standard' + :type name: str or + ~azure.mgmt.network.v2019_09_01.models.PublicIPPrefixSkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(PublicIPPrefixSku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + + +class QueryTroubleshootingParameters(Model): + """Parameters that define the resource to query the troubleshooting result. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The target resource ID to query the + troubleshooting result. + :type target_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(QueryTroubleshootingParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) + + +class ReferencedPublicIpAddress(Model): + """Reference to a public IP address. + + :param id: The PublicIPAddress Reference. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ReferencedPublicIpAddress, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + + +class ResourceNavigationLink(SubResource): + """ResourceNavigationLink resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param linked_resource_type: Resource type of the linked resource. + :type linked_resource_type: str + :param link: Link to the external resource. + :type link: str + :ivar provisioning_state: The provisioning state of the resource + navigation link resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the resource that is unique within a resource group. + This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Resource type. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'linked_resource_type': {'key': 'properties.linkedResourceType', 'type': 'str'}, + 'link': {'key': 'properties.link', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ResourceNavigationLink, self).__init__(**kwargs) + self.linked_resource_type = kwargs.get('linked_resource_type', None) + self.link = kwargs.get('link', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ResourceNavigationLinksListResult(Model): + """Response for ResourceNavigationLinks_List operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: The resource navigation links in a subnet. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.ResourceNavigationLink] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ResourceNavigationLink]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ResourceNavigationLinksListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = None + + +class RetentionPolicyParameters(Model): + """Parameters that define the retention policy for flow log. + + :param days: Number of days to retain flow log records. Default value: 0 . + :type days: int + :param enabled: Flag to enable/disable retention. Default value: False . + :type enabled: bool + """ + + _attribute_map = { + 'days': {'key': 'days', 'type': 'int'}, + 'enabled': {'key': 'enabled', 'type': 'bool'}, + } + + def __init__(self, **kwargs): + super(RetentionPolicyParameters, self).__init__(**kwargs) + self.days = kwargs.get('days', 0) + self.enabled = kwargs.get('enabled', False) + + +class Route(SubResource): + """Route resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param address_prefix: The destination CIDR to which the route applies. + :type address_prefix: str + :param next_hop_type: Required. The type of Azure hop the packet should be + sent to. Possible values include: 'VirtualNetworkGateway', 'VnetLocal', + 'Internet', 'VirtualAppliance', 'None' + :type next_hop_type: str or + ~azure.mgmt.network.v2019_09_01.models.RouteNextHopType + :param next_hop_ip_address: The IP address packets should be forwarded to. + Next hop values are only allowed in routes where the next hop type is + VirtualAppliance. + :type next_hop_ip_address: str + :ivar provisioning_state: The provisioning state of the route resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'next_hop_type': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'next_hop_type': {'key': 'properties.nextHopType', 'type': 'str'}, + 'next_hop_ip_address': {'key': 'properties.nextHopIpAddress', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Route, self).__init__(**kwargs) + self.address_prefix = kwargs.get('address_prefix', None) + self.next_hop_type = kwargs.get('next_hop_type', None) + self.next_hop_ip_address = kwargs.get('next_hop_ip_address', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + + +class RouteFilter(Resource): + """Route Filter Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param rules: Collection of RouteFilterRules contained within a route + filter. + :type rules: list[~azure.mgmt.network.v2019_09_01.models.RouteFilterRule] + :ivar peerings: A collection of references to express route circuit + peerings. + :vartype peerings: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeering] + :ivar ipv6_peerings: A collection of references to express route circuit + ipv6 peerings. + :vartype ipv6_peerings: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeering] + :ivar provisioning_state: The provisioning state of the route filter + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'peerings': {'readonly': True}, + 'ipv6_peerings': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'rules': {'key': 'properties.rules', 'type': '[RouteFilterRule]'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'ipv6_peerings': {'key': 'properties.ipv6Peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RouteFilter, self).__init__(**kwargs) + self.rules = kwargs.get('rules', None) + self.peerings = None + self.ipv6_peerings = None + self.provisioning_state = None + self.etag = None + + +class RouteFilterRule(SubResource): + """Route Filter Rule Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param access: Required. The access type of the rule. Possible values + include: 'Allow', 'Deny' + :type access: str or ~azure.mgmt.network.v2019_09_01.models.Access + :ivar route_filter_rule_type: Required. The rule type of the rule. Default + value: "Community" . + :vartype route_filter_rule_type: str + :param communities: Required. The collection for bgp community values to + filter on. e.g. ['12076:5010','12076:5020']. + :type communities: list[str] + :ivar provisioning_state: The provisioning state of the route filter rule + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param location: Resource location. + :type location: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'access': {'required': True}, + 'route_filter_rule_type': {'required': True, 'constant': True}, + 'communities': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'access': {'key': 'properties.access', 'type': 'str'}, + 'route_filter_rule_type': {'key': 'properties.routeFilterRuleType', 'type': 'str'}, + 'communities': {'key': 'properties.communities', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + route_filter_rule_type = "Community" + + def __init__(self, **kwargs): + super(RouteFilterRule, self).__init__(**kwargs) + self.access = kwargs.get('access', None) + self.communities = kwargs.get('communities', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.location = kwargs.get('location', None) + self.etag = None + + +class RouteTable(Resource): + """Route table resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param routes: Collection of routes contained within a route table. + :type routes: list[~azure.mgmt.network.v2019_09_01.models.Route] + :ivar subnets: A collection of references to subnets. + :vartype subnets: list[~azure.mgmt.network.v2019_09_01.models.Subnet] + :param disable_bgp_route_propagation: Whether to disable the routes + learned by BGP on that route table. True means disable. + :type disable_bgp_route_propagation: bool + :ivar provisioning_state: The provisioning state of the route table + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'subnets': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'routes': {'key': 'properties.routes', 'type': '[Route]'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'disable_bgp_route_propagation': {'key': 'properties.disableBgpRoutePropagation', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(RouteTable, self).__init__(**kwargs) + self.routes = kwargs.get('routes', None) + self.subnets = None + self.disable_bgp_route_propagation = kwargs.get('disable_bgp_route_propagation', None) + self.provisioning_state = None + self.etag = None + + +class SecurityGroupNetworkInterface(Model): + """Network interface and all its associated security rules. + + :param id: ID of the network interface. + :type id: str + :param security_rule_associations: All security rules associated with the + network interface. + :type security_rule_associations: + ~azure.mgmt.network.v2019_09_01.models.SecurityRuleAssociations + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'security_rule_associations': {'key': 'securityRuleAssociations', 'type': 'SecurityRuleAssociations'}, + } + + def __init__(self, **kwargs): + super(SecurityGroupNetworkInterface, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.security_rule_associations = kwargs.get('security_rule_associations', None) + + +class SecurityGroupViewParameters(Model): + """Parameters that define the VM to check security groups for. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. ID of the target VM. + :type target_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SecurityGroupViewParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) + + +class SecurityGroupViewResult(Model): + """The information about security rules applied to the specified VM. + + :param network_interfaces: List of network interfaces on the specified VM. + :type network_interfaces: + list[~azure.mgmt.network.v2019_09_01.models.SecurityGroupNetworkInterface] + """ + + _attribute_map = { + 'network_interfaces': {'key': 'networkInterfaces', 'type': '[SecurityGroupNetworkInterface]'}, + } + + def __init__(self, **kwargs): + super(SecurityGroupViewResult, self).__init__(**kwargs) + self.network_interfaces = kwargs.get('network_interfaces', None) + + +class SecurityRule(SubResource): + """Network security rule. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param description: A description for this rule. Restricted to 140 chars. + :type description: str + :param protocol: Required. Network protocol this rule applies to. Possible + values include: 'Tcp', 'Udp', 'Icmp', 'Esp', '*', 'Ah' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.SecurityRuleProtocol + :param source_port_range: The source port or range. Integer or range + between 0 and 65535. Asterisk '*' can also be used to match all ports. + :type source_port_range: str + :param destination_port_range: The destination port or range. Integer or + range between 0 and 65535. Asterisk '*' can also be used to match all + ports. + :type destination_port_range: str + :param source_address_prefix: The CIDR or source IP range. Asterisk '*' + can also be used to match all source IPs. Default tags such as + 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If + this is an ingress rule, specifies where network traffic originates from. + :type source_address_prefix: str + :param source_address_prefixes: The CIDR or source IP ranges. + :type source_address_prefixes: list[str] + :param source_application_security_groups: The application security group + specified as source. + :type source_application_security_groups: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationSecurityGroup] + :param destination_address_prefix: The destination address prefix. CIDR or + destination IP range. Asterisk '*' can also be used to match all source + IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and + 'Internet' can also be used. + :type destination_address_prefix: str + :param destination_address_prefixes: The destination address prefixes. + CIDR or destination IP ranges. + :type destination_address_prefixes: list[str] + :param destination_application_security_groups: The application security + group specified as destination. + :type destination_application_security_groups: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationSecurityGroup] + :param source_port_ranges: The source port ranges. + :type source_port_ranges: list[str] + :param destination_port_ranges: The destination port ranges. + :type destination_port_ranges: list[str] + :param access: Required. The network traffic is allowed or denied. + Possible values include: 'Allow', 'Deny' + :type access: str or + ~azure.mgmt.network.v2019_09_01.models.SecurityRuleAccess + :param priority: The priority of the rule. The value can be between 100 + and 4096. The priority number must be unique for each rule in the + collection. The lower the priority number, the higher the priority of the + rule. + :type priority: int + :param direction: Required. The direction of the rule. The direction + specifies if rule will be evaluated on incoming or outgoing traffic. + Possible values include: 'Inbound', 'Outbound' + :type direction: str or + ~azure.mgmt.network.v2019_09_01.models.SecurityRuleDirection + :ivar provisioning_state: The provisioning state of the security rule + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'protocol': {'required': True}, + 'access': {'required': True}, + 'direction': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'source_port_range': {'key': 'properties.sourcePortRange', 'type': 'str'}, + 'destination_port_range': {'key': 'properties.destinationPortRange', 'type': 'str'}, + 'source_address_prefix': {'key': 'properties.sourceAddressPrefix', 'type': 'str'}, + 'source_address_prefixes': {'key': 'properties.sourceAddressPrefixes', 'type': '[str]'}, + 'source_application_security_groups': {'key': 'properties.sourceApplicationSecurityGroups', 'type': '[ApplicationSecurityGroup]'}, + 'destination_address_prefix': {'key': 'properties.destinationAddressPrefix', 'type': 'str'}, + 'destination_address_prefixes': {'key': 'properties.destinationAddressPrefixes', 'type': '[str]'}, + 'destination_application_security_groups': {'key': 'properties.destinationApplicationSecurityGroups', 'type': '[ApplicationSecurityGroup]'}, + 'source_port_ranges': {'key': 'properties.sourcePortRanges', 'type': '[str]'}, + 'destination_port_ranges': {'key': 'properties.destinationPortRanges', 'type': '[str]'}, + 'access': {'key': 'properties.access', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'direction': {'key': 'properties.direction', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(SecurityRule, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.protocol = kwargs.get('protocol', None) + self.source_port_range = kwargs.get('source_port_range', None) + self.destination_port_range = kwargs.get('destination_port_range', None) + self.source_address_prefix = kwargs.get('source_address_prefix', None) + self.source_address_prefixes = kwargs.get('source_address_prefixes', None) + self.source_application_security_groups = kwargs.get('source_application_security_groups', None) + self.destination_address_prefix = kwargs.get('destination_address_prefix', None) + self.destination_address_prefixes = kwargs.get('destination_address_prefixes', None) + self.destination_application_security_groups = kwargs.get('destination_application_security_groups', None) + self.source_port_ranges = kwargs.get('source_port_ranges', None) + self.destination_port_ranges = kwargs.get('destination_port_ranges', None) + self.access = kwargs.get('access', None) + self.priority = kwargs.get('priority', None) + self.direction = kwargs.get('direction', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + + +class SecurityRuleAssociations(Model): + """All security rules associated with the network interface. + + :param network_interface_association: Network interface and it's custom + security rules. + :type network_interface_association: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceAssociation + :param subnet_association: Subnet and it's custom security rules. + :type subnet_association: + ~azure.mgmt.network.v2019_09_01.models.SubnetAssociation + :param default_security_rules: Collection of default security rules of the + network security group. + :type default_security_rules: + list[~azure.mgmt.network.v2019_09_01.models.SecurityRule] + :param effective_security_rules: Collection of effective security rules. + :type effective_security_rules: + list[~azure.mgmt.network.v2019_09_01.models.EffectiveNetworkSecurityRule] + """ + + _attribute_map = { + 'network_interface_association': {'key': 'networkInterfaceAssociation', 'type': 'NetworkInterfaceAssociation'}, + 'subnet_association': {'key': 'subnetAssociation', 'type': 'SubnetAssociation'}, + 'default_security_rules': {'key': 'defaultSecurityRules', 'type': '[SecurityRule]'}, + 'effective_security_rules': {'key': 'effectiveSecurityRules', 'type': '[EffectiveNetworkSecurityRule]'}, + } + + def __init__(self, **kwargs): + super(SecurityRuleAssociations, self).__init__(**kwargs) + self.network_interface_association = kwargs.get('network_interface_association', None) + self.subnet_association = kwargs.get('subnet_association', None) + self.default_security_rules = kwargs.get('default_security_rules', None) + self.effective_security_rules = kwargs.get('effective_security_rules', None) + + +class ServiceAssociationLink(SubResource): + """ServiceAssociationLink resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param linked_resource_type: Resource type of the linked resource. + :type linked_resource_type: str + :param link: Link to the external resource. + :type link: str + :ivar provisioning_state: The provisioning state of the service + association link resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param allow_delete: If true, the resource can be deleted. + :type allow_delete: bool + :param locations: A list of locations. + :type locations: list[str] + :param name: Name of the resource that is unique within a resource group. + This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Resource type. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'linked_resource_type': {'key': 'properties.linkedResourceType', 'type': 'str'}, + 'link': {'key': 'properties.link', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'allow_delete': {'key': 'properties.allowDelete', 'type': 'bool'}, + 'locations': {'key': 'properties.locations', 'type': '[str]'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServiceAssociationLink, self).__init__(**kwargs) + self.linked_resource_type = kwargs.get('linked_resource_type', None) + self.link = kwargs.get('link', None) + self.provisioning_state = None + self.allow_delete = kwargs.get('allow_delete', None) + self.locations = kwargs.get('locations', None) + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class ServiceAssociationLinksListResult(Model): + """Response for ServiceAssociationLinks_List operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: The service association links in a subnet. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.ServiceAssociationLink] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ServiceAssociationLink]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServiceAssociationLinksListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.next_link = None + + +class ServiceEndpointPolicy(Resource): + """Service End point policy resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param service_endpoint_policy_definitions: A collection of service + endpoint policy definitions of the service endpoint policy. + :type service_endpoint_policy_definitions: + list[~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPolicyDefinition] + :ivar subnets: A collection of references to subnets. + :vartype subnets: list[~azure.mgmt.network.v2019_09_01.models.Subnet] + :ivar resource_guid: The resource GUID property of the service endpoint + policy resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the service endpoint + policy resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'subnets': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'service_endpoint_policy_definitions': {'key': 'properties.serviceEndpointPolicyDefinitions', 'type': '[ServiceEndpointPolicyDefinition]'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServiceEndpointPolicy, self).__init__(**kwargs) + self.service_endpoint_policy_definitions = kwargs.get('service_endpoint_policy_definitions', None) + self.subnets = None + self.resource_guid = None + self.provisioning_state = None + self.etag = None + + +class ServiceEndpointPolicyDefinition(SubResource): + """Service Endpoint policy definitions. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param description: A description for this rule. Restricted to 140 chars. + :type description: str + :param service: Service endpoint name. + :type service: str + :param service_resources: A list of service resources. + :type service_resources: list[str] + :ivar provisioning_state: The provisioning state of the service endpoint + policy definition resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'service': {'key': 'properties.service', 'type': 'str'}, + 'service_resources': {'key': 'properties.serviceResources', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServiceEndpointPolicyDefinition, self).__init__(**kwargs) + self.description = kwargs.get('description', None) + self.service = kwargs.get('service', None) + self.service_resources = kwargs.get('service_resources', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + + +class ServiceEndpointPropertiesFormat(Model): + """The service endpoint properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param service: The type of the endpoint service. + :type service: str + :param locations: A list of locations. + :type locations: list[str] + :ivar provisioning_state: The provisioning state of the service endpoint + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'service': {'key': 'service', 'type': 'str'}, + 'locations': {'key': 'locations', 'type': '[str]'}, + 'provisioning_state': {'key': 'provisioningState', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServiceEndpointPropertiesFormat, self).__init__(**kwargs) + self.service = kwargs.get('service', None) + self.locations = kwargs.get('locations', None) + self.provisioning_state = None + + +class ServiceTagInformation(Model): + """The service tag information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar properties: Properties of the service tag information. + :vartype properties: + ~azure.mgmt.network.v2019_09_01.models.ServiceTagInformationPropertiesFormat + :ivar name: The name of service tag. + :vartype name: str + :ivar id: The ID of service tag. + :vartype id: str + """ + + _validation = { + 'properties': {'readonly': True}, + 'name': {'readonly': True}, + 'id': {'readonly': True}, + } + + _attribute_map = { + 'properties': {'key': 'properties', 'type': 'ServiceTagInformationPropertiesFormat'}, + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(ServiceTagInformation, self).__init__(**kwargs) + self.properties = None + self.name = None + self.id = None + + +class ServiceTagInformationPropertiesFormat(Model): + """Properties of the service tag information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar change_number: The iteration number of service tag. + :vartype change_number: str + :ivar region: The region of service tag. + :vartype region: str + :ivar system_service: The name of system service. + :vartype system_service: str + :ivar address_prefixes: The list of IP address prefixes. + :vartype address_prefixes: list[str] + """ + + _validation = { + 'change_number': {'readonly': True}, + 'region': {'readonly': True}, + 'system_service': {'readonly': True}, + 'address_prefixes': {'readonly': True}, + } + + _attribute_map = { + 'change_number': {'key': 'changeNumber', 'type': 'str'}, + 'region': {'key': 'region', 'type': 'str'}, + 'system_service': {'key': 'systemService', 'type': 'str'}, + 'address_prefixes': {'key': 'addressPrefixes', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(ServiceTagInformationPropertiesFormat, self).__init__(**kwargs) + self.change_number = None + self.region = None + self.system_service = None + self.address_prefixes = None + + +class ServiceTagsListResult(Model): + """Response for the ListServiceTags API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: The name of the cloud. + :vartype name: str + :ivar id: The ID of the cloud. + :vartype id: str + :ivar type: The azure resource type. + :vartype type: str + :ivar change_number: The iteration number. + :vartype change_number: str + :ivar cloud: The name of the cloud. + :vartype cloud: str + :ivar values: The list of service tag information resources. + :vartype values: + list[~azure.mgmt.network.v2019_09_01.models.ServiceTagInformation] + """ + + _validation = { + 'name': {'readonly': True}, + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'change_number': {'readonly': True}, + 'cloud': {'readonly': True}, + 'values': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'change_number': {'key': 'changeNumber', 'type': 'str'}, + 'cloud': {'key': 'cloud', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[ServiceTagInformation]'}, + } + + def __init__(self, **kwargs): + super(ServiceTagsListResult, self).__init__(**kwargs) + self.name = None + self.id = None + self.type = None + self.change_number = None + self.cloud = None + self.values = None + + +class Subnet(SubResource): + """Subnet in a virtual network resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param address_prefix: The address prefix for the subnet. + :type address_prefix: str + :param address_prefixes: List of address prefixes for the subnet. + :type address_prefixes: list[str] + :param network_security_group: The reference of the NetworkSecurityGroup + resource. + :type network_security_group: + ~azure.mgmt.network.v2019_09_01.models.NetworkSecurityGroup + :param route_table: The reference of the RouteTable resource. + :type route_table: ~azure.mgmt.network.v2019_09_01.models.RouteTable + :param nat_gateway: Nat gateway associated with this subnet. + :type nat_gateway: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param service_endpoints: An array of service endpoints. + :type service_endpoints: + list[~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPropertiesFormat] + :param service_endpoint_policies: An array of service endpoint policies. + :type service_endpoint_policies: + list[~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPolicy] + :ivar private_endpoints: An array of references to private endpoints. + :vartype private_endpoints: + list[~azure.mgmt.network.v2019_09_01.models.PrivateEndpoint] + :ivar ip_configurations: An array of references to the network interface + IP configurations using subnet. + :vartype ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.IPConfiguration] + :ivar ip_configuration_profiles: Array of IP configuration profiles which + reference this subnet. + :vartype ip_configuration_profiles: + list[~azure.mgmt.network.v2019_09_01.models.IPConfigurationProfile] + :ivar resource_navigation_links: An array of references to the external + resources using subnet. + :vartype resource_navigation_links: + list[~azure.mgmt.network.v2019_09_01.models.ResourceNavigationLink] + :ivar service_association_links: An array of references to services + injecting into this subnet. + :vartype service_association_links: + list[~azure.mgmt.network.v2019_09_01.models.ServiceAssociationLink] + :param delegations: An array of references to the delegations on the + subnet. + :type delegations: list[~azure.mgmt.network.v2019_09_01.models.Delegation] + :ivar purpose: A read-only string identifying the intention of use for + this subnet based on delegations and other user-defined properties. + :vartype purpose: str + :ivar provisioning_state: The provisioning state of the subnet resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param private_endpoint_network_policies: Enable or Disable apply network + policies on private end point in the subnet. + :type private_endpoint_network_policies: str + :param private_link_service_network_policies: Enable or Disable apply + network policies on private link service in the subnet. + :type private_link_service_network_policies: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'private_endpoints': {'readonly': True}, + 'ip_configurations': {'readonly': True}, + 'ip_configuration_profiles': {'readonly': True}, + 'resource_navigation_links': {'readonly': True}, + 'service_association_links': {'readonly': True}, + 'purpose': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'address_prefixes': {'key': 'properties.addressPrefixes', 'type': '[str]'}, + 'network_security_group': {'key': 'properties.networkSecurityGroup', 'type': 'NetworkSecurityGroup'}, + 'route_table': {'key': 'properties.routeTable', 'type': 'RouteTable'}, + 'nat_gateway': {'key': 'properties.natGateway', 'type': 'SubResource'}, + 'service_endpoints': {'key': 'properties.serviceEndpoints', 'type': '[ServiceEndpointPropertiesFormat]'}, + 'service_endpoint_policies': {'key': 'properties.serviceEndpointPolicies', 'type': '[ServiceEndpointPolicy]'}, + 'private_endpoints': {'key': 'properties.privateEndpoints', 'type': '[PrivateEndpoint]'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[IPConfiguration]'}, + 'ip_configuration_profiles': {'key': 'properties.ipConfigurationProfiles', 'type': '[IPConfigurationProfile]'}, + 'resource_navigation_links': {'key': 'properties.resourceNavigationLinks', 'type': '[ResourceNavigationLink]'}, + 'service_association_links': {'key': 'properties.serviceAssociationLinks', 'type': '[ServiceAssociationLink]'}, + 'delegations': {'key': 'properties.delegations', 'type': '[Delegation]'}, + 'purpose': {'key': 'properties.purpose', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'private_endpoint_network_policies': {'key': 'properties.privateEndpointNetworkPolicies', 'type': 'str'}, + 'private_link_service_network_policies': {'key': 'properties.privateLinkServiceNetworkPolicies', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(Subnet, self).__init__(**kwargs) + self.address_prefix = kwargs.get('address_prefix', None) + self.address_prefixes = kwargs.get('address_prefixes', None) + self.network_security_group = kwargs.get('network_security_group', None) + self.route_table = kwargs.get('route_table', None) + self.nat_gateway = kwargs.get('nat_gateway', None) + self.service_endpoints = kwargs.get('service_endpoints', None) + self.service_endpoint_policies = kwargs.get('service_endpoint_policies', None) + self.private_endpoints = None + self.ip_configurations = None + self.ip_configuration_profiles = None + self.resource_navigation_links = None + self.service_association_links = None + self.delegations = kwargs.get('delegations', None) + self.purpose = None + self.provisioning_state = None + self.private_endpoint_network_policies = kwargs.get('private_endpoint_network_policies', None) + self.private_link_service_network_policies = kwargs.get('private_link_service_network_policies', None) + self.name = kwargs.get('name', None) + self.etag = None + + +class SubnetAssociation(Model): + """Subnet and it's custom security rules. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Subnet ID. + :vartype id: str + :param security_rules: Collection of custom security rules. + :type security_rules: + list[~azure.mgmt.network.v2019_09_01.models.SecurityRule] + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'security_rules': {'key': 'securityRules', 'type': '[SecurityRule]'}, + } + + def __init__(self, **kwargs): + super(SubnetAssociation, self).__init__(**kwargs) + self.id = None + self.security_rules = kwargs.get('security_rules', None) + + +class TagsObject(Model): + """Tags object for patch operations. + + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, **kwargs): + super(TagsObject, self).__init__(**kwargs) + self.tags = kwargs.get('tags', None) + + +class Topology(Model): + """Topology of the specified resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: GUID representing the operation id. + :vartype id: str + :ivar created_date_time: The datetime when the topology was initially + created for the resource group. + :vartype created_date_time: datetime + :ivar last_modified: The datetime when the topology was last modified. + :vartype last_modified: datetime + :param resources: A list of topology resources. + :type resources: + list[~azure.mgmt.network.v2019_09_01.models.TopologyResource] + """ + + _validation = { + 'id': {'readonly': True}, + 'created_date_time': {'readonly': True}, + 'last_modified': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'created_date_time': {'key': 'createdDateTime', 'type': 'iso-8601'}, + 'last_modified': {'key': 'lastModified', 'type': 'iso-8601'}, + 'resources': {'key': 'resources', 'type': '[TopologyResource]'}, + } + + def __init__(self, **kwargs): + super(Topology, self).__init__(**kwargs) + self.id = None + self.created_date_time = None + self.last_modified = None + self.resources = kwargs.get('resources', None) + + +class TopologyAssociation(Model): + """Resources that have an association with the parent resource. + + :param name: The name of the resource that is associated with the parent + resource. + :type name: str + :param resource_id: The ID of the resource that is associated with the + parent resource. + :type resource_id: str + :param association_type: The association type of the child resource to the + parent resource. Possible values include: 'Associated', 'Contains' + :type association_type: str or + ~azure.mgmt.network.v2019_09_01.models.AssociationType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'association_type': {'key': 'associationType', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TopologyAssociation, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.resource_id = kwargs.get('resource_id', None) + self.association_type = kwargs.get('association_type', None) + + +class TopologyParameters(Model): + """Parameters that define the representation of topology. + + :param target_resource_group_name: The name of the target resource group + to perform topology on. + :type target_resource_group_name: str + :param target_virtual_network: The reference of the Virtual Network + resource. + :type target_virtual_network: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param target_subnet: The reference of the Subnet resource. + :type target_subnet: ~azure.mgmt.network.v2019_09_01.models.SubResource + """ + + _attribute_map = { + 'target_resource_group_name': {'key': 'targetResourceGroupName', 'type': 'str'}, + 'target_virtual_network': {'key': 'targetVirtualNetwork', 'type': 'SubResource'}, + 'target_subnet': {'key': 'targetSubnet', 'type': 'SubResource'}, + } + + def __init__(self, **kwargs): + super(TopologyParameters, self).__init__(**kwargs) + self.target_resource_group_name = kwargs.get('target_resource_group_name', None) + self.target_virtual_network = kwargs.get('target_virtual_network', None) + self.target_subnet = kwargs.get('target_subnet', None) + + +class TopologyResource(Model): + """The network resource topology information for the given resource group. + + :param name: Name of the resource. + :type name: str + :param id: ID of the resource. + :type id: str + :param location: Resource location. + :type location: str + :param associations: Holds the associations the resource has with other + resources in the resource group. + :type associations: + list[~azure.mgmt.network.v2019_09_01.models.TopologyAssociation] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'associations': {'key': 'associations', 'type': '[TopologyAssociation]'}, + } + + def __init__(self, **kwargs): + super(TopologyResource, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.id = kwargs.get('id', None) + self.location = kwargs.get('location', None) + self.associations = kwargs.get('associations', None) + + +class TrafficAnalyticsConfigurationProperties(Model): + """Parameters that define the configuration of traffic analytics. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Flag to enable/disable traffic analytics. + :type enabled: bool + :param workspace_id: The resource guid of the attached workspace. + :type workspace_id: str + :param workspace_region: The location of the attached workspace. + :type workspace_region: str + :param workspace_resource_id: Resource Id of the attached workspace. + :type workspace_resource_id: str + :param traffic_analytics_interval: The interval in minutes which would + decide how frequently TA service should do flow analytics. + :type traffic_analytics_interval: int + """ + + _validation = { + 'enabled': {'required': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'workspace_id': {'key': 'workspaceId', 'type': 'str'}, + 'workspace_region': {'key': 'workspaceRegion', 'type': 'str'}, + 'workspace_resource_id': {'key': 'workspaceResourceId', 'type': 'str'}, + 'traffic_analytics_interval': {'key': 'trafficAnalyticsInterval', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(TrafficAnalyticsConfigurationProperties, self).__init__(**kwargs) + self.enabled = kwargs.get('enabled', None) + self.workspace_id = kwargs.get('workspace_id', None) + self.workspace_region = kwargs.get('workspace_region', None) + self.workspace_resource_id = kwargs.get('workspace_resource_id', None) + self.traffic_analytics_interval = kwargs.get('traffic_analytics_interval', None) + + +class TrafficAnalyticsProperties(Model): + """Parameters that define the configuration of traffic analytics. + + All required parameters must be populated in order to send to Azure. + + :param network_watcher_flow_analytics_configuration: Required. Parameters + that define the configuration of traffic analytics. + :type network_watcher_flow_analytics_configuration: + ~azure.mgmt.network.v2019_09_01.models.TrafficAnalyticsConfigurationProperties + """ + + _validation = { + 'network_watcher_flow_analytics_configuration': {'required': True}, + } + + _attribute_map = { + 'network_watcher_flow_analytics_configuration': {'key': 'networkWatcherFlowAnalyticsConfiguration', 'type': 'TrafficAnalyticsConfigurationProperties'}, + } + + def __init__(self, **kwargs): + super(TrafficAnalyticsProperties, self).__init__(**kwargs) + self.network_watcher_flow_analytics_configuration = kwargs.get('network_watcher_flow_analytics_configuration', None) + + +class TrafficSelectorPolicy(Model): + """An traffic selector policy for a virtual network gateway connection. + + All required parameters must be populated in order to send to Azure. + + :param local_address_ranges: Required. A collection of local address + spaces in CIDR format + :type local_address_ranges: list[str] + :param remote_address_ranges: Required. A collection of remote address + spaces in CIDR format + :type remote_address_ranges: list[str] + """ + + _validation = { + 'local_address_ranges': {'required': True}, + 'remote_address_ranges': {'required': True}, + } + + _attribute_map = { + 'local_address_ranges': {'key': 'localAddressRanges', 'type': '[str]'}, + 'remote_address_ranges': {'key': 'remoteAddressRanges', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(TrafficSelectorPolicy, self).__init__(**kwargs) + self.local_address_ranges = kwargs.get('local_address_ranges', None) + self.remote_address_ranges = kwargs.get('remote_address_ranges', None) + + +class TroubleshootingDetails(Model): + """Information gained from troubleshooting of specified resource. + + :param id: The id of the get troubleshoot operation. + :type id: str + :param reason_type: Reason type of failure. + :type reason_type: str + :param summary: A summary of troubleshooting. + :type summary: str + :param detail: Details on troubleshooting results. + :type detail: str + :param recommended_actions: List of recommended actions. + :type recommended_actions: + list[~azure.mgmt.network.v2019_09_01.models.TroubleshootingRecommendedActions] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'reason_type': {'key': 'reasonType', 'type': 'str'}, + 'summary': {'key': 'summary', 'type': 'str'}, + 'detail': {'key': 'detail', 'type': 'str'}, + 'recommended_actions': {'key': 'recommendedActions', 'type': '[TroubleshootingRecommendedActions]'}, + } + + def __init__(self, **kwargs): + super(TroubleshootingDetails, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + self.reason_type = kwargs.get('reason_type', None) + self.summary = kwargs.get('summary', None) + self.detail = kwargs.get('detail', None) + self.recommended_actions = kwargs.get('recommended_actions', None) + + +class TroubleshootingParameters(Model): + """Parameters that define the resource to troubleshoot. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The target resource to troubleshoot. + :type target_resource_id: str + :param storage_id: Required. The ID for the storage account to save the + troubleshoot result. + :type storage_id: str + :param storage_path: Required. The path to the blob to save the + troubleshoot result in. + :type storage_path: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'storage_id': {'required': True}, + 'storage_path': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'storage_id': {'key': 'properties.storageId', 'type': 'str'}, + 'storage_path': {'key': 'properties.storagePath', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TroubleshootingParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) + self.storage_id = kwargs.get('storage_id', None) + self.storage_path = kwargs.get('storage_path', None) + + +class TroubleshootingRecommendedActions(Model): + """Recommended actions based on discovered issues. + + :param action_id: ID of the recommended action. + :type action_id: str + :param action_text: Description of recommended actions. + :type action_text: str + :param action_uri: The uri linking to a documentation for the recommended + troubleshooting actions. + :type action_uri: str + :param action_uri_text: The information from the URI for the recommended + troubleshooting actions. + :type action_uri_text: str + """ + + _attribute_map = { + 'action_id': {'key': 'actionId', 'type': 'str'}, + 'action_text': {'key': 'actionText', 'type': 'str'}, + 'action_uri': {'key': 'actionUri', 'type': 'str'}, + 'action_uri_text': {'key': 'actionUriText', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TroubleshootingRecommendedActions, self).__init__(**kwargs) + self.action_id = kwargs.get('action_id', None) + self.action_text = kwargs.get('action_text', None) + self.action_uri = kwargs.get('action_uri', None) + self.action_uri_text = kwargs.get('action_uri_text', None) + + +class TroubleshootingResult(Model): + """Troubleshooting information gained from specified resource. + + :param start_time: The start time of the troubleshooting. + :type start_time: datetime + :param end_time: The end time of the troubleshooting. + :type end_time: datetime + :param code: The result code of the troubleshooting. + :type code: str + :param results: Information from troubleshooting. + :type results: + list[~azure.mgmt.network.v2019_09_01.models.TroubleshootingDetails] + """ + + _attribute_map = { + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'code': {'key': 'code', 'type': 'str'}, + 'results': {'key': 'results', 'type': '[TroubleshootingDetails]'}, + } + + def __init__(self, **kwargs): + super(TroubleshootingResult, self).__init__(**kwargs) + self.start_time = kwargs.get('start_time', None) + self.end_time = kwargs.get('end_time', None) + self.code = kwargs.get('code', None) + self.results = kwargs.get('results', None) + + +class TunnelConnectionHealth(Model): + """VirtualNetworkGatewayConnection properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar tunnel: Tunnel name. + :vartype tunnel: str + :ivar connection_status: Virtual Network Gateway connection status. + Possible values include: 'Unknown', 'Connecting', 'Connected', + 'NotConnected' + :vartype connection_status: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionStatus + :ivar ingress_bytes_transferred: The Ingress Bytes Transferred in this + connection. + :vartype ingress_bytes_transferred: long + :ivar egress_bytes_transferred: The Egress Bytes Transferred in this + connection. + :vartype egress_bytes_transferred: long + :ivar last_connection_established_utc_time: The time at which connection + was established in Utc format. + :vartype last_connection_established_utc_time: str + """ + + _validation = { + 'tunnel': {'readonly': True}, + 'connection_status': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'last_connection_established_utc_time': {'readonly': True}, + } + + _attribute_map = { + 'tunnel': {'key': 'tunnel', 'type': 'str'}, + 'connection_status': {'key': 'connectionStatus', 'type': 'str'}, + 'ingress_bytes_transferred': {'key': 'ingressBytesTransferred', 'type': 'long'}, + 'egress_bytes_transferred': {'key': 'egressBytesTransferred', 'type': 'long'}, + 'last_connection_established_utc_time': {'key': 'lastConnectionEstablishedUtcTime', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(TunnelConnectionHealth, self).__init__(**kwargs) + self.tunnel = None + self.connection_status = None + self.ingress_bytes_transferred = None + self.egress_bytes_transferred = None + self.last_connection_established_utc_time = None + + +class UnprepareNetworkPoliciesRequest(Model): + """Details of UnprepareNetworkPolicies for Subnet. + + :param service_name: The name of the service for which subnet is being + unprepared for. + :type service_name: str + """ + + _attribute_map = { + 'service_name': {'key': 'serviceName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(UnprepareNetworkPoliciesRequest, self).__init__(**kwargs) + self.service_name = kwargs.get('service_name', None) + + +class Usage(Model): + """Describes network resource usage. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource identifier. + :vartype id: str + :ivar unit: Required. An enum describing the unit of measurement. Default + value: "Count" . + :vartype unit: str + :param current_value: Required. The current value of the usage. + :type current_value: long + :param limit: Required. The limit of usage. + :type limit: long + :param name: Required. The name of the type of usage. + :type name: ~azure.mgmt.network.v2019_09_01.models.UsageName + """ + + _validation = { + 'id': {'readonly': True}, + 'unit': {'required': True, 'constant': True}, + 'current_value': {'required': True}, + 'limit': {'required': True}, + 'name': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'unit': {'key': 'unit', 'type': 'str'}, + 'current_value': {'key': 'currentValue', 'type': 'long'}, + 'limit': {'key': 'limit', 'type': 'long'}, + 'name': {'key': 'name', 'type': 'UsageName'}, + } + + unit = "Count" + + def __init__(self, **kwargs): + super(Usage, self).__init__(**kwargs) + self.id = None + self.current_value = kwargs.get('current_value', None) + self.limit = kwargs.get('limit', None) + self.name = kwargs.get('name', None) + + +class UsageName(Model): + """The usage names. + + :param value: A string describing the resource name. + :type value: str + :param localized_value: A localized string describing the resource name. + :type localized_value: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'localized_value': {'key': 'localizedValue', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(UsageName, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + self.localized_value = kwargs.get('localized_value', None) + + +class VerificationIPFlowParameters(Model): + """Parameters that define the IP flow to be verified. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the target resource to + perform next-hop on. + :type target_resource_id: str + :param direction: Required. The direction of the packet represented as a + 5-tuple. Possible values include: 'Inbound', 'Outbound' + :type direction: str or ~azure.mgmt.network.v2019_09_01.models.Direction + :param protocol: Required. Protocol to be verified on. Possible values + include: 'TCP', 'UDP' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.IpFlowProtocol + :param local_port: Required. The local port. Acceptable values are a + single integer in the range (0-65535). Support for * for the source port, + which depends on the direction. + :type local_port: str + :param remote_port: Required. The remote port. Acceptable values are a + single integer in the range (0-65535). Support for * for the source port, + which depends on the direction. + :type remote_port: str + :param local_ip_address: Required. The local IP address. Acceptable values + are valid IPv4 addresses. + :type local_ip_address: str + :param remote_ip_address: Required. The remote IP address. Acceptable + values are valid IPv4 addresses. + :type remote_ip_address: str + :param target_nic_resource_id: The NIC ID. (If VM has multiple NICs and IP + forwarding is enabled on any of them, then this parameter must be + specified. Otherwise optional). + :type target_nic_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'direction': {'required': True}, + 'protocol': {'required': True}, + 'local_port': {'required': True}, + 'remote_port': {'required': True}, + 'local_ip_address': {'required': True}, + 'remote_ip_address': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'direction': {'key': 'direction', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'local_port': {'key': 'localPort', 'type': 'str'}, + 'remote_port': {'key': 'remotePort', 'type': 'str'}, + 'local_ip_address': {'key': 'localIPAddress', 'type': 'str'}, + 'remote_ip_address': {'key': 'remoteIPAddress', 'type': 'str'}, + 'target_nic_resource_id': {'key': 'targetNicResourceId', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VerificationIPFlowParameters, self).__init__(**kwargs) + self.target_resource_id = kwargs.get('target_resource_id', None) + self.direction = kwargs.get('direction', None) + self.protocol = kwargs.get('protocol', None) + self.local_port = kwargs.get('local_port', None) + self.remote_port = kwargs.get('remote_port', None) + self.local_ip_address = kwargs.get('local_ip_address', None) + self.remote_ip_address = kwargs.get('remote_ip_address', None) + self.target_nic_resource_id = kwargs.get('target_nic_resource_id', None) + + +class VerificationIPFlowResult(Model): + """Results of IP flow verification on the target resource. + + :param access: Indicates whether the traffic is allowed or denied. + Possible values include: 'Allow', 'Deny' + :type access: str or ~azure.mgmt.network.v2019_09_01.models.Access + :param rule_name: Name of the rule. If input is not matched against any + security rule, it is not displayed. + :type rule_name: str + """ + + _attribute_map = { + 'access': {'key': 'access', 'type': 'str'}, + 'rule_name': {'key': 'ruleName', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VerificationIPFlowResult, self).__init__(**kwargs) + self.access = kwargs.get('access', None) + self.rule_name = kwargs.get('rule_name', None) + + +class VirtualHub(Resource): + """VirtualHub Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_wan: The VirtualWAN to which the VirtualHub belongs. + :type virtual_wan: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param vpn_gateway: The VpnGateway associated with this VirtualHub. + :type vpn_gateway: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param p2_svpn_gateway: The P2SVpnGateway associated with this VirtualHub. + :type p2_svpn_gateway: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param express_route_gateway: The expressRouteGateway associated with this + VirtualHub. + :type express_route_gateway: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param azure_firewall: The azureFirewall associated with this VirtualHub. + :type azure_firewall: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param virtual_network_connections: List of all vnet connections with this + VirtualHub. + :type virtual_network_connections: + list[~azure.mgmt.network.v2019_09_01.models.HubVirtualNetworkConnection] + :param address_prefix: Address-prefix for this VirtualHub. + :type address_prefix: str + :param route_table: The routeTable associated with this virtual hub. + :type route_table: + ~azure.mgmt.network.v2019_09_01.models.VirtualHubRouteTable + :ivar provisioning_state: The provisioning state of the virtual hub + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param security_provider_name: The Security Provider name. + :type security_provider_name: str + :param virtual_hub_route_table_v2s: List of all virtual hub route table + v2s associated with this VirtualHub. + :type virtual_hub_route_table_v2s: + list[~azure.mgmt.network.v2019_09_01.models.VirtualHubRouteTableV2] + :param sku: The sku of this VirtualHub. + :type sku: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_wan': {'key': 'properties.virtualWan', 'type': 'SubResource'}, + 'vpn_gateway': {'key': 'properties.vpnGateway', 'type': 'SubResource'}, + 'p2_svpn_gateway': {'key': 'properties.p2SVpnGateway', 'type': 'SubResource'}, + 'express_route_gateway': {'key': 'properties.expressRouteGateway', 'type': 'SubResource'}, + 'azure_firewall': {'key': 'properties.azureFirewall', 'type': 'SubResource'}, + 'virtual_network_connections': {'key': 'properties.virtualNetworkConnections', 'type': '[HubVirtualNetworkConnection]'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'route_table': {'key': 'properties.routeTable', 'type': 'VirtualHubRouteTable'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'security_provider_name': {'key': 'properties.securityProviderName', 'type': 'str'}, + 'virtual_hub_route_table_v2s': {'key': 'properties.virtualHubRouteTableV2s', 'type': '[VirtualHubRouteTableV2]'}, + 'sku': {'key': 'properties.sku', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualHub, self).__init__(**kwargs) + self.virtual_wan = kwargs.get('virtual_wan', None) + self.vpn_gateway = kwargs.get('vpn_gateway', None) + self.p2_svpn_gateway = kwargs.get('p2_svpn_gateway', None) + self.express_route_gateway = kwargs.get('express_route_gateway', None) + self.azure_firewall = kwargs.get('azure_firewall', None) + self.virtual_network_connections = kwargs.get('virtual_network_connections', None) + self.address_prefix = kwargs.get('address_prefix', None) + self.route_table = kwargs.get('route_table', None) + self.provisioning_state = None + self.security_provider_name = kwargs.get('security_provider_name', None) + self.virtual_hub_route_table_v2s = kwargs.get('virtual_hub_route_table_v2s', None) + self.sku = kwargs.get('sku', None) + self.etag = None + + +class VirtualHubId(Model): + """Virtual Hub identifier. + + :param id: The resource URI for the Virtual Hub where the ExpressRoute + gateway is or will be deployed. The Virtual Hub resource and the + ExpressRoute gateway resource reside in the same subscription. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualHubId, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + + +class VirtualHubRoute(Model): + """VirtualHub route. + + :param address_prefixes: List of all addressPrefixes. + :type address_prefixes: list[str] + :param next_hop_ip_address: NextHop ip address. + :type next_hop_ip_address: str + """ + + _attribute_map = { + 'address_prefixes': {'key': 'addressPrefixes', 'type': '[str]'}, + 'next_hop_ip_address': {'key': 'nextHopIpAddress', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualHubRoute, self).__init__(**kwargs) + self.address_prefixes = kwargs.get('address_prefixes', None) + self.next_hop_ip_address = kwargs.get('next_hop_ip_address', None) + + +class VirtualHubRouteTable(Model): + """VirtualHub route table. + + :param routes: List of all routes. + :type routes: list[~azure.mgmt.network.v2019_09_01.models.VirtualHubRoute] + """ + + _attribute_map = { + 'routes': {'key': 'routes', 'type': '[VirtualHubRoute]'}, + } + + def __init__(self, **kwargs): + super(VirtualHubRouteTable, self).__init__(**kwargs) + self.routes = kwargs.get('routes', None) + + +class VirtualHubRouteTableV2(SubResource): + """VirtualHubRouteTableV2 Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param routes: List of all routes. + :type routes: + list[~azure.mgmt.network.v2019_09_01.models.VirtualHubRouteV2] + :param attached_connections: List of all connections attached to this + route table v2. + :type attached_connections: list[str] + :ivar provisioning_state: The provisioning state of the virtual hub route + table v2 resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'routes': {'key': 'properties.routes', 'type': '[VirtualHubRouteV2]'}, + 'attached_connections': {'key': 'properties.attachedConnections', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualHubRouteTableV2, self).__init__(**kwargs) + self.routes = kwargs.get('routes', None) + self.attached_connections = kwargs.get('attached_connections', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + + +class VirtualHubRouteV2(Model): + """VirtualHubRouteTableV2 route. + + :param destination_type: The type of destinations + :type destination_type: str + :param destinations: List of all destinations. + :type destinations: list[str] + :param next_hop_type: The type of next hops + :type next_hop_type: str + :param next_hops: NextHops ip address. + :type next_hops: list[str] + """ + + _attribute_map = { + 'destination_type': {'key': 'destinationType', 'type': 'str'}, + 'destinations': {'key': 'destinations', 'type': '[str]'}, + 'next_hop_type': {'key': 'nextHopType', 'type': 'str'}, + 'next_hops': {'key': 'nextHops', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(VirtualHubRouteV2, self).__init__(**kwargs) + self.destination_type = kwargs.get('destination_type', None) + self.destinations = kwargs.get('destinations', None) + self.next_hop_type = kwargs.get('next_hop_type', None) + self.next_hops = kwargs.get('next_hops', None) + + +class VirtualNetwork(Resource): + """Virtual Network resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param address_space: The AddressSpace that contains an array of IP + address ranges that can be used by subnets. + :type address_space: ~azure.mgmt.network.v2019_09_01.models.AddressSpace + :param dhcp_options: The dhcpOptions that contains an array of DNS servers + available to VMs deployed in the virtual network. + :type dhcp_options: ~azure.mgmt.network.v2019_09_01.models.DhcpOptions + :param subnets: A list of subnets in a Virtual Network. + :type subnets: list[~azure.mgmt.network.v2019_09_01.models.Subnet] + :param virtual_network_peerings: A list of peerings in a Virtual Network. + :type virtual_network_peerings: + list[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkPeering] + :ivar resource_guid: The resourceGuid property of the Virtual Network + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the virtual network + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param enable_ddos_protection: 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. Default value: False . + :type enable_ddos_protection: bool + :param enable_vm_protection: Indicates if VM protection is enabled for all + the subnets in the virtual network. Default value: False . + :type enable_vm_protection: bool + :param ddos_protection_plan: The DDoS protection plan associated with the + virtual network. + :type ddos_protection_plan: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param bgp_communities: Bgp Communities sent over ExpressRoute with each + route corresponding to a prefix in this VNET. + :type bgp_communities: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkBgpCommunities + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'address_space': {'key': 'properties.addressSpace', 'type': 'AddressSpace'}, + 'dhcp_options': {'key': 'properties.dhcpOptions', 'type': 'DhcpOptions'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'virtual_network_peerings': {'key': 'properties.virtualNetworkPeerings', 'type': '[VirtualNetworkPeering]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'enable_ddos_protection': {'key': 'properties.enableDdosProtection', 'type': 'bool'}, + 'enable_vm_protection': {'key': 'properties.enableVmProtection', 'type': 'bool'}, + 'ddos_protection_plan': {'key': 'properties.ddosProtectionPlan', 'type': 'SubResource'}, + 'bgp_communities': {'key': 'properties.bgpCommunities', 'type': 'VirtualNetworkBgpCommunities'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetwork, self).__init__(**kwargs) + self.address_space = kwargs.get('address_space', None) + self.dhcp_options = kwargs.get('dhcp_options', None) + self.subnets = kwargs.get('subnets', None) + self.virtual_network_peerings = kwargs.get('virtual_network_peerings', None) + self.resource_guid = None + self.provisioning_state = None + self.enable_ddos_protection = kwargs.get('enable_ddos_protection', False) + self.enable_vm_protection = kwargs.get('enable_vm_protection', False) + self.ddos_protection_plan = kwargs.get('ddos_protection_plan', None) + self.bgp_communities = kwargs.get('bgp_communities', None) + self.etag = None + + +class VirtualNetworkBgpCommunities(Model): + """Bgp Communities sent over ExpressRoute with each route corresponding to a + prefix in this VNET. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param virtual_network_community: Required. The BGP community associated + with the virtual network + :type virtual_network_community: str + :ivar regional_community: The BGP community associated with the region of + the virtual network + :vartype regional_community: str + """ + + _validation = { + 'virtual_network_community': {'required': True}, + 'regional_community': {'readonly': True}, + } + + _attribute_map = { + 'virtual_network_community': {'key': 'virtualNetworkCommunity', 'type': 'str'}, + 'regional_community': {'key': 'regionalCommunity', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkBgpCommunities, self).__init__(**kwargs) + self.virtual_network_community = kwargs.get('virtual_network_community', None) + self.regional_community = None + + +class VirtualNetworkConnectionGatewayReference(Model): + """A reference to VirtualNetworkGateway or LocalNetworkGateway resource. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of VirtualNetworkGateway or + LocalNetworkGateway resource. + :type id: str + """ + + _validation = { + 'id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkConnectionGatewayReference, self).__init__(**kwargs) + self.id = kwargs.get('id', None) + + +class VirtualNetworkGateway(Resource): + """A common class for general resource information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param ip_configurations: IP configurations for virtual network gateway. + :type ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayIPConfiguration] + :param gateway_type: The type of this virtual network gateway. Possible + values include: 'Vpn', 'ExpressRoute' + :type gateway_type: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayType + :param vpn_type: The type of this virtual network gateway. Possible values + include: 'PolicyBased', 'RouteBased' + :type vpn_type: str or ~azure.mgmt.network.v2019_09_01.models.VpnType + :param vpn_gateway_generation: The generation for this + VirtualNetworkGateway. Must be None if gatewayType is not VPN. Possible + values include: 'None', 'Generation1', 'Generation2' + :type vpn_gateway_generation: str or + ~azure.mgmt.network.v2019_09_01.models.VpnGatewayGeneration + :param enable_bgp: Whether BGP is enabled for this virtual network gateway + or not. + :type enable_bgp: bool + :param active_active: ActiveActive flag. + :type active_active: bool + :param gateway_default_site: The reference of the LocalNetworkGateway + resource which represents local network site having default routes. Assign + Null value in case of removing existing default site setting. + :type gateway_default_site: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param sku: The reference of the VirtualNetworkGatewaySku resource which + represents the SKU selected for Virtual network gateway. + :type sku: ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewaySku + :param vpn_client_configuration: The reference of the + VpnClientConfiguration resource which represents the P2S VpnClient + configurations. + :type vpn_client_configuration: + ~azure.mgmt.network.v2019_09_01.models.VpnClientConfiguration + :param bgp_settings: Virtual network gateway's BGP speaker settings. + :type bgp_settings: ~azure.mgmt.network.v2019_09_01.models.BgpSettings + :param custom_routes: The reference of the address space resource which + represents the custom routes address space specified by the customer for + virtual network gateway and VpnClient. + :type custom_routes: ~azure.mgmt.network.v2019_09_01.models.AddressSpace + :ivar resource_guid: The resource GUID property of the virtual network + gateway resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the virtual network + gateway resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param enable_dns_forwarding: Whether dns forwarding is enabled or not. + :type enable_dns_forwarding: bool + :ivar inbound_dns_forwarding_endpoint: The IP address allocated by the + gateway to which dns requests can be sent. + :vartype inbound_dns_forwarding_endpoint: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'inbound_dns_forwarding_endpoint': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[VirtualNetworkGatewayIPConfiguration]'}, + 'gateway_type': {'key': 'properties.gatewayType', 'type': 'str'}, + 'vpn_type': {'key': 'properties.vpnType', 'type': 'str'}, + 'vpn_gateway_generation': {'key': 'properties.vpnGatewayGeneration', 'type': 'str'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'active_active': {'key': 'properties.activeActive', 'type': 'bool'}, + 'gateway_default_site': {'key': 'properties.gatewayDefaultSite', 'type': 'SubResource'}, + 'sku': {'key': 'properties.sku', 'type': 'VirtualNetworkGatewaySku'}, + 'vpn_client_configuration': {'key': 'properties.vpnClientConfiguration', 'type': 'VpnClientConfiguration'}, + 'bgp_settings': {'key': 'properties.bgpSettings', 'type': 'BgpSettings'}, + 'custom_routes': {'key': 'properties.customRoutes', 'type': 'AddressSpace'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'enable_dns_forwarding': {'key': 'properties.enableDnsForwarding', 'type': 'bool'}, + 'inbound_dns_forwarding_endpoint': {'key': 'properties.inboundDnsForwardingEndpoint', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkGateway, self).__init__(**kwargs) + self.ip_configurations = kwargs.get('ip_configurations', None) + self.gateway_type = kwargs.get('gateway_type', None) + self.vpn_type = kwargs.get('vpn_type', None) + self.vpn_gateway_generation = kwargs.get('vpn_gateway_generation', None) + self.enable_bgp = kwargs.get('enable_bgp', None) + self.active_active = kwargs.get('active_active', None) + self.gateway_default_site = kwargs.get('gateway_default_site', None) + self.sku = kwargs.get('sku', None) + self.vpn_client_configuration = kwargs.get('vpn_client_configuration', None) + self.bgp_settings = kwargs.get('bgp_settings', None) + self.custom_routes = kwargs.get('custom_routes', None) + self.resource_guid = None + self.provisioning_state = None + self.enable_dns_forwarding = kwargs.get('enable_dns_forwarding', None) + self.inbound_dns_forwarding_endpoint = None + self.etag = None + + +class VirtualNetworkGatewayConnection(Resource): + """A common class for general resource information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param authorization_key: The authorizationKey. + :type authorization_key: str + :param virtual_network_gateway1: Required. The reference to virtual + network gateway resource. + :type virtual_network_gateway1: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGateway + :param virtual_network_gateway2: The reference to virtual network gateway + resource. + :type virtual_network_gateway2: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGateway + :param local_network_gateway2: The reference to local network gateway + resource. + :type local_network_gateway2: + ~azure.mgmt.network.v2019_09_01.models.LocalNetworkGateway + :param connection_type: Required. Gateway connection type. Possible values + include: 'IPsec', 'Vnet2Vnet', 'ExpressRoute', 'VPNClient' + :type connection_type: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionType + :param connection_protocol: Connection protocol used for this connection. + Possible values include: 'IKEv2', 'IKEv1' + :type connection_protocol: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionProtocol + :param routing_weight: The routing weight. + :type routing_weight: int + :param shared_key: The IPSec shared key. + :type shared_key: str + :ivar connection_status: Virtual Network Gateway connection status. + Possible values include: 'Unknown', 'Connecting', 'Connected', + 'NotConnected' + :vartype connection_status: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionStatus + :ivar tunnel_connection_status: Collection of all tunnels' connection + health status. + :vartype tunnel_connection_status: + list[~azure.mgmt.network.v2019_09_01.models.TunnelConnectionHealth] + :ivar egress_bytes_transferred: The egress bytes transferred in this + connection. + :vartype egress_bytes_transferred: long + :ivar ingress_bytes_transferred: The ingress bytes transferred in this + connection. + :vartype ingress_bytes_transferred: long + :param peer: The reference to peerings resource. + :type peer: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param enable_bgp: EnableBgp flag. + :type enable_bgp: bool + :param use_policy_based_traffic_selectors: Enable policy-based traffic + selectors. + :type use_policy_based_traffic_selectors: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2019_09_01.models.IpsecPolicy] + :param traffic_selector_policies: The Traffic Selector Policies to be + considered by this connection. + :type traffic_selector_policies: + list[~azure.mgmt.network.v2019_09_01.models.TrafficSelectorPolicy] + :ivar resource_guid: The resource GUID property of the virtual network + gateway connection resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the virtual network + gateway connection resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param express_route_gateway_bypass: Bypass ExpressRoute Gateway for data + forwarding. + :type express_route_gateway_bypass: bool + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_network_gateway1': {'required': True}, + 'connection_type': {'required': True}, + 'connection_status': {'readonly': True}, + 'tunnel_connection_status': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'virtual_network_gateway1': {'key': 'properties.virtualNetworkGateway1', 'type': 'VirtualNetworkGateway'}, + 'virtual_network_gateway2': {'key': 'properties.virtualNetworkGateway2', 'type': 'VirtualNetworkGateway'}, + 'local_network_gateway2': {'key': 'properties.localNetworkGateway2', 'type': 'LocalNetworkGateway'}, + 'connection_type': {'key': 'properties.connectionType', 'type': 'str'}, + 'connection_protocol': {'key': 'properties.connectionProtocol', 'type': 'str'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'tunnel_connection_status': {'key': 'properties.tunnelConnectionStatus', 'type': '[TunnelConnectionHealth]'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'peer': {'key': 'properties.peer', 'type': 'SubResource'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'use_policy_based_traffic_selectors': {'key': 'properties.usePolicyBasedTrafficSelectors', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'traffic_selector_policies': {'key': 'properties.trafficSelectorPolicies', 'type': '[TrafficSelectorPolicy]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'express_route_gateway_bypass': {'key': 'properties.expressRouteGatewayBypass', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkGatewayConnection, self).__init__(**kwargs) + self.authorization_key = kwargs.get('authorization_key', None) + self.virtual_network_gateway1 = kwargs.get('virtual_network_gateway1', None) + self.virtual_network_gateway2 = kwargs.get('virtual_network_gateway2', None) + self.local_network_gateway2 = kwargs.get('local_network_gateway2', None) + self.connection_type = kwargs.get('connection_type', None) + self.connection_protocol = kwargs.get('connection_protocol', None) + self.routing_weight = kwargs.get('routing_weight', None) + self.shared_key = kwargs.get('shared_key', None) + self.connection_status = None + self.tunnel_connection_status = None + self.egress_bytes_transferred = None + self.ingress_bytes_transferred = None + self.peer = kwargs.get('peer', None) + self.enable_bgp = kwargs.get('enable_bgp', None) + self.use_policy_based_traffic_selectors = kwargs.get('use_policy_based_traffic_selectors', None) + self.ipsec_policies = kwargs.get('ipsec_policies', None) + self.traffic_selector_policies = kwargs.get('traffic_selector_policies', None) + self.resource_guid = None + self.provisioning_state = None + self.express_route_gateway_bypass = kwargs.get('express_route_gateway_bypass', None) + self.etag = None + + +class VirtualNetworkGatewayConnectionListEntity(Resource): + """A common class for general resource information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param authorization_key: The authorizationKey. + :type authorization_key: str + :param virtual_network_gateway1: Required. The reference to virtual + network gateway resource. + :type virtual_network_gateway1: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkConnectionGatewayReference + :param virtual_network_gateway2: The reference to virtual network gateway + resource. + :type virtual_network_gateway2: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkConnectionGatewayReference + :param local_network_gateway2: The reference to local network gateway + resource. + :type local_network_gateway2: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkConnectionGatewayReference + :param connection_type: Required. Gateway connection type. Possible values + include: 'IPsec', 'Vnet2Vnet', 'ExpressRoute', 'VPNClient' + :type connection_type: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionType + :param connection_protocol: Connection protocol used for this connection. + Possible values include: 'IKEv2', 'IKEv1' + :type connection_protocol: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionProtocol + :param routing_weight: The routing weight. + :type routing_weight: int + :param shared_key: The IPSec shared key. + :type shared_key: str + :ivar connection_status: Virtual Network Gateway connection status. + Possible values include: 'Unknown', 'Connecting', 'Connected', + 'NotConnected' + :vartype connection_status: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionStatus + :ivar tunnel_connection_status: Collection of all tunnels' connection + health status. + :vartype tunnel_connection_status: + list[~azure.mgmt.network.v2019_09_01.models.TunnelConnectionHealth] + :ivar egress_bytes_transferred: The egress bytes transferred in this + connection. + :vartype egress_bytes_transferred: long + :ivar ingress_bytes_transferred: The ingress bytes transferred in this + connection. + :vartype ingress_bytes_transferred: long + :param peer: The reference to peerings resource. + :type peer: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param enable_bgp: EnableBgp flag. + :type enable_bgp: bool + :param use_policy_based_traffic_selectors: Enable policy-based traffic + selectors. + :type use_policy_based_traffic_selectors: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2019_09_01.models.IpsecPolicy] + :param traffic_selector_policies: The Traffic Selector Policies to be + considered by this connection. + :type traffic_selector_policies: + list[~azure.mgmt.network.v2019_09_01.models.TrafficSelectorPolicy] + :ivar resource_guid: The resource GUID property of the virtual network + gateway connection resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the virtual network + gateway connection resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param express_route_gateway_bypass: Bypass ExpressRoute Gateway for data + forwarding. + :type express_route_gateway_bypass: bool + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_network_gateway1': {'required': True}, + 'connection_type': {'required': True}, + 'connection_status': {'readonly': True}, + 'tunnel_connection_status': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'virtual_network_gateway1': {'key': 'properties.virtualNetworkGateway1', 'type': 'VirtualNetworkConnectionGatewayReference'}, + 'virtual_network_gateway2': {'key': 'properties.virtualNetworkGateway2', 'type': 'VirtualNetworkConnectionGatewayReference'}, + 'local_network_gateway2': {'key': 'properties.localNetworkGateway2', 'type': 'VirtualNetworkConnectionGatewayReference'}, + 'connection_type': {'key': 'properties.connectionType', 'type': 'str'}, + 'connection_protocol': {'key': 'properties.connectionProtocol', 'type': 'str'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'tunnel_connection_status': {'key': 'properties.tunnelConnectionStatus', 'type': '[TunnelConnectionHealth]'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'peer': {'key': 'properties.peer', 'type': 'SubResource'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'use_policy_based_traffic_selectors': {'key': 'properties.usePolicyBasedTrafficSelectors', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'traffic_selector_policies': {'key': 'properties.trafficSelectorPolicies', 'type': '[TrafficSelectorPolicy]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'express_route_gateway_bypass': {'key': 'properties.expressRouteGatewayBypass', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkGatewayConnectionListEntity, self).__init__(**kwargs) + self.authorization_key = kwargs.get('authorization_key', None) + self.virtual_network_gateway1 = kwargs.get('virtual_network_gateway1', None) + self.virtual_network_gateway2 = kwargs.get('virtual_network_gateway2', None) + self.local_network_gateway2 = kwargs.get('local_network_gateway2', None) + self.connection_type = kwargs.get('connection_type', None) + self.connection_protocol = kwargs.get('connection_protocol', None) + self.routing_weight = kwargs.get('routing_weight', None) + self.shared_key = kwargs.get('shared_key', None) + self.connection_status = None + self.tunnel_connection_status = None + self.egress_bytes_transferred = None + self.ingress_bytes_transferred = None + self.peer = kwargs.get('peer', None) + self.enable_bgp = kwargs.get('enable_bgp', None) + self.use_policy_based_traffic_selectors = kwargs.get('use_policy_based_traffic_selectors', None) + self.ipsec_policies = kwargs.get('ipsec_policies', None) + self.traffic_selector_policies = kwargs.get('traffic_selector_policies', None) + self.resource_guid = None + self.provisioning_state = None + self.express_route_gateway_bypass = kwargs.get('express_route_gateway_bypass', None) + self.etag = None + + +class VirtualNetworkGatewayIPConfiguration(SubResource): + """IP configuration for virtual network gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param private_ip_allocation_method: The private IP address allocation + method. Possible values include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2019_09_01.models.IPAllocationMethod + :param subnet: The reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param public_ip_address: The reference of the public IP resource. + :type public_ip_address: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar provisioning_state: The provisioning state of the virtual network + gateway IP configuration resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkGatewayIPConfiguration, self).__init__(**kwargs) + self.private_ip_allocation_method = kwargs.get('private_ip_allocation_method', None) + self.subnet = kwargs.get('subnet', None) + self.public_ip_address = kwargs.get('public_ip_address', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + + +class VirtualNetworkGatewaySku(Model): + """VirtualNetworkGatewaySku details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param name: Gateway SKU name. Possible values include: 'Basic', + 'HighPerformance', 'Standard', 'UltraPerformance', 'VpnGw1', 'VpnGw2', + 'VpnGw3', 'VpnGw4', 'VpnGw5', 'VpnGw1AZ', 'VpnGw2AZ', 'VpnGw3AZ', + 'VpnGw4AZ', 'VpnGw5AZ', 'ErGw1AZ', 'ErGw2AZ', 'ErGw3AZ' + :type name: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewaySkuName + :param tier: Gateway SKU tier. Possible values include: 'Basic', + 'HighPerformance', 'Standard', 'UltraPerformance', 'VpnGw1', 'VpnGw2', + 'VpnGw3', 'VpnGw4', 'VpnGw5', 'VpnGw1AZ', 'VpnGw2AZ', 'VpnGw3AZ', + 'VpnGw4AZ', 'VpnGw5AZ', 'ErGw1AZ', 'ErGw2AZ', 'ErGw3AZ' + :type tier: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewaySkuTier + :ivar capacity: The capacity. + :vartype capacity: int + """ + + _validation = { + 'capacity': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkGatewaySku, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.tier = kwargs.get('tier', None) + self.capacity = None + + +class VirtualNetworkPeering(SubResource): + """Peerings in a virtual network resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param allow_virtual_network_access: Whether the VMs in the local virtual + network space would be able to access the VMs in remote virtual network + space. + :type allow_virtual_network_access: bool + :param allow_forwarded_traffic: Whether the forwarded traffic from the VMs + in the local virtual network will be allowed/disallowed in remote virtual + network. + :type allow_forwarded_traffic: bool + :param allow_gateway_transit: If gateway links can be used in remote + virtual networking to link to this virtual network. + :type allow_gateway_transit: bool + :param use_remote_gateways: If remote gateways can be used on this virtual + network. If the flag is set to true, and allowGatewayTransit on remote + peering is also true, virtual network will use gateways of remote virtual + network for transit. Only one peering can have this flag set to true. This + flag cannot be set if virtual network already has a gateway. + :type use_remote_gateways: bool + :param remote_virtual_network: The reference of the remote virtual + network. The remote virtual network can be in the same or different region + (preview). See here to register for the preview and learn more + (https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-create-peering). + :type remote_virtual_network: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param remote_address_space: The reference of the remote virtual network + address space. + :type remote_address_space: + ~azure.mgmt.network.v2019_09_01.models.AddressSpace + :param peering_state: The status of the virtual network peering. Possible + values include: 'Initiated', 'Connected', 'Disconnected' + :type peering_state: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkPeeringState + :ivar provisioning_state: The provisioning state of the virtual network + peering resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'allow_virtual_network_access': {'key': 'properties.allowVirtualNetworkAccess', 'type': 'bool'}, + 'allow_forwarded_traffic': {'key': 'properties.allowForwardedTraffic', 'type': 'bool'}, + 'allow_gateway_transit': {'key': 'properties.allowGatewayTransit', 'type': 'bool'}, + 'use_remote_gateways': {'key': 'properties.useRemoteGateways', 'type': 'bool'}, + 'remote_virtual_network': {'key': 'properties.remoteVirtualNetwork', 'type': 'SubResource'}, + 'remote_address_space': {'key': 'properties.remoteAddressSpace', 'type': 'AddressSpace'}, + 'peering_state': {'key': 'properties.peeringState', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkPeering, self).__init__(**kwargs) + self.allow_virtual_network_access = kwargs.get('allow_virtual_network_access', None) + self.allow_forwarded_traffic = kwargs.get('allow_forwarded_traffic', None) + self.allow_gateway_transit = kwargs.get('allow_gateway_transit', None) + self.use_remote_gateways = kwargs.get('use_remote_gateways', None) + self.remote_virtual_network = kwargs.get('remote_virtual_network', None) + self.remote_address_space = kwargs.get('remote_address_space', None) + self.peering_state = kwargs.get('peering_state', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + + +class VirtualNetworkTap(Resource): + """Virtual Network Tap resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar network_interface_tap_configurations: Specifies the list of resource + IDs for the network interface IP configuration that needs to be tapped. + :vartype network_interface_tap_configurations: + list[~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceTapConfiguration] + :ivar resource_guid: The resource GUID property of the virtual network tap + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the virtual network + tap resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param destination_network_interface_ip_configuration: The reference to + the private IP Address of the collector nic that will receive the tap. + :type destination_network_interface_ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfiguration + :param destination_load_balancer_front_end_ip_configuration: The reference + to the private IP address on the internal Load Balancer that will receive + the tap. + :type destination_load_balancer_front_end_ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.FrontendIPConfiguration + :param destination_port: The VXLAN destination port that will receive the + tapped traffic. + :type destination_port: int + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'network_interface_tap_configurations': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'network_interface_tap_configurations': {'key': 'properties.networkInterfaceTapConfigurations', 'type': '[NetworkInterfaceTapConfiguration]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'destination_network_interface_ip_configuration': {'key': 'properties.destinationNetworkInterfaceIPConfiguration', 'type': 'NetworkInterfaceIPConfiguration'}, + 'destination_load_balancer_front_end_ip_configuration': {'key': 'properties.destinationLoadBalancerFrontEndIPConfiguration', 'type': 'FrontendIPConfiguration'}, + 'destination_port': {'key': 'properties.destinationPort', 'type': 'int'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkTap, self).__init__(**kwargs) + self.network_interface_tap_configurations = None + self.resource_guid = None + self.provisioning_state = None + self.destination_network_interface_ip_configuration = kwargs.get('destination_network_interface_ip_configuration', None) + self.destination_load_balancer_front_end_ip_configuration = kwargs.get('destination_load_balancer_front_end_ip_configuration', None) + self.destination_port = kwargs.get('destination_port', None) + self.etag = None + + +class VirtualNetworkUsage(Model): + """Usage details for subnet. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar current_value: Indicates number of IPs used from the Subnet. + :vartype current_value: float + :ivar id: Subnet identifier. + :vartype id: str + :ivar limit: Indicates the size of the subnet. + :vartype limit: float + :ivar name: The name containing common and localized value for usage. + :vartype name: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkUsageName + :ivar unit: Usage units. Returns 'Count'. + :vartype unit: str + """ + + _validation = { + 'current_value': {'readonly': True}, + 'id': {'readonly': True}, + 'limit': {'readonly': True}, + 'name': {'readonly': True}, + 'unit': {'readonly': True}, + } + + _attribute_map = { + 'current_value': {'key': 'currentValue', 'type': 'float'}, + 'id': {'key': 'id', 'type': 'str'}, + 'limit': {'key': 'limit', 'type': 'float'}, + 'name': {'key': 'name', 'type': 'VirtualNetworkUsageName'}, + 'unit': {'key': 'unit', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkUsage, self).__init__(**kwargs) + self.current_value = None + self.id = None + self.limit = None + self.name = None + self.unit = None + + +class VirtualNetworkUsageName(Model): + """Usage strings container. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar localized_value: Localized subnet size and usage string. + :vartype localized_value: str + :ivar value: Subnet size and usage string. + :vartype value: str + """ + + _validation = { + 'localized_value': {'readonly': True}, + 'value': {'readonly': True}, + } + + _attribute_map = { + 'localized_value': {'key': 'localizedValue', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualNetworkUsageName, self).__init__(**kwargs) + self.localized_value = None + self.value = None + + +class VirtualRouter(Resource): + """VirtualRouter Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_router_asn: VirtualRouter ASN. + :type virtual_router_asn: long + :param virtual_router_ips: VirtualRouter IPs + :type virtual_router_ips: list[str] + :param hosted_subnet: The Subnet on which VirtualRouter is hosted. + :type hosted_subnet: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param hosted_gateway: The Gateway on which VirtualRouter is hosted. + :type hosted_gateway: ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar peerings: List of references to VirtualRouterPeerings + :vartype peerings: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar provisioning_state: The provisioning state of the resource. Possible + values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_router_asn': {'maximum': 4294967295, 'minimum': 0}, + 'peerings': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_router_asn': {'key': 'properties.virtualRouterAsn', 'type': 'long'}, + 'virtual_router_ips': {'key': 'properties.virtualRouterIps', 'type': '[str]'}, + 'hosted_subnet': {'key': 'properties.hostedSubnet', 'type': 'SubResource'}, + 'hosted_gateway': {'key': 'properties.hostedGateway', 'type': 'SubResource'}, + 'peerings': {'key': 'properties.peerings', 'type': '[SubResource]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualRouter, self).__init__(**kwargs) + self.virtual_router_asn = kwargs.get('virtual_router_asn', None) + self.virtual_router_ips = kwargs.get('virtual_router_ips', None) + self.hosted_subnet = kwargs.get('hosted_subnet', None) + self.hosted_gateway = kwargs.get('hosted_gateway', None) + self.peerings = None + self.provisioning_state = None + self.etag = None + + +class VirtualRouterPeering(SubResource): + """Virtual Router Peering resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param peer_asn: Peer ASN. + :type peer_asn: long + :param peer_ip: Peer IP. + :type peer_ip: str + :ivar provisioning_state: The provisioning state of the resource. Possible + values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Gets name of the peering unique to VirtualRouter. This name + can be used to access the resource. + :type name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + :ivar type: Peering type. + :vartype type: str + """ + + _validation = { + 'peer_asn': {'maximum': 4294967295, 'minimum': 0}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'peer_asn': {'key': 'properties.peerAsn', 'type': 'long'}, + 'peer_ip': {'key': 'properties.peerIp', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualRouterPeering, self).__init__(**kwargs) + self.peer_asn = kwargs.get('peer_asn', None) + self.peer_ip = kwargs.get('peer_ip', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class VirtualWAN(Resource): + """VirtualWAN Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param disable_vpn_encryption: Vpn encryption to be disabled or not. + :type disable_vpn_encryption: bool + :ivar virtual_hubs: List of VirtualHubs in the VirtualWAN. + :vartype virtual_hubs: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar vpn_sites: List of VpnSites in the VirtualWAN. + :vartype vpn_sites: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param allow_branch_to_branch_traffic: True if branch to branch traffic is + allowed. + :type allow_branch_to_branch_traffic: bool + :param allow_vnet_to_vnet_traffic: True if Vnet to Vnet traffic is + allowed. + :type allow_vnet_to_vnet_traffic: bool + :param office365_local_breakout_category: The office local breakout + category. Possible values include: 'Optimize', 'OptimizeAndAllow', 'All', + 'None' + :type office365_local_breakout_category: str or + ~azure.mgmt.network.v2019_09_01.models.OfficeTrafficCategory + :ivar provisioning_state: The provisioning state of the virtual WAN + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param virtual_wan_type: The type of the VirtualWAN. + :type virtual_wan_type: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_hubs': {'readonly': True}, + 'vpn_sites': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'disable_vpn_encryption': {'key': 'properties.disableVpnEncryption', 'type': 'bool'}, + 'virtual_hubs': {'key': 'properties.virtualHubs', 'type': '[SubResource]'}, + 'vpn_sites': {'key': 'properties.vpnSites', 'type': '[SubResource]'}, + 'allow_branch_to_branch_traffic': {'key': 'properties.allowBranchToBranchTraffic', 'type': 'bool'}, + 'allow_vnet_to_vnet_traffic': {'key': 'properties.allowVnetToVnetTraffic', 'type': 'bool'}, + 'office365_local_breakout_category': {'key': 'properties.office365LocalBreakoutCategory', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'virtual_wan_type': {'key': 'properties.type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualWAN, self).__init__(**kwargs) + self.disable_vpn_encryption = kwargs.get('disable_vpn_encryption', None) + self.virtual_hubs = None + self.vpn_sites = None + self.allow_branch_to_branch_traffic = kwargs.get('allow_branch_to_branch_traffic', None) + self.allow_vnet_to_vnet_traffic = kwargs.get('allow_vnet_to_vnet_traffic', None) + self.office365_local_breakout_category = kwargs.get('office365_local_breakout_category', None) + self.provisioning_state = None + self.virtual_wan_type = kwargs.get('virtual_wan_type', None) + self.etag = None + + +class VirtualWanSecurityProvider(Model): + """Collection of SecurityProviders. + + :param name: Name of the security provider. + :type name: str + :param url: Url of the security provider. + :type url: str + :param type: Name of the security provider. Possible values include: + 'External', 'Native' + :type type: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualWanSecurityProviderType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'url': {'key': 'url', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualWanSecurityProvider, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.url = kwargs.get('url', None) + self.type = kwargs.get('type', None) + + +class VirtualWanSecurityProviders(Model): + """Collection of SecurityProviders. + + :param supported_providers: List of VirtualWAN security providers. + :type supported_providers: + list[~azure.mgmt.network.v2019_09_01.models.VirtualWanSecurityProvider] + """ + + _attribute_map = { + 'supported_providers': {'key': 'supportedProviders', 'type': '[VirtualWanSecurityProvider]'}, + } + + def __init__(self, **kwargs): + super(VirtualWanSecurityProviders, self).__init__(**kwargs) + self.supported_providers = kwargs.get('supported_providers', None) + + +class VirtualWanVpnProfileParameters(Model): + """Virtual Wan Vpn profile parameters Vpn profile generation. + + :param vpn_server_configuration_resource_id: VpnServerConfiguration + partial resource uri with which VirtualWan is associated to. + :type vpn_server_configuration_resource_id: str + :param authentication_method: VPN client authentication method. Possible + values include: 'EAPTLS', 'EAPMSCHAPv2' + :type authentication_method: str or + ~azure.mgmt.network.v2019_09_01.models.AuthenticationMethod + """ + + _attribute_map = { + 'vpn_server_configuration_resource_id': {'key': 'vpnServerConfigurationResourceId', 'type': 'str'}, + 'authentication_method': {'key': 'authenticationMethod', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VirtualWanVpnProfileParameters, self).__init__(**kwargs) + self.vpn_server_configuration_resource_id = kwargs.get('vpn_server_configuration_resource_id', None) + self.authentication_method = kwargs.get('authentication_method', None) + + +class VpnClientConfiguration(Model): + """VpnClientConfiguration for P2S client. + + :param vpn_client_address_pool: The reference of the address space + resource which represents Address space for P2S VpnClient. + :type vpn_client_address_pool: + ~azure.mgmt.network.v2019_09_01.models.AddressSpace + :param vpn_client_root_certificates: VpnClientRootCertificate for virtual + network gateway. + :type vpn_client_root_certificates: + list[~azure.mgmt.network.v2019_09_01.models.VpnClientRootCertificate] + :param vpn_client_revoked_certificates: VpnClientRevokedCertificate for + Virtual network gateway. + :type vpn_client_revoked_certificates: + list[~azure.mgmt.network.v2019_09_01.models.VpnClientRevokedCertificate] + :param vpn_client_protocols: VpnClientProtocols for Virtual network + gateway. + :type vpn_client_protocols: list[str or + ~azure.mgmt.network.v2019_09_01.models.VpnClientProtocol] + :param vpn_client_ipsec_policies: VpnClientIpsecPolicies for virtual + network gateway P2S client. + :type vpn_client_ipsec_policies: + list[~azure.mgmt.network.v2019_09_01.models.IpsecPolicy] + :param radius_server_address: The radius server address property of the + VirtualNetworkGateway resource for vpn client connection. + :type radius_server_address: str + :param radius_server_secret: The radius secret property of the + VirtualNetworkGateway resource for vpn client connection. + :type radius_server_secret: str + :param aad_tenant: The AADTenant property of the VirtualNetworkGateway + resource for vpn client connection used for AAD authentication. + :type aad_tenant: str + :param aad_audience: The AADAudience property of the VirtualNetworkGateway + resource for vpn client connection used for AAD authentication. + :type aad_audience: str + :param aad_issuer: The AADIssuer property of the VirtualNetworkGateway + resource for vpn client connection used for AAD authentication. + :type aad_issuer: str + """ + + _attribute_map = { + 'vpn_client_address_pool': {'key': 'vpnClientAddressPool', 'type': 'AddressSpace'}, + 'vpn_client_root_certificates': {'key': 'vpnClientRootCertificates', 'type': '[VpnClientRootCertificate]'}, + 'vpn_client_revoked_certificates': {'key': 'vpnClientRevokedCertificates', 'type': '[VpnClientRevokedCertificate]'}, + 'vpn_client_protocols': {'key': 'vpnClientProtocols', 'type': '[str]'}, + 'vpn_client_ipsec_policies': {'key': 'vpnClientIpsecPolicies', 'type': '[IpsecPolicy]'}, + 'radius_server_address': {'key': 'radiusServerAddress', 'type': 'str'}, + 'radius_server_secret': {'key': 'radiusServerSecret', 'type': 'str'}, + 'aad_tenant': {'key': 'aadTenant', 'type': 'str'}, + 'aad_audience': {'key': 'aadAudience', 'type': 'str'}, + 'aad_issuer': {'key': 'aadIssuer', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnClientConfiguration, self).__init__(**kwargs) + self.vpn_client_address_pool = kwargs.get('vpn_client_address_pool', None) + self.vpn_client_root_certificates = kwargs.get('vpn_client_root_certificates', None) + self.vpn_client_revoked_certificates = kwargs.get('vpn_client_revoked_certificates', None) + self.vpn_client_protocols = kwargs.get('vpn_client_protocols', None) + self.vpn_client_ipsec_policies = kwargs.get('vpn_client_ipsec_policies', None) + self.radius_server_address = kwargs.get('radius_server_address', None) + self.radius_server_secret = kwargs.get('radius_server_secret', None) + self.aad_tenant = kwargs.get('aad_tenant', None) + self.aad_audience = kwargs.get('aad_audience', None) + self.aad_issuer = kwargs.get('aad_issuer', None) + + +class VpnClientConnectionHealth(Model): + """VpnClientConnectionHealth properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar total_ingress_bytes_transferred: Total of the Ingress Bytes + Transferred in this P2S Vpn connection. + :vartype total_ingress_bytes_transferred: long + :ivar total_egress_bytes_transferred: Total of the Egress Bytes + Transferred in this connection. + :vartype total_egress_bytes_transferred: long + :param vpn_client_connections_count: The total of p2s vpn clients + connected at this time to this P2SVpnGateway. + :type vpn_client_connections_count: int + :param allocated_ip_addresses: List of allocated ip addresses to the + connected p2s vpn clients. + :type allocated_ip_addresses: list[str] + """ + + _validation = { + 'total_ingress_bytes_transferred': {'readonly': True}, + 'total_egress_bytes_transferred': {'readonly': True}, + } + + _attribute_map = { + 'total_ingress_bytes_transferred': {'key': 'totalIngressBytesTransferred', 'type': 'long'}, + 'total_egress_bytes_transferred': {'key': 'totalEgressBytesTransferred', 'type': 'long'}, + 'vpn_client_connections_count': {'key': 'vpnClientConnectionsCount', 'type': 'int'}, + 'allocated_ip_addresses': {'key': 'allocatedIpAddresses', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(VpnClientConnectionHealth, self).__init__(**kwargs) + self.total_ingress_bytes_transferred = None + self.total_egress_bytes_transferred = None + self.vpn_client_connections_count = kwargs.get('vpn_client_connections_count', None) + self.allocated_ip_addresses = kwargs.get('allocated_ip_addresses', None) + + +class VpnClientConnectionHealthDetail(Model): + """VPN client connection health detail. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar vpn_connection_id: The vpn client Id. + :vartype vpn_connection_id: str + :ivar vpn_connection_duration: The duration time of a connected vpn + client. + :vartype vpn_connection_duration: long + :ivar vpn_connection_time: The start time of a connected vpn client. + :vartype vpn_connection_time: str + :ivar public_ip_address: The public Ip of a connected vpn client. + :vartype public_ip_address: str + :ivar private_ip_address: The assigned private Ip of a connected vpn + client. + :vartype private_ip_address: str + :ivar vpn_user_name: The user name of a connected vpn client. + :vartype vpn_user_name: str + :ivar max_bandwidth: The max band width. + :vartype max_bandwidth: long + :ivar egress_packets_transferred: The egress packets per second. + :vartype egress_packets_transferred: long + :ivar egress_bytes_transferred: The egress bytes per second. + :vartype egress_bytes_transferred: long + :ivar ingress_packets_transferred: The ingress packets per second. + :vartype ingress_packets_transferred: long + :ivar ingress_bytes_transferred: The ingress bytes per second. + :vartype ingress_bytes_transferred: long + :ivar max_packets_per_second: The max packets transferred per second. + :vartype max_packets_per_second: long + """ + + _validation = { + 'vpn_connection_id': {'readonly': True}, + 'vpn_connection_duration': {'readonly': True}, + 'vpn_connection_time': {'readonly': True}, + 'public_ip_address': {'readonly': True}, + 'private_ip_address': {'readonly': True}, + 'vpn_user_name': {'readonly': True}, + 'max_bandwidth': {'readonly': True}, + 'egress_packets_transferred': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'ingress_packets_transferred': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'max_packets_per_second': {'readonly': True}, + } + + _attribute_map = { + 'vpn_connection_id': {'key': 'vpnConnectionId', 'type': 'str'}, + 'vpn_connection_duration': {'key': 'vpnConnectionDuration', 'type': 'long'}, + 'vpn_connection_time': {'key': 'vpnConnectionTime', 'type': 'str'}, + 'public_ip_address': {'key': 'publicIpAddress', 'type': 'str'}, + 'private_ip_address': {'key': 'privateIpAddress', 'type': 'str'}, + 'vpn_user_name': {'key': 'vpnUserName', 'type': 'str'}, + 'max_bandwidth': {'key': 'maxBandwidth', 'type': 'long'}, + 'egress_packets_transferred': {'key': 'egressPacketsTransferred', 'type': 'long'}, + 'egress_bytes_transferred': {'key': 'egressBytesTransferred', 'type': 'long'}, + 'ingress_packets_transferred': {'key': 'ingressPacketsTransferred', 'type': 'long'}, + 'ingress_bytes_transferred': {'key': 'ingressBytesTransferred', 'type': 'long'}, + 'max_packets_per_second': {'key': 'maxPacketsPerSecond', 'type': 'long'}, + } + + def __init__(self, **kwargs): + super(VpnClientConnectionHealthDetail, self).__init__(**kwargs) + self.vpn_connection_id = None + self.vpn_connection_duration = None + self.vpn_connection_time = None + self.public_ip_address = None + self.private_ip_address = None + self.vpn_user_name = None + self.max_bandwidth = None + self.egress_packets_transferred = None + self.egress_bytes_transferred = None + self.ingress_packets_transferred = None + self.ingress_bytes_transferred = None + self.max_packets_per_second = None + + +class VpnClientConnectionHealthDetailListResult(Model): + """List of virtual network gateway vpn client connection health. + + :param value: List of vpn client connection health. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.VpnClientConnectionHealthDetail] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[VpnClientConnectionHealthDetail]'}, + } + + def __init__(self, **kwargs): + super(VpnClientConnectionHealthDetailListResult, self).__init__(**kwargs) + self.value = kwargs.get('value', None) + + +class VpnClientIPsecParameters(Model): + """An IPSec parameters for a virtual network gateway P2S connection. + + All required parameters must be populated in order to send to Azure. + + :param sa_life_time_seconds: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) lifetime in seconds for P2S client. + :type sa_life_time_seconds: int + :param sa_data_size_kilobytes: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) payload size in KB for P2S client.. + :type sa_data_size_kilobytes: int + :param ipsec_encryption: Required. The IPSec encryption algorithm (IKE + phase 1). Possible values include: 'None', 'DES', 'DES3', 'AES128', + 'AES192', 'AES256', 'GCMAES128', 'GCMAES192', 'GCMAES256' + :type ipsec_encryption: str or + ~azure.mgmt.network.v2019_09_01.models.IpsecEncryption + :param ipsec_integrity: Required. The IPSec integrity algorithm (IKE phase + 1). Possible values include: 'MD5', 'SHA1', 'SHA256', 'GCMAES128', + 'GCMAES192', 'GCMAES256' + :type ipsec_integrity: str or + ~azure.mgmt.network.v2019_09_01.models.IpsecIntegrity + :param ike_encryption: Required. The IKE encryption algorithm (IKE phase + 2). Possible values include: 'DES', 'DES3', 'AES128', 'AES192', 'AES256', + 'GCMAES256', 'GCMAES128' + :type ike_encryption: str or + ~azure.mgmt.network.v2019_09_01.models.IkeEncryption + :param ike_integrity: Required. The IKE integrity algorithm (IKE phase 2). + Possible values include: 'MD5', 'SHA1', 'SHA256', 'SHA384', 'GCMAES256', + 'GCMAES128' + :type ike_integrity: str or + ~azure.mgmt.network.v2019_09_01.models.IkeIntegrity + :param dh_group: Required. The DH Group used in IKE Phase 1 for initial + SA. Possible values include: 'None', 'DHGroup1', 'DHGroup2', 'DHGroup14', + 'DHGroup2048', 'ECP256', 'ECP384', 'DHGroup24' + :type dh_group: str or ~azure.mgmt.network.v2019_09_01.models.DhGroup + :param pfs_group: Required. The Pfs Group used in IKE Phase 2 for new + child SA. Possible values include: 'None', 'PFS1', 'PFS2', 'PFS2048', + 'ECP256', 'ECP384', 'PFS24', 'PFS14', 'PFSMM' + :type pfs_group: str or ~azure.mgmt.network.v2019_09_01.models.PfsGroup + """ + + _validation = { + 'sa_life_time_seconds': {'required': True}, + 'sa_data_size_kilobytes': {'required': True}, + 'ipsec_encryption': {'required': True}, + 'ipsec_integrity': {'required': True}, + 'ike_encryption': {'required': True}, + 'ike_integrity': {'required': True}, + 'dh_group': {'required': True}, + 'pfs_group': {'required': True}, + } + + _attribute_map = { + 'sa_life_time_seconds': {'key': 'saLifeTimeSeconds', 'type': 'int'}, + 'sa_data_size_kilobytes': {'key': 'saDataSizeKilobytes', 'type': 'int'}, + 'ipsec_encryption': {'key': 'ipsecEncryption', 'type': 'str'}, + 'ipsec_integrity': {'key': 'ipsecIntegrity', 'type': 'str'}, + 'ike_encryption': {'key': 'ikeEncryption', 'type': 'str'}, + 'ike_integrity': {'key': 'ikeIntegrity', 'type': 'str'}, + 'dh_group': {'key': 'dhGroup', 'type': 'str'}, + 'pfs_group': {'key': 'pfsGroup', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnClientIPsecParameters, self).__init__(**kwargs) + self.sa_life_time_seconds = kwargs.get('sa_life_time_seconds', None) + self.sa_data_size_kilobytes = kwargs.get('sa_data_size_kilobytes', None) + self.ipsec_encryption = kwargs.get('ipsec_encryption', None) + self.ipsec_integrity = kwargs.get('ipsec_integrity', None) + self.ike_encryption = kwargs.get('ike_encryption', None) + self.ike_integrity = kwargs.get('ike_integrity', None) + self.dh_group = kwargs.get('dh_group', None) + self.pfs_group = kwargs.get('pfs_group', None) + + +class VpnClientParameters(Model): + """Vpn Client Parameters for package generation. + + :param processor_architecture: VPN client Processor Architecture. Possible + values include: 'Amd64', 'X86' + :type processor_architecture: str or + ~azure.mgmt.network.v2019_09_01.models.ProcessorArchitecture + :param authentication_method: VPN client authentication method. Possible + values include: 'EAPTLS', 'EAPMSCHAPv2' + :type authentication_method: str or + ~azure.mgmt.network.v2019_09_01.models.AuthenticationMethod + :param radius_server_auth_certificate: The public certificate data for the + radius server authentication certificate as a Base-64 encoded string. + Required only if external radius authentication has been configured with + EAPTLS authentication. + :type radius_server_auth_certificate: str + :param client_root_certificates: A list of client root certificates public + certificate data encoded as Base-64 strings. Optional parameter for + external radius based authentication with EAPTLS. + :type client_root_certificates: list[str] + """ + + _attribute_map = { + 'processor_architecture': {'key': 'processorArchitecture', 'type': 'str'}, + 'authentication_method': {'key': 'authenticationMethod', 'type': 'str'}, + 'radius_server_auth_certificate': {'key': 'radiusServerAuthCertificate', 'type': 'str'}, + 'client_root_certificates': {'key': 'clientRootCertificates', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(VpnClientParameters, self).__init__(**kwargs) + self.processor_architecture = kwargs.get('processor_architecture', None) + self.authentication_method = kwargs.get('authentication_method', None) + self.radius_server_auth_certificate = kwargs.get('radius_server_auth_certificate', None) + self.client_root_certificates = kwargs.get('client_root_certificates', None) + + +class VpnClientRevokedCertificate(SubResource): + """VPN client revoked certificate of virtual network gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param thumbprint: The revoked VPN client certificate thumbprint. + :type thumbprint: str + :ivar provisioning_state: The provisioning state of the VPN client revoked + certificate resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnClientRevokedCertificate, self).__init__(**kwargs) + self.thumbprint = kwargs.get('thumbprint', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + + +class VpnClientRootCertificate(SubResource): + """VPN client root certificate of virtual network gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param public_cert_data: Required. The certificate public data. + :type public_cert_data: str + :ivar provisioning_state: The provisioning state of the VPN client root + certificate resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'public_cert_data': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'public_cert_data': {'key': 'properties.publicCertData', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnClientRootCertificate, self).__init__(**kwargs) + self.public_cert_data = kwargs.get('public_cert_data', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + + +class VpnConnection(SubResource): + """VpnConnection Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param remote_vpn_site: Id of the connected vpn site. + :type remote_vpn_site: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param routing_weight: Routing weight for vpn connection. + :type routing_weight: int + :param connection_status: The connection status. Possible values include: + 'Unknown', 'Connecting', 'Connected', 'NotConnected' + :type connection_status: str or + ~azure.mgmt.network.v2019_09_01.models.VpnConnectionStatus + :param vpn_connection_protocol_type: Connection protocol used for this + connection. Possible values include: 'IKEv2', 'IKEv1' + :type vpn_connection_protocol_type: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionProtocol + :ivar ingress_bytes_transferred: Ingress bytes transferred. + :vartype ingress_bytes_transferred: long + :ivar egress_bytes_transferred: Egress bytes transferred. + :vartype egress_bytes_transferred: long + :param connection_bandwidth: Expected bandwidth in MBPS. + :type connection_bandwidth: int + :param shared_key: SharedKey for the vpn connection. + :type shared_key: str + :param enable_bgp: EnableBgp flag. + :type enable_bgp: bool + :param use_policy_based_traffic_selectors: Enable policy-based traffic + selectors. + :type use_policy_based_traffic_selectors: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2019_09_01.models.IpsecPolicy] + :param enable_rate_limiting: EnableBgp flag. + :type enable_rate_limiting: bool + :param enable_internet_security: Enable internet security. + :type enable_internet_security: bool + :param use_local_azure_ip_address: Use local azure ip to initiate + connection. + :type use_local_azure_ip_address: bool + :ivar provisioning_state: The provisioning state of the VPN connection + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param vpn_link_connections: List of all vpn site link connections to the + gateway. + :type vpn_link_connections: + list[~azure.mgmt.network.v2019_09_01.models.VpnSiteLinkConnection] + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'ingress_bytes_transferred': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'remote_vpn_site': {'key': 'properties.remoteVpnSite', 'type': 'SubResource'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'vpn_connection_protocol_type': {'key': 'properties.vpnConnectionProtocolType', 'type': 'str'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'connection_bandwidth': {'key': 'properties.connectionBandwidth', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'use_policy_based_traffic_selectors': {'key': 'properties.usePolicyBasedTrafficSelectors', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'enable_rate_limiting': {'key': 'properties.enableRateLimiting', 'type': 'bool'}, + 'enable_internet_security': {'key': 'properties.enableInternetSecurity', 'type': 'bool'}, + 'use_local_azure_ip_address': {'key': 'properties.useLocalAzureIpAddress', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'vpn_link_connections': {'key': 'properties.vpnLinkConnections', 'type': '[VpnSiteLinkConnection]'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnConnection, self).__init__(**kwargs) + self.remote_vpn_site = kwargs.get('remote_vpn_site', None) + self.routing_weight = kwargs.get('routing_weight', None) + self.connection_status = kwargs.get('connection_status', None) + self.vpn_connection_protocol_type = kwargs.get('vpn_connection_protocol_type', None) + self.ingress_bytes_transferred = None + self.egress_bytes_transferred = None + self.connection_bandwidth = kwargs.get('connection_bandwidth', None) + self.shared_key = kwargs.get('shared_key', None) + self.enable_bgp = kwargs.get('enable_bgp', None) + self.use_policy_based_traffic_selectors = kwargs.get('use_policy_based_traffic_selectors', None) + self.ipsec_policies = kwargs.get('ipsec_policies', None) + self.enable_rate_limiting = kwargs.get('enable_rate_limiting', None) + self.enable_internet_security = kwargs.get('enable_internet_security', None) + self.use_local_azure_ip_address = kwargs.get('use_local_azure_ip_address', None) + self.provisioning_state = None + self.vpn_link_connections = kwargs.get('vpn_link_connections', None) + self.name = kwargs.get('name', None) + self.etag = None + + +class VpnDeviceScriptParameters(Model): + """Vpn device configuration script generation parameters. + + :param vendor: The vendor for the vpn device. + :type vendor: str + :param device_family: The device family for the vpn device. + :type device_family: str + :param firmware_version: The firmware version for the vpn device. + :type firmware_version: str + """ + + _attribute_map = { + 'vendor': {'key': 'vendor', 'type': 'str'}, + 'device_family': {'key': 'deviceFamily', 'type': 'str'}, + 'firmware_version': {'key': 'firmwareVersion', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnDeviceScriptParameters, self).__init__(**kwargs) + self.vendor = kwargs.get('vendor', None) + self.device_family = kwargs.get('device_family', None) + self.firmware_version = kwargs.get('firmware_version', None) + + +class VpnGateway(Resource): + """VpnGateway Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_hub: The VirtualHub to which the gateway belongs. + :type virtual_hub: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param connections: List of all vpn connections to the gateway. + :type connections: + list[~azure.mgmt.network.v2019_09_01.models.VpnConnection] + :param bgp_settings: Local network gateway's BGP speaker settings. + :type bgp_settings: ~azure.mgmt.network.v2019_09_01.models.BgpSettings + :ivar provisioning_state: The provisioning state of the VPN gateway + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param vpn_gateway_scale_unit: The scale unit for this vpn gateway. + :type vpn_gateway_scale_unit: int + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_hub': {'key': 'properties.virtualHub', 'type': 'SubResource'}, + 'connections': {'key': 'properties.connections', 'type': '[VpnConnection]'}, + 'bgp_settings': {'key': 'properties.bgpSettings', 'type': 'BgpSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'vpn_gateway_scale_unit': {'key': 'properties.vpnGatewayScaleUnit', 'type': 'int'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnGateway, self).__init__(**kwargs) + self.virtual_hub = kwargs.get('virtual_hub', None) + self.connections = kwargs.get('connections', None) + self.bgp_settings = kwargs.get('bgp_settings', None) + self.provisioning_state = None + self.vpn_gateway_scale_unit = kwargs.get('vpn_gateway_scale_unit', None) + self.etag = None + + +class VpnLinkBgpSettings(Model): + """BGP settings details for a link. + + :param asn: The BGP speaker's ASN. + :type asn: long + :param bgp_peering_address: The BGP peering address and BGP identifier of + this BGP speaker. + :type bgp_peering_address: str + """ + + _attribute_map = { + 'asn': {'key': 'asn', 'type': 'long'}, + 'bgp_peering_address': {'key': 'bgpPeeringAddress', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnLinkBgpSettings, self).__init__(**kwargs) + self.asn = kwargs.get('asn', None) + self.bgp_peering_address = kwargs.get('bgp_peering_address', None) + + +class VpnLinkProviderProperties(Model): + """List of properties of a link provider. + + :param link_provider_name: Name of the link provider. + :type link_provider_name: str + :param link_speed_in_mbps: Link speed. + :type link_speed_in_mbps: int + """ + + _attribute_map = { + 'link_provider_name': {'key': 'linkProviderName', 'type': 'str'}, + 'link_speed_in_mbps': {'key': 'linkSpeedInMbps', 'type': 'int'}, + } + + def __init__(self, **kwargs): + super(VpnLinkProviderProperties, self).__init__(**kwargs) + self.link_provider_name = kwargs.get('link_provider_name', None) + self.link_speed_in_mbps = kwargs.get('link_speed_in_mbps', None) + + +class VpnPacketCaptureStartParameters(Model): + """Start packet capture parameters on virtual network gateway. + + :param filter_data: Start Packet capture parameters. + :type filter_data: str + """ + + _attribute_map = { + 'filter_data': {'key': 'filterData', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnPacketCaptureStartParameters, self).__init__(**kwargs) + self.filter_data = kwargs.get('filter_data', None) + + +class VpnPacketCaptureStopParameters(Model): + """Stop packet capture parameters. + + :param sas_url: SAS url for packet capture on virtual network gateway. + :type sas_url: str + """ + + _attribute_map = { + 'sas_url': {'key': 'sasUrl', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnPacketCaptureStopParameters, self).__init__(**kwargs) + self.sas_url = kwargs.get('sas_url', None) + + +class VpnProfileResponse(Model): + """Vpn Profile Response for package generation. + + :param profile_url: URL to the VPN profile. + :type profile_url: str + """ + + _attribute_map = { + 'profile_url': {'key': 'profileUrl', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnProfileResponse, self).__init__(**kwargs) + self.profile_url = kwargs.get('profile_url', None) + + +class VpnServerConfigRadiusClientRootCertificate(Model): + """Properties of the Radius client root certificate of VpnServerConfiguration. + + :param name: The certificate name. + :type name: str + :param thumbprint: The Radius client root certificate thumbprint. + :type thumbprint: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'thumbprint': {'key': 'thumbprint', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnServerConfigRadiusClientRootCertificate, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.thumbprint = kwargs.get('thumbprint', None) + + +class VpnServerConfigRadiusServerRootCertificate(Model): + """Properties of Radius Server root certificate of VpnServerConfiguration. + + :param name: The certificate name. + :type name: str + :param public_cert_data: The certificate public data. + :type public_cert_data: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'public_cert_data': {'key': 'publicCertData', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnServerConfigRadiusServerRootCertificate, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.public_cert_data = kwargs.get('public_cert_data', None) + + +class VpnServerConfiguration(Resource): + """VpnServerConfiguration Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param vpn_server_configuration_name: The name of the + VpnServerConfiguration that is unique within a resource group. + :type vpn_server_configuration_name: str + :param vpn_protocols: VPN protocols for the VpnServerConfiguration. + :type vpn_protocols: list[str or + ~azure.mgmt.network.v2019_09_01.models.VpnGatewayTunnelingProtocol] + :param vpn_authentication_types: VPN authentication types for the + VpnServerConfiguration. + :type vpn_authentication_types: list[str or + ~azure.mgmt.network.v2019_09_01.models.VpnAuthenticationType] + :param vpn_client_root_certificates: VPN client root certificate of + VpnServerConfiguration. + :type vpn_client_root_certificates: + list[~azure.mgmt.network.v2019_09_01.models.VpnServerConfigVpnClientRootCertificate] + :param vpn_client_revoked_certificates: VPN client revoked certificate of + VpnServerConfiguration. + :type vpn_client_revoked_certificates: + list[~azure.mgmt.network.v2019_09_01.models.VpnServerConfigVpnClientRevokedCertificate] + :param radius_server_root_certificates: Radius Server root certificate of + VpnServerConfiguration. + :type radius_server_root_certificates: + list[~azure.mgmt.network.v2019_09_01.models.VpnServerConfigRadiusServerRootCertificate] + :param radius_client_root_certificates: Radius client root certificate of + VpnServerConfiguration. + :type radius_client_root_certificates: + list[~azure.mgmt.network.v2019_09_01.models.VpnServerConfigRadiusClientRootCertificate] + :param vpn_client_ipsec_policies: VpnClientIpsecPolicies for + VpnServerConfiguration. + :type vpn_client_ipsec_policies: + list[~azure.mgmt.network.v2019_09_01.models.IpsecPolicy] + :param radius_server_address: The radius server address property of the + VpnServerConfiguration resource for point to site client connection. + :type radius_server_address: str + :param radius_server_secret: The radius secret property of the + VpnServerConfiguration resource for point to site client connection. + :type radius_server_secret: str + :param aad_authentication_parameters: The set of aad vpn authentication + parameters. + :type aad_authentication_parameters: + ~azure.mgmt.network.v2019_09_01.models.AadAuthenticationParameters + :ivar provisioning_state: The provisioning state of the + VpnServerConfiguration resource. Possible values are: 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :ivar p2_svpn_gateways: List of references to P2SVpnGateways. + :vartype p2_svpn_gateways: + list[~azure.mgmt.network.v2019_09_01.models.P2SVpnGateway] + :ivar vpn_server_configuration_properties_etag: A unique read-only string + that changes whenever the resource is updated. + :vartype vpn_server_configuration_properties_etag: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'p2_svpn_gateways': {'readonly': True}, + 'vpn_server_configuration_properties_etag': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'vpn_server_configuration_name': {'key': 'properties.name', 'type': 'str'}, + 'vpn_protocols': {'key': 'properties.vpnProtocols', 'type': '[str]'}, + 'vpn_authentication_types': {'key': 'properties.vpnAuthenticationTypes', 'type': '[str]'}, + 'vpn_client_root_certificates': {'key': 'properties.vpnClientRootCertificates', 'type': '[VpnServerConfigVpnClientRootCertificate]'}, + 'vpn_client_revoked_certificates': {'key': 'properties.vpnClientRevokedCertificates', 'type': '[VpnServerConfigVpnClientRevokedCertificate]'}, + 'radius_server_root_certificates': {'key': 'properties.radiusServerRootCertificates', 'type': '[VpnServerConfigRadiusServerRootCertificate]'}, + 'radius_client_root_certificates': {'key': 'properties.radiusClientRootCertificates', 'type': '[VpnServerConfigRadiusClientRootCertificate]'}, + 'vpn_client_ipsec_policies': {'key': 'properties.vpnClientIpsecPolicies', 'type': '[IpsecPolicy]'}, + 'radius_server_address': {'key': 'properties.radiusServerAddress', 'type': 'str'}, + 'radius_server_secret': {'key': 'properties.radiusServerSecret', 'type': 'str'}, + 'aad_authentication_parameters': {'key': 'properties.aadAuthenticationParameters', 'type': 'AadAuthenticationParameters'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'p2_svpn_gateways': {'key': 'properties.p2SVpnGateways', 'type': '[P2SVpnGateway]'}, + 'vpn_server_configuration_properties_etag': {'key': 'properties.etag', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnServerConfiguration, self).__init__(**kwargs) + self.vpn_server_configuration_name = kwargs.get('vpn_server_configuration_name', None) + self.vpn_protocols = kwargs.get('vpn_protocols', None) + self.vpn_authentication_types = kwargs.get('vpn_authentication_types', None) + self.vpn_client_root_certificates = kwargs.get('vpn_client_root_certificates', None) + self.vpn_client_revoked_certificates = kwargs.get('vpn_client_revoked_certificates', None) + self.radius_server_root_certificates = kwargs.get('radius_server_root_certificates', None) + self.radius_client_root_certificates = kwargs.get('radius_client_root_certificates', None) + self.vpn_client_ipsec_policies = kwargs.get('vpn_client_ipsec_policies', None) + self.radius_server_address = kwargs.get('radius_server_address', None) + self.radius_server_secret = kwargs.get('radius_server_secret', None) + self.aad_authentication_parameters = kwargs.get('aad_authentication_parameters', None) + self.provisioning_state = None + self.p2_svpn_gateways = None + self.vpn_server_configuration_properties_etag = None + self.etag = None + + +class VpnServerConfigurationsResponse(Model): + """VpnServerConfigurations list associated with VirtualWan Response. + + :param vpn_server_configuration_resource_ids: List of + VpnServerConfigurations associated with VirtualWan. + :type vpn_server_configuration_resource_ids: list[str] + """ + + _attribute_map = { + 'vpn_server_configuration_resource_ids': {'key': 'vpnServerConfigurationResourceIds', 'type': '[str]'}, + } + + def __init__(self, **kwargs): + super(VpnServerConfigurationsResponse, self).__init__(**kwargs) + self.vpn_server_configuration_resource_ids = kwargs.get('vpn_server_configuration_resource_ids', None) + + +class VpnServerConfigVpnClientRevokedCertificate(Model): + """Properties of the revoked VPN client certificate of VpnServerConfiguration. + + :param name: The certificate name. + :type name: str + :param thumbprint: The revoked VPN client certificate thumbprint. + :type thumbprint: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'thumbprint': {'key': 'thumbprint', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnServerConfigVpnClientRevokedCertificate, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.thumbprint = kwargs.get('thumbprint', None) + + +class VpnServerConfigVpnClientRootCertificate(Model): + """Properties of VPN client root certificate of VpnServerConfiguration. + + :param name: The certificate name. + :type name: str + :param public_cert_data: The certificate public data. + :type public_cert_data: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'public_cert_data': {'key': 'publicCertData', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnServerConfigVpnClientRootCertificate, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.public_cert_data = kwargs.get('public_cert_data', None) + + +class VpnSite(Resource): + """VpnSite Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_wan: The VirtualWAN to which the vpnSite belongs. + :type virtual_wan: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param device_properties: The device properties. + :type device_properties: + ~azure.mgmt.network.v2019_09_01.models.DeviceProperties + :param ip_address: The ip-address for the vpn-site. + :type ip_address: str + :param site_key: The key for vpn-site that can be used for connections. + :type site_key: str + :param address_space: The AddressSpace that contains an array of IP + address ranges. + :type address_space: ~azure.mgmt.network.v2019_09_01.models.AddressSpace + :param bgp_properties: The set of bgp properties. + :type bgp_properties: ~azure.mgmt.network.v2019_09_01.models.BgpSettings + :ivar provisioning_state: The provisioning state of the VPN site resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param is_security_site: IsSecuritySite flag. + :type is_security_site: bool + :param vpn_site_links: List of all vpn site links. + :type vpn_site_links: + list[~azure.mgmt.network.v2019_09_01.models.VpnSiteLink] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_wan': {'key': 'properties.virtualWan', 'type': 'SubResource'}, + 'device_properties': {'key': 'properties.deviceProperties', 'type': 'DeviceProperties'}, + 'ip_address': {'key': 'properties.ipAddress', 'type': 'str'}, + 'site_key': {'key': 'properties.siteKey', 'type': 'str'}, + 'address_space': {'key': 'properties.addressSpace', 'type': 'AddressSpace'}, + 'bgp_properties': {'key': 'properties.bgpProperties', 'type': 'BgpSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'is_security_site': {'key': 'properties.isSecuritySite', 'type': 'bool'}, + 'vpn_site_links': {'key': 'properties.vpnSiteLinks', 'type': '[VpnSiteLink]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnSite, self).__init__(**kwargs) + self.virtual_wan = kwargs.get('virtual_wan', None) + self.device_properties = kwargs.get('device_properties', None) + self.ip_address = kwargs.get('ip_address', None) + self.site_key = kwargs.get('site_key', None) + self.address_space = kwargs.get('address_space', None) + self.bgp_properties = kwargs.get('bgp_properties', None) + self.provisioning_state = None + self.is_security_site = kwargs.get('is_security_site', None) + self.vpn_site_links = kwargs.get('vpn_site_links', None) + self.etag = None + + +class VpnSiteId(Model): + """VpnSite Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar vpn_site: The resource-uri of the vpn-site for which config is to be + fetched. + :vartype vpn_site: str + """ + + _validation = { + 'vpn_site': {'readonly': True}, + } + + _attribute_map = { + 'vpn_site': {'key': 'vpnSite', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnSiteId, self).__init__(**kwargs) + self.vpn_site = None + + +class VpnSiteLink(SubResource): + """VpnSiteLink Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param link_properties: The link provider properties. + :type link_properties: + ~azure.mgmt.network.v2019_09_01.models.VpnLinkProviderProperties + :param ip_address: The ip-address for the vpn-site-link. + :type ip_address: str + :param bgp_properties: The set of bgp properties. + :type bgp_properties: + ~azure.mgmt.network.v2019_09_01.models.VpnLinkBgpSettings + :ivar provisioning_state: The provisioning state of the VPN site link + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar type: Resource type. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'link_properties': {'key': 'properties.linkProperties', 'type': 'VpnLinkProviderProperties'}, + 'ip_address': {'key': 'properties.ipAddress', 'type': 'str'}, + 'bgp_properties': {'key': 'properties.bgpProperties', 'type': 'VpnLinkBgpSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnSiteLink, self).__init__(**kwargs) + self.link_properties = kwargs.get('link_properties', None) + self.ip_address = kwargs.get('ip_address', None) + self.bgp_properties = kwargs.get('bgp_properties', None) + self.provisioning_state = None + self.etag = None + self.name = kwargs.get('name', None) + self.type = None + + +class VpnSiteLinkConnection(SubResource): + """VpnSiteLinkConnection Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param vpn_site_link: Id of the connected vpn site link. + :type vpn_site_link: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param routing_weight: Routing weight for vpn connection. + :type routing_weight: int + :param connection_status: The connection status. Possible values include: + 'Unknown', 'Connecting', 'Connected', 'NotConnected' + :type connection_status: str or + ~azure.mgmt.network.v2019_09_01.models.VpnConnectionStatus + :param vpn_connection_protocol_type: Connection protocol used for this + connection. Possible values include: 'IKEv2', 'IKEv1' + :type vpn_connection_protocol_type: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionProtocol + :ivar ingress_bytes_transferred: Ingress bytes transferred. + :vartype ingress_bytes_transferred: long + :ivar egress_bytes_transferred: Egress bytes transferred. + :vartype egress_bytes_transferred: long + :param connection_bandwidth: Expected bandwidth in MBPS. + :type connection_bandwidth: int + :param shared_key: SharedKey for the vpn connection. + :type shared_key: str + :param enable_bgp: EnableBgp flag. + :type enable_bgp: bool + :param use_policy_based_traffic_selectors: Enable policy-based traffic + selectors. + :type use_policy_based_traffic_selectors: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2019_09_01.models.IpsecPolicy] + :param enable_rate_limiting: EnableBgp flag. + :type enable_rate_limiting: bool + :param use_local_azure_ip_address: Use local azure ip to initiate + connection. + :type use_local_azure_ip_address: bool + :ivar provisioning_state: The provisioning state of the VPN site link + connection resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Resource type. + :vartype type: str + """ + + _validation = { + 'ingress_bytes_transferred': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'vpn_site_link': {'key': 'properties.vpnSiteLink', 'type': 'SubResource'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'vpn_connection_protocol_type': {'key': 'properties.vpnConnectionProtocolType', 'type': 'str'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'connection_bandwidth': {'key': 'properties.connectionBandwidth', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'use_policy_based_traffic_selectors': {'key': 'properties.usePolicyBasedTrafficSelectors', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'enable_rate_limiting': {'key': 'properties.enableRateLimiting', 'type': 'bool'}, + 'use_local_azure_ip_address': {'key': 'properties.useLocalAzureIpAddress', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(VpnSiteLinkConnection, self).__init__(**kwargs) + self.vpn_site_link = kwargs.get('vpn_site_link', None) + self.routing_weight = kwargs.get('routing_weight', None) + self.connection_status = kwargs.get('connection_status', None) + self.vpn_connection_protocol_type = kwargs.get('vpn_connection_protocol_type', None) + self.ingress_bytes_transferred = None + self.egress_bytes_transferred = None + self.connection_bandwidth = kwargs.get('connection_bandwidth', None) + self.shared_key = kwargs.get('shared_key', None) + self.enable_bgp = kwargs.get('enable_bgp', None) + self.use_policy_based_traffic_selectors = kwargs.get('use_policy_based_traffic_selectors', None) + self.ipsec_policies = kwargs.get('ipsec_policies', None) + self.enable_rate_limiting = kwargs.get('enable_rate_limiting', None) + self.use_local_azure_ip_address = kwargs.get('use_local_azure_ip_address', None) + self.provisioning_state = None + self.name = kwargs.get('name', None) + self.etag = None + self.type = None + + +class WebApplicationFirewallCustomRule(Model): + """Defines contents of a web application rule. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param name: The name of the resource that is unique within a policy. This + name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :param priority: Required. Describes priority of the rule. Rules with a + lower value will be evaluated before rules with a higher value. + :type priority: int + :param rule_type: Required. Describes type of rule. Possible values + include: 'MatchRule', 'Invalid' + :type rule_type: str or + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallRuleType + :param match_conditions: Required. List of match conditions. + :type match_conditions: + list[~azure.mgmt.network.v2019_09_01.models.MatchCondition] + :param action: Required. Type of Actions. Possible values include: + 'Allow', 'Block', 'Log' + :type action: str or + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallAction + """ + + _validation = { + 'name': {'max_length': 128}, + 'etag': {'readonly': True}, + 'priority': {'required': True}, + 'rule_type': {'required': True}, + 'match_conditions': {'required': True}, + 'action': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'priority': {'key': 'priority', 'type': 'int'}, + 'rule_type': {'key': 'ruleType', 'type': 'str'}, + 'match_conditions': {'key': 'matchConditions', 'type': '[MatchCondition]'}, + 'action': {'key': 'action', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(WebApplicationFirewallCustomRule, self).__init__(**kwargs) + self.name = kwargs.get('name', None) + self.etag = None + self.priority = kwargs.get('priority', None) + self.rule_type = kwargs.get('rule_type', None) + self.match_conditions = kwargs.get('match_conditions', None) + self.action = kwargs.get('action', None) + + +class WebApplicationFirewallPolicy(Resource): + """Defines web application firewall policy. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param policy_settings: Describes policySettings for policy. + :type policy_settings: + ~azure.mgmt.network.v2019_09_01.models.PolicySettings + :param custom_rules: Describes custom rules inside the policy. + :type custom_rules: + list[~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallCustomRule] + :ivar application_gateways: A collection of references to application + gateways. + :vartype application_gateways: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGateway] + :ivar provisioning_state: The provisioning state of the web application + firewall policy resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar resource_state: Resource status of the policy. Resource status of + the policy. Possible values include: 'Creating', 'Enabling', 'Enabled', + 'Disabling', 'Disabled', 'Deleting' + :vartype resource_state: str or + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallPolicyResourceState + :param managed_rules: Required. Describes the managedRules structure + :type managed_rules: + ~azure.mgmt.network.v2019_09_01.models.ManagedRulesDefinition + :ivar http_listeners: A collection of references to application gateway + http listeners. + :vartype http_listeners: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar path_based_rules: A collection of references to application gateway + path rules. + :vartype path_based_rules: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'application_gateways': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'resource_state': {'readonly': True}, + 'managed_rules': {'required': True}, + 'http_listeners': {'readonly': True}, + 'path_based_rules': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'policy_settings': {'key': 'properties.policySettings', 'type': 'PolicySettings'}, + 'custom_rules': {'key': 'properties.customRules', 'type': '[WebApplicationFirewallCustomRule]'}, + 'application_gateways': {'key': 'properties.applicationGateways', 'type': '[ApplicationGateway]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'resource_state': {'key': 'properties.resourceState', 'type': 'str'}, + 'managed_rules': {'key': 'properties.managedRules', 'type': 'ManagedRulesDefinition'}, + 'http_listeners': {'key': 'properties.httpListeners', 'type': '[SubResource]'}, + 'path_based_rules': {'key': 'properties.pathBasedRules', 'type': '[SubResource]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, **kwargs): + super(WebApplicationFirewallPolicy, self).__init__(**kwargs) + self.policy_settings = kwargs.get('policy_settings', None) + self.custom_rules = kwargs.get('custom_rules', None) + self.application_gateways = None + self.provisioning_state = None + self.resource_state = None + self.managed_rules = kwargs.get('managed_rules', None) + self.http_listeners = None + self.path_based_rules = None + self.etag = None diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/_models_py3.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/_models_py3.py new file mode 100644 index 000000000000..a90134241be5 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/_models_py3.py @@ -0,0 +1,16319 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.serialization import Model +from msrest.exceptions import HttpOperationError + + +class AadAuthenticationParameters(Model): + """AAD Vpn authentication type related parameters. + + :param aad_tenant: AAD Vpn authentication parameter AAD tenant. + :type aad_tenant: str + :param aad_audience: AAD Vpn authentication parameter AAD audience. + :type aad_audience: str + :param aad_issuer: AAD Vpn authentication parameter AAD issuer. + :type aad_issuer: str + """ + + _attribute_map = { + 'aad_tenant': {'key': 'aadTenant', 'type': 'str'}, + 'aad_audience': {'key': 'aadAudience', 'type': 'str'}, + 'aad_issuer': {'key': 'aadIssuer', 'type': 'str'}, + } + + def __init__(self, *, aad_tenant: str=None, aad_audience: str=None, aad_issuer: str=None, **kwargs) -> None: + super(AadAuthenticationParameters, self).__init__(**kwargs) + self.aad_tenant = aad_tenant + self.aad_audience = aad_audience + self.aad_issuer = aad_issuer + + +class AddressSpace(Model): + """AddressSpace contains an array of IP address ranges that can be used by + subnets of the virtual network. + + :param address_prefixes: A list of address blocks reserved for this + virtual network in CIDR notation. + :type address_prefixes: list[str] + """ + + _attribute_map = { + 'address_prefixes': {'key': 'addressPrefixes', 'type': '[str]'}, + } + + def __init__(self, *, address_prefixes=None, **kwargs) -> None: + super(AddressSpace, self).__init__(**kwargs) + self.address_prefixes = address_prefixes + + +class Resource(Model): + """Common resource representation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, **kwargs) -> None: + super(Resource, self).__init__(**kwargs) + self.id = id + self.name = None + self.type = None + self.location = location + self.tags = tags + + +class ApplicationGateway(Resource): + """Application gateway resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: SKU of the application gateway resource. + :type sku: ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySku + :param ssl_policy: SSL policy of the application gateway resource. + :type ssl_policy: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslPolicy + :ivar operational_state: Operational state of the application gateway + resource. Possible values include: 'Stopped', 'Starting', 'Running', + 'Stopping' + :vartype operational_state: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayOperationalState + :param gateway_ip_configurations: Subnets of the application gateway + resource. For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type gateway_ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayIPConfiguration] + :param authentication_certificates: Authentication certificates of the + application gateway resource. For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type authentication_certificates: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayAuthenticationCertificate] + :param trusted_root_certificates: Trusted Root certificates of the + application gateway resource. For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type trusted_root_certificates: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayTrustedRootCertificate] + :param ssl_certificates: SSL certificates of the application gateway + resource. For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type ssl_certificates: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslCertificate] + :param frontend_ip_configurations: Frontend IP addresses of the + application gateway resource. For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type frontend_ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayFrontendIPConfiguration] + :param frontend_ports: Frontend ports of the application gateway resource. + For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type frontend_ports: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayFrontendPort] + :param probes: Probes of the application gateway resource. + :type probes: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayProbe] + :param backend_address_pools: Backend address pool of the application + gateway resource. For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type backend_address_pools: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendAddressPool] + :param backend_http_settings_collection: Backend http settings of the + application gateway resource. For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type backend_http_settings_collection: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendHttpSettings] + :param http_listeners: Http listeners of the application gateway resource. + For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type http_listeners: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayHttpListener] + :param url_path_maps: URL path map of the application gateway resource. + For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type url_path_maps: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayUrlPathMap] + :param request_routing_rules: Request routing rules of the application + gateway resource. + :type request_routing_rules: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayRequestRoutingRule] + :param rewrite_rule_sets: Rewrite rules for the application gateway + resource. + :type rewrite_rule_sets: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayRewriteRuleSet] + :param redirect_configurations: Redirect configurations of the application + gateway resource. For default limits, see [Application Gateway + limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). + :type redirect_configurations: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayRedirectConfiguration] + :param web_application_firewall_configuration: Web application firewall + configuration. + :type web_application_firewall_configuration: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayWebApplicationFirewallConfiguration + :param firewall_policy: Reference of the FirewallPolicy resource. + :type firewall_policy: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param enable_http2: Whether HTTP2 is enabled on the application gateway + resource. + :type enable_http2: bool + :param enable_fips: Whether FIPS is enabled on the application gateway + resource. + :type enable_fips: bool + :param autoscale_configuration: Autoscale Configuration. + :type autoscale_configuration: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayAutoscaleConfiguration + :ivar resource_guid: The resource GUID property of the application gateway + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the application + gateway resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param custom_error_configurations: Custom error configurations of the + application gateway resource. + :type custom_error_configurations: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayCustomError] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :param zones: A list of availability zones denoting where the resource + needs to come from. + :type zones: list[str] + :param identity: The identity of the application gateway, if configured. + :type identity: + ~azure.mgmt.network.v2019_09_01.models.ManagedServiceIdentity + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'operational_state': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'properties.sku', 'type': 'ApplicationGatewaySku'}, + 'ssl_policy': {'key': 'properties.sslPolicy', 'type': 'ApplicationGatewaySslPolicy'}, + 'operational_state': {'key': 'properties.operationalState', 'type': 'str'}, + 'gateway_ip_configurations': {'key': 'properties.gatewayIPConfigurations', 'type': '[ApplicationGatewayIPConfiguration]'}, + 'authentication_certificates': {'key': 'properties.authenticationCertificates', 'type': '[ApplicationGatewayAuthenticationCertificate]'}, + 'trusted_root_certificates': {'key': 'properties.trustedRootCertificates', 'type': '[ApplicationGatewayTrustedRootCertificate]'}, + 'ssl_certificates': {'key': 'properties.sslCertificates', 'type': '[ApplicationGatewaySslCertificate]'}, + 'frontend_ip_configurations': {'key': 'properties.frontendIPConfigurations', 'type': '[ApplicationGatewayFrontendIPConfiguration]'}, + 'frontend_ports': {'key': 'properties.frontendPorts', 'type': '[ApplicationGatewayFrontendPort]'}, + 'probes': {'key': 'properties.probes', 'type': '[ApplicationGatewayProbe]'}, + 'backend_address_pools': {'key': 'properties.backendAddressPools', 'type': '[ApplicationGatewayBackendAddressPool]'}, + 'backend_http_settings_collection': {'key': 'properties.backendHttpSettingsCollection', 'type': '[ApplicationGatewayBackendHttpSettings]'}, + 'http_listeners': {'key': 'properties.httpListeners', 'type': '[ApplicationGatewayHttpListener]'}, + 'url_path_maps': {'key': 'properties.urlPathMaps', 'type': '[ApplicationGatewayUrlPathMap]'}, + 'request_routing_rules': {'key': 'properties.requestRoutingRules', 'type': '[ApplicationGatewayRequestRoutingRule]'}, + 'rewrite_rule_sets': {'key': 'properties.rewriteRuleSets', 'type': '[ApplicationGatewayRewriteRuleSet]'}, + 'redirect_configurations': {'key': 'properties.redirectConfigurations', 'type': '[ApplicationGatewayRedirectConfiguration]'}, + 'web_application_firewall_configuration': {'key': 'properties.webApplicationFirewallConfiguration', 'type': 'ApplicationGatewayWebApplicationFirewallConfiguration'}, + 'firewall_policy': {'key': 'properties.firewallPolicy', 'type': 'SubResource'}, + 'enable_http2': {'key': 'properties.enableHttp2', 'type': 'bool'}, + 'enable_fips': {'key': 'properties.enableFips', 'type': 'bool'}, + 'autoscale_configuration': {'key': 'properties.autoscaleConfiguration', 'type': 'ApplicationGatewayAutoscaleConfiguration'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'custom_error_configurations': {'key': 'properties.customErrorConfigurations', 'type': '[ApplicationGatewayCustomError]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + 'identity': {'key': 'identity', 'type': 'ManagedServiceIdentity'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, sku=None, ssl_policy=None, gateway_ip_configurations=None, authentication_certificates=None, trusted_root_certificates=None, ssl_certificates=None, frontend_ip_configurations=None, frontend_ports=None, probes=None, backend_address_pools=None, backend_http_settings_collection=None, http_listeners=None, url_path_maps=None, request_routing_rules=None, rewrite_rule_sets=None, redirect_configurations=None, web_application_firewall_configuration=None, firewall_policy=None, enable_http2: bool=None, enable_fips: bool=None, autoscale_configuration=None, custom_error_configurations=None, zones=None, identity=None, **kwargs) -> None: + super(ApplicationGateway, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.sku = sku + self.ssl_policy = ssl_policy + self.operational_state = None + self.gateway_ip_configurations = gateway_ip_configurations + self.authentication_certificates = authentication_certificates + self.trusted_root_certificates = trusted_root_certificates + self.ssl_certificates = ssl_certificates + self.frontend_ip_configurations = frontend_ip_configurations + self.frontend_ports = frontend_ports + self.probes = probes + self.backend_address_pools = backend_address_pools + self.backend_http_settings_collection = backend_http_settings_collection + self.http_listeners = http_listeners + self.url_path_maps = url_path_maps + self.request_routing_rules = request_routing_rules + self.rewrite_rule_sets = rewrite_rule_sets + self.redirect_configurations = redirect_configurations + self.web_application_firewall_configuration = web_application_firewall_configuration + self.firewall_policy = firewall_policy + self.enable_http2 = enable_http2 + self.enable_fips = enable_fips + self.autoscale_configuration = autoscale_configuration + self.resource_guid = None + self.provisioning_state = None + self.custom_error_configurations = custom_error_configurations + self.etag = None + self.zones = zones + self.identity = identity + + +class SubResource(Model): + """Reference to another subresource. + + :param id: Resource ID. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(SubResource, self).__init__(**kwargs) + self.id = id + + +class ApplicationGatewayAuthenticationCertificate(SubResource): + """Authentication certificates of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param data: Certificate public data. + :type data: str + :ivar provisioning_state: The provisioning state of the authentication + certificate resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the authentication certificate that is unique within + an Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'data': {'key': 'properties.data', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, data: str=None, name: str=None, **kwargs) -> None: + super(ApplicationGatewayAuthenticationCertificate, self).__init__(id=id, **kwargs) + self.data = data + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class ApplicationGatewayAutoscaleConfiguration(Model): + """Application Gateway autoscale configuration. + + All required parameters must be populated in order to send to Azure. + + :param min_capacity: Required. Lower bound on number of Application + Gateway capacity. + :type min_capacity: int + :param max_capacity: Upper bound on number of Application Gateway + capacity. + :type max_capacity: int + """ + + _validation = { + 'min_capacity': {'required': True, 'minimum': 0}, + 'max_capacity': {'minimum': 2}, + } + + _attribute_map = { + 'min_capacity': {'key': 'minCapacity', 'type': 'int'}, + 'max_capacity': {'key': 'maxCapacity', 'type': 'int'}, + } + + def __init__(self, *, min_capacity: int, max_capacity: int=None, **kwargs) -> None: + super(ApplicationGatewayAutoscaleConfiguration, self).__init__(**kwargs) + self.min_capacity = min_capacity + self.max_capacity = max_capacity + + +class ApplicationGatewayAvailableSslOptions(Resource): + """Response for ApplicationGatewayAvailableSslOptions API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param predefined_policies: List of available Ssl predefined policy. + :type predefined_policies: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param default_policy: Name of the Ssl predefined policy applied by + default to application gateway. Possible values include: + 'AppGwSslPolicy20150501', 'AppGwSslPolicy20170401', + 'AppGwSslPolicy20170401S' + :type default_policy: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslPolicyName + :param available_cipher_suites: List of available Ssl cipher suites. + :type available_cipher_suites: list[str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslCipherSuite] + :param available_protocols: List of available Ssl protocols. + :type available_protocols: list[str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslProtocol] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'predefined_policies': {'key': 'properties.predefinedPolicies', 'type': '[SubResource]'}, + 'default_policy': {'key': 'properties.defaultPolicy', 'type': 'str'}, + 'available_cipher_suites': {'key': 'properties.availableCipherSuites', 'type': '[str]'}, + 'available_protocols': {'key': 'properties.availableProtocols', 'type': '[str]'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, predefined_policies=None, default_policy=None, available_cipher_suites=None, available_protocols=None, **kwargs) -> None: + super(ApplicationGatewayAvailableSslOptions, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.predefined_policies = predefined_policies + self.default_policy = default_policy + self.available_cipher_suites = available_cipher_suites + self.available_protocols = available_protocols + + +class ApplicationGatewayAvailableWafRuleSetsResult(Model): + """Response for ApplicationGatewayAvailableWafRuleSets API service call. + + :param value: The list of application gateway rule sets. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayFirewallRuleSet] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ApplicationGatewayFirewallRuleSet]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(ApplicationGatewayAvailableWafRuleSetsResult, self).__init__(**kwargs) + self.value = value + + +class ApplicationGatewayBackendAddress(Model): + """Backend address of an application gateway. + + :param fqdn: Fully qualified domain name (FQDN). + :type fqdn: str + :param ip_address: IP address. + :type ip_address: str + """ + + _attribute_map = { + 'fqdn': {'key': 'fqdn', 'type': 'str'}, + 'ip_address': {'key': 'ipAddress', 'type': 'str'}, + } + + def __init__(self, *, fqdn: str=None, ip_address: str=None, **kwargs) -> None: + super(ApplicationGatewayBackendAddress, self).__init__(**kwargs) + self.fqdn = fqdn + self.ip_address = ip_address + + +class ApplicationGatewayBackendAddressPool(SubResource): + """Backend Address Pool of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar backend_ip_configurations: Collection of references to IPs defined + in network interfaces. + :vartype backend_ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfiguration] + :param backend_addresses: Backend addresses. + :type backend_addresses: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendAddress] + :ivar provisioning_state: The provisioning state of the backend address + pool resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the backend address pool that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'backend_ip_configurations': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'backend_ip_configurations': {'key': 'properties.backendIPConfigurations', 'type': '[NetworkInterfaceIPConfiguration]'}, + 'backend_addresses': {'key': 'properties.backendAddresses', 'type': '[ApplicationGatewayBackendAddress]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, backend_addresses=None, name: str=None, **kwargs) -> None: + super(ApplicationGatewayBackendAddressPool, self).__init__(id=id, **kwargs) + self.backend_ip_configurations = None + self.backend_addresses = backend_addresses + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class ApplicationGatewayBackendHealth(Model): + """Response for ApplicationGatewayBackendHealth API service call. + + :param backend_address_pools: A list of + ApplicationGatewayBackendHealthPool resources. + :type backend_address_pools: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendHealthPool] + """ + + _attribute_map = { + 'backend_address_pools': {'key': 'backendAddressPools', 'type': '[ApplicationGatewayBackendHealthPool]'}, + } + + def __init__(self, *, backend_address_pools=None, **kwargs) -> None: + super(ApplicationGatewayBackendHealth, self).__init__(**kwargs) + self.backend_address_pools = backend_address_pools + + +class ApplicationGatewayBackendHealthHttpSettings(Model): + """Application gateway BackendHealthHttp settings. + + :param backend_http_settings: Reference of an + ApplicationGatewayBackendHttpSettings resource. + :type backend_http_settings: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendHttpSettings + :param servers: List of ApplicationGatewayBackendHealthServer resources. + :type servers: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendHealthServer] + """ + + _attribute_map = { + 'backend_http_settings': {'key': 'backendHttpSettings', 'type': 'ApplicationGatewayBackendHttpSettings'}, + 'servers': {'key': 'servers', 'type': '[ApplicationGatewayBackendHealthServer]'}, + } + + def __init__(self, *, backend_http_settings=None, servers=None, **kwargs) -> None: + super(ApplicationGatewayBackendHealthHttpSettings, self).__init__(**kwargs) + self.backend_http_settings = backend_http_settings + self.servers = servers + + +class ApplicationGatewayBackendHealthOnDemand(Model): + """Result of on demand test probe. + + :param backend_address_pool: Reference of an + ApplicationGatewayBackendAddressPool resource. + :type backend_address_pool: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendAddressPool + :param backend_health_http_settings: Application gateway BackendHealthHttp + settings. + :type backend_health_http_settings: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendHealthHttpSettings + """ + + _attribute_map = { + 'backend_address_pool': {'key': 'backendAddressPool', 'type': 'ApplicationGatewayBackendAddressPool'}, + 'backend_health_http_settings': {'key': 'backendHealthHttpSettings', 'type': 'ApplicationGatewayBackendHealthHttpSettings'}, + } + + def __init__(self, *, backend_address_pool=None, backend_health_http_settings=None, **kwargs) -> None: + super(ApplicationGatewayBackendHealthOnDemand, self).__init__(**kwargs) + self.backend_address_pool = backend_address_pool + self.backend_health_http_settings = backend_health_http_settings + + +class ApplicationGatewayBackendHealthPool(Model): + """Application gateway BackendHealth pool. + + :param backend_address_pool: Reference of an + ApplicationGatewayBackendAddressPool resource. + :type backend_address_pool: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendAddressPool + :param backend_http_settings_collection: List of + ApplicationGatewayBackendHealthHttpSettings resources. + :type backend_http_settings_collection: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendHealthHttpSettings] + """ + + _attribute_map = { + 'backend_address_pool': {'key': 'backendAddressPool', 'type': 'ApplicationGatewayBackendAddressPool'}, + 'backend_http_settings_collection': {'key': 'backendHttpSettingsCollection', 'type': '[ApplicationGatewayBackendHealthHttpSettings]'}, + } + + def __init__(self, *, backend_address_pool=None, backend_http_settings_collection=None, **kwargs) -> None: + super(ApplicationGatewayBackendHealthPool, self).__init__(**kwargs) + self.backend_address_pool = backend_address_pool + self.backend_http_settings_collection = backend_http_settings_collection + + +class ApplicationGatewayBackendHealthServer(Model): + """Application gateway backendhealth http settings. + + :param address: IP address or FQDN of backend server. + :type address: str + :param ip_configuration: Reference of IP configuration of backend server. + :type ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfiguration + :param health: Health of backend server. Possible values include: + 'Unknown', 'Up', 'Down', 'Partial', 'Draining' + :type health: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendHealthServerHealth + :param health_probe_log: Health Probe Log. + :type health_probe_log: str + """ + + _attribute_map = { + 'address': {'key': 'address', 'type': 'str'}, + 'ip_configuration': {'key': 'ipConfiguration', 'type': 'NetworkInterfaceIPConfiguration'}, + 'health': {'key': 'health', 'type': 'str'}, + 'health_probe_log': {'key': 'healthProbeLog', 'type': 'str'}, + } + + def __init__(self, *, address: str=None, ip_configuration=None, health=None, health_probe_log: str=None, **kwargs) -> None: + super(ApplicationGatewayBackendHealthServer, self).__init__(**kwargs) + self.address = address + self.ip_configuration = ip_configuration + self.health = health + self.health_probe_log = health_probe_log + + +class ApplicationGatewayBackendHttpSettings(SubResource): + """Backend address pool settings of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param port: The destination port on the backend. + :type port: int + :param protocol: The protocol used to communicate with the backend. + Possible values include: 'Http', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayProtocol + :param cookie_based_affinity: Cookie based affinity. Possible values + include: 'Enabled', 'Disabled' + :type cookie_based_affinity: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayCookieBasedAffinity + :param request_timeout: Request timeout in seconds. Application Gateway + will fail the request if response is not received within RequestTimeout. + Acceptable values are from 1 second to 86400 seconds. + :type request_timeout: int + :param probe: Probe resource of an application gateway. + :type probe: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param authentication_certificates: Array of references to application + gateway authentication certificates. + :type authentication_certificates: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param trusted_root_certificates: Array of references to application + gateway trusted root certificates. + :type trusted_root_certificates: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param connection_draining: Connection draining of the backend http + settings resource. + :type connection_draining: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayConnectionDraining + :param host_name: Host header to be sent to the backend servers. + :type host_name: str + :param pick_host_name_from_backend_address: Whether to pick host header + should be picked from the host name of the backend server. Default value + is false. + :type pick_host_name_from_backend_address: bool + :param affinity_cookie_name: Cookie name to use for the affinity cookie. + :type affinity_cookie_name: str + :param probe_enabled: Whether the probe is enabled. Default value is + false. + :type probe_enabled: bool + :param path: Path which should be used as a prefix for all HTTP requests. + Null means no path will be prefixed. Default value is null. + :type path: str + :ivar provisioning_state: The provisioning state of the backend HTTP + settings resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the backend http settings that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'cookie_based_affinity': {'key': 'properties.cookieBasedAffinity', 'type': 'str'}, + 'request_timeout': {'key': 'properties.requestTimeout', 'type': 'int'}, + 'probe': {'key': 'properties.probe', 'type': 'SubResource'}, + 'authentication_certificates': {'key': 'properties.authenticationCertificates', 'type': '[SubResource]'}, + 'trusted_root_certificates': {'key': 'properties.trustedRootCertificates', 'type': '[SubResource]'}, + 'connection_draining': {'key': 'properties.connectionDraining', 'type': 'ApplicationGatewayConnectionDraining'}, + 'host_name': {'key': 'properties.hostName', 'type': 'str'}, + 'pick_host_name_from_backend_address': {'key': 'properties.pickHostNameFromBackendAddress', 'type': 'bool'}, + 'affinity_cookie_name': {'key': 'properties.affinityCookieName', 'type': 'str'}, + 'probe_enabled': {'key': 'properties.probeEnabled', 'type': 'bool'}, + 'path': {'key': 'properties.path', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, port: int=None, protocol=None, cookie_based_affinity=None, request_timeout: int=None, probe=None, authentication_certificates=None, trusted_root_certificates=None, connection_draining=None, host_name: str=None, pick_host_name_from_backend_address: bool=None, affinity_cookie_name: str=None, probe_enabled: bool=None, path: str=None, name: str=None, **kwargs) -> None: + super(ApplicationGatewayBackendHttpSettings, self).__init__(id=id, **kwargs) + self.port = port + self.protocol = protocol + self.cookie_based_affinity = cookie_based_affinity + self.request_timeout = request_timeout + self.probe = probe + self.authentication_certificates = authentication_certificates + self.trusted_root_certificates = trusted_root_certificates + self.connection_draining = connection_draining + self.host_name = host_name + self.pick_host_name_from_backend_address = pick_host_name_from_backend_address + self.affinity_cookie_name = affinity_cookie_name + self.probe_enabled = probe_enabled + self.path = path + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class ApplicationGatewayConnectionDraining(Model): + """Connection draining allows open connections to a backend server to be + active for a specified time after the backend server got removed from the + configuration. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Whether connection draining is enabled or not. + :type enabled: bool + :param drain_timeout_in_sec: Required. The number of seconds connection + draining is active. Acceptable values are from 1 second to 3600 seconds. + :type drain_timeout_in_sec: int + """ + + _validation = { + 'enabled': {'required': True}, + 'drain_timeout_in_sec': {'required': True, 'maximum': 3600, 'minimum': 1}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'drain_timeout_in_sec': {'key': 'drainTimeoutInSec', 'type': 'int'}, + } + + def __init__(self, *, enabled: bool, drain_timeout_in_sec: int, **kwargs) -> None: + super(ApplicationGatewayConnectionDraining, self).__init__(**kwargs) + self.enabled = enabled + self.drain_timeout_in_sec = drain_timeout_in_sec + + +class ApplicationGatewayCustomError(Model): + """Customer error of an application gateway. + + :param status_code: Status code of the application gateway customer error. + Possible values include: 'HttpStatus403', 'HttpStatus502' + :type status_code: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayCustomErrorStatusCode + :param custom_error_page_url: Error page URL of the application gateway + customer error. + :type custom_error_page_url: str + """ + + _attribute_map = { + 'status_code': {'key': 'statusCode', 'type': 'str'}, + 'custom_error_page_url': {'key': 'customErrorPageUrl', 'type': 'str'}, + } + + def __init__(self, *, status_code=None, custom_error_page_url: str=None, **kwargs) -> None: + super(ApplicationGatewayCustomError, self).__init__(**kwargs) + self.status_code = status_code + self.custom_error_page_url = custom_error_page_url + + +class ApplicationGatewayFirewallDisabledRuleGroup(Model): + """Allows to disable rules within a rule group or an entire rule group. + + All required parameters must be populated in order to send to Azure. + + :param rule_group_name: Required. The name of the rule group that will be + disabled. + :type rule_group_name: str + :param rules: The list of rules that will be disabled. If null, all rules + of the rule group will be disabled. + :type rules: list[int] + """ + + _validation = { + 'rule_group_name': {'required': True}, + } + + _attribute_map = { + 'rule_group_name': {'key': 'ruleGroupName', 'type': 'str'}, + 'rules': {'key': 'rules', 'type': '[int]'}, + } + + def __init__(self, *, rule_group_name: str, rules=None, **kwargs) -> None: + super(ApplicationGatewayFirewallDisabledRuleGroup, self).__init__(**kwargs) + self.rule_group_name = rule_group_name + self.rules = rules + + +class ApplicationGatewayFirewallExclusion(Model): + """Allow to exclude some variable satisfy the condition for the WAF check. + + All required parameters must be populated in order to send to Azure. + + :param match_variable: Required. The variable to be excluded. + :type match_variable: str + :param selector_match_operator: Required. When matchVariable is a + collection, operate on the selector to specify which elements in the + collection this exclusion applies to. + :type selector_match_operator: str + :param selector: Required. When matchVariable is a collection, operator + used to specify which elements in the collection this exclusion applies + to. + :type selector: str + """ + + _validation = { + 'match_variable': {'required': True}, + 'selector_match_operator': {'required': True}, + 'selector': {'required': True}, + } + + _attribute_map = { + 'match_variable': {'key': 'matchVariable', 'type': 'str'}, + 'selector_match_operator': {'key': 'selectorMatchOperator', 'type': 'str'}, + 'selector': {'key': 'selector', 'type': 'str'}, + } + + def __init__(self, *, match_variable: str, selector_match_operator: str, selector: str, **kwargs) -> None: + super(ApplicationGatewayFirewallExclusion, self).__init__(**kwargs) + self.match_variable = match_variable + self.selector_match_operator = selector_match_operator + self.selector = selector + + +class ApplicationGatewayFirewallRule(Model): + """A web application firewall rule. + + All required parameters must be populated in order to send to Azure. + + :param rule_id: Required. The identifier of the web application firewall + rule. + :type rule_id: int + :param description: The description of the web application firewall rule. + :type description: str + """ + + _validation = { + 'rule_id': {'required': True}, + } + + _attribute_map = { + 'rule_id': {'key': 'ruleId', 'type': 'int'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, *, rule_id: int, description: str=None, **kwargs) -> None: + super(ApplicationGatewayFirewallRule, self).__init__(**kwargs) + self.rule_id = rule_id + self.description = description + + +class ApplicationGatewayFirewallRuleGroup(Model): + """A web application firewall rule group. + + All required parameters must be populated in order to send to Azure. + + :param rule_group_name: Required. The name of the web application firewall + rule group. + :type rule_group_name: str + :param description: The description of the web application firewall rule + group. + :type description: str + :param rules: Required. The rules of the web application firewall rule + group. + :type rules: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayFirewallRule] + """ + + _validation = { + 'rule_group_name': {'required': True}, + 'rules': {'required': True}, + } + + _attribute_map = { + 'rule_group_name': {'key': 'ruleGroupName', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'rules': {'key': 'rules', 'type': '[ApplicationGatewayFirewallRule]'}, + } + + def __init__(self, *, rule_group_name: str, rules, description: str=None, **kwargs) -> None: + super(ApplicationGatewayFirewallRuleGroup, self).__init__(**kwargs) + self.rule_group_name = rule_group_name + self.description = description + self.rules = rules + + +class ApplicationGatewayFirewallRuleSet(Resource): + """A web application firewall rule set. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar provisioning_state: The provisioning state of the web application + firewall rule set. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param rule_set_type: Required. The type of the web application firewall + rule set. + :type rule_set_type: str + :param rule_set_version: Required. The version of the web application + firewall rule set type. + :type rule_set_version: str + :param rule_groups: Required. The rule groups of the web application + firewall rule set. + :type rule_groups: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayFirewallRuleGroup] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'rule_set_type': {'required': True}, + 'rule_set_version': {'required': True}, + 'rule_groups': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'rule_set_type': {'key': 'properties.ruleSetType', 'type': 'str'}, + 'rule_set_version': {'key': 'properties.ruleSetVersion', 'type': 'str'}, + 'rule_groups': {'key': 'properties.ruleGroups', 'type': '[ApplicationGatewayFirewallRuleGroup]'}, + } + + def __init__(self, *, rule_set_type: str, rule_set_version: str, rule_groups, id: str=None, location: str=None, tags=None, **kwargs) -> None: + super(ApplicationGatewayFirewallRuleSet, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.provisioning_state = None + self.rule_set_type = rule_set_type + self.rule_set_version = rule_set_version + self.rule_groups = rule_groups + + +class ApplicationGatewayFrontendIPConfiguration(SubResource): + """Frontend IP configuration of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param private_ip_address: PrivateIPAddress of the network interface IP + Configuration. + :type private_ip_address: str + :param private_ip_allocation_method: The private IP address allocation + method. Possible values include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2019_09_01.models.IPAllocationMethod + :param subnet: Reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param public_ip_address: Reference of the PublicIP resource. + :type public_ip_address: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar provisioning_state: The provisioning state of the frontend IP + configuration resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the frontend IP configuration that is unique within + an Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, private_ip_address: str=None, private_ip_allocation_method=None, subnet=None, public_ip_address=None, name: str=None, **kwargs) -> None: + super(ApplicationGatewayFrontendIPConfiguration, self).__init__(id=id, **kwargs) + self.private_ip_address = private_ip_address + self.private_ip_allocation_method = private_ip_allocation_method + self.subnet = subnet + self.public_ip_address = public_ip_address + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class ApplicationGatewayFrontendPort(SubResource): + """Frontend port of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param port: Frontend port. + :type port: int + :ivar provisioning_state: The provisioning state of the frontend port + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the frontend port that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, port: int=None, name: str=None, **kwargs) -> None: + super(ApplicationGatewayFrontendPort, self).__init__(id=id, **kwargs) + self.port = port + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class ApplicationGatewayHeaderConfiguration(Model): + """Header configuration of the Actions set in Application Gateway. + + :param header_name: Header name of the header configuration. + :type header_name: str + :param header_value: Header value of the header configuration. + :type header_value: str + """ + + _attribute_map = { + 'header_name': {'key': 'headerName', 'type': 'str'}, + 'header_value': {'key': 'headerValue', 'type': 'str'}, + } + + def __init__(self, *, header_name: str=None, header_value: str=None, **kwargs) -> None: + super(ApplicationGatewayHeaderConfiguration, self).__init__(**kwargs) + self.header_name = header_name + self.header_value = header_value + + +class ApplicationGatewayHttpListener(SubResource): + """Http listener of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: Frontend IP configuration resource of an + application gateway. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param frontend_port: Frontend port resource of an application gateway. + :type frontend_port: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param protocol: Protocol of the HTTP listener. Possible values include: + 'Http', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayProtocol + :param host_name: Host name of HTTP listener. + :type host_name: str + :param ssl_certificate: SSL certificate resource of an application + gateway. + :type ssl_certificate: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param require_server_name_indication: Applicable only if protocol is + https. Enables SNI for multi-hosting. + :type require_server_name_indication: bool + :ivar provisioning_state: The provisioning state of the HTTP listener + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param custom_error_configurations: Custom error configurations of the + HTTP listener. + :type custom_error_configurations: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayCustomError] + :param firewall_policy: Reference to the FirewallPolicy resource. + :type firewall_policy: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param hostnames: List of Host names for HTTP Listener that allows special + wildcard characters as well. + :type hostnames: list[str] + :param name: Name of the HTTP listener that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'frontend_port': {'key': 'properties.frontendPort', 'type': 'SubResource'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'host_name': {'key': 'properties.hostName', 'type': 'str'}, + 'ssl_certificate': {'key': 'properties.sslCertificate', 'type': 'SubResource'}, + 'require_server_name_indication': {'key': 'properties.requireServerNameIndication', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'custom_error_configurations': {'key': 'properties.customErrorConfigurations', 'type': '[ApplicationGatewayCustomError]'}, + 'firewall_policy': {'key': 'properties.firewallPolicy', 'type': 'SubResource'}, + 'hostnames': {'key': 'properties.hostnames', 'type': '[str]'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, frontend_ip_configuration=None, frontend_port=None, protocol=None, host_name: str=None, ssl_certificate=None, require_server_name_indication: bool=None, custom_error_configurations=None, firewall_policy=None, hostnames=None, name: str=None, **kwargs) -> None: + super(ApplicationGatewayHttpListener, self).__init__(id=id, **kwargs) + self.frontend_ip_configuration = frontend_ip_configuration + self.frontend_port = frontend_port + self.protocol = protocol + self.host_name = host_name + self.ssl_certificate = ssl_certificate + self.require_server_name_indication = require_server_name_indication + self.provisioning_state = None + self.custom_error_configurations = custom_error_configurations + self.firewall_policy = firewall_policy + self.hostnames = hostnames + self.name = name + self.etag = None + self.type = None + + +class ApplicationGatewayIPConfiguration(SubResource): + """IP configuration of an application gateway. Currently 1 public and 1 + private IP configuration is allowed. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param subnet: Reference of the subnet resource. A subnet from where + application gateway gets its private address. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar provisioning_state: The provisioning state of the application + gateway IP configuration resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the IP configuration that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, subnet=None, name: str=None, **kwargs) -> None: + super(ApplicationGatewayIPConfiguration, self).__init__(id=id, **kwargs) + self.subnet = subnet + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class ApplicationGatewayOnDemandProbe(Model): + """Details of on demand test probe request. + + :param protocol: The protocol used for the probe. Possible values include: + 'Http', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayProtocol + :param host: Host name to send the probe to. + :type host: str + :param path: Relative path of probe. Valid path starts from '/'. Probe is + sent to ://:. + :type path: str + :param timeout: The probe timeout in seconds. Probe marked as failed if + valid response is not received with this timeout period. Acceptable values + are from 1 second to 86400 seconds. + :type timeout: int + :param pick_host_name_from_backend_http_settings: Whether the host header + should be picked from the backend http settings. Default value is false. + :type pick_host_name_from_backend_http_settings: bool + :param match: Criterion for classifying a healthy probe response. + :type match: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayProbeHealthResponseMatch + :param backend_address_pool: Reference of backend pool of application + gateway to which probe request will be sent. + :type backend_address_pool: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param backend_http_settings: Reference of backend http setting of + application gateway to be used for test probe. + :type backend_http_settings: + ~azure.mgmt.network.v2019_09_01.models.SubResource + """ + + _attribute_map = { + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'host': {'key': 'host', 'type': 'str'}, + 'path': {'key': 'path', 'type': 'str'}, + 'timeout': {'key': 'timeout', 'type': 'int'}, + 'pick_host_name_from_backend_http_settings': {'key': 'pickHostNameFromBackendHttpSettings', 'type': 'bool'}, + 'match': {'key': 'match', 'type': 'ApplicationGatewayProbeHealthResponseMatch'}, + 'backend_address_pool': {'key': 'backendAddressPool', 'type': 'SubResource'}, + 'backend_http_settings': {'key': 'backendHttpSettings', 'type': 'SubResource'}, + } + + def __init__(self, *, protocol=None, host: str=None, path: str=None, timeout: int=None, pick_host_name_from_backend_http_settings: bool=None, match=None, backend_address_pool=None, backend_http_settings=None, **kwargs) -> None: + super(ApplicationGatewayOnDemandProbe, self).__init__(**kwargs) + self.protocol = protocol + self.host = host + self.path = path + self.timeout = timeout + self.pick_host_name_from_backend_http_settings = pick_host_name_from_backend_http_settings + self.match = match + self.backend_address_pool = backend_address_pool + self.backend_http_settings = backend_http_settings + + +class ApplicationGatewayPathRule(SubResource): + """Path rule of URL path map of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param paths: Path rules of URL path map. + :type paths: list[str] + :param backend_address_pool: Backend address pool resource of URL path map + path rule. + :type backend_address_pool: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param backend_http_settings: Backend http settings resource of URL path + map path rule. + :type backend_http_settings: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param redirect_configuration: Redirect configuration resource of URL path + map path rule. + :type redirect_configuration: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param rewrite_rule_set: Rewrite rule set resource of URL path map path + rule. + :type rewrite_rule_set: ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar provisioning_state: The provisioning state of the path rule + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param firewall_policy: Reference to the FirewallPolicy resource. + :type firewall_policy: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param name: Name of the path rule that is unique within an Application + Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'paths': {'key': 'properties.paths', 'type': '[str]'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'backend_http_settings': {'key': 'properties.backendHttpSettings', 'type': 'SubResource'}, + 'redirect_configuration': {'key': 'properties.redirectConfiguration', 'type': 'SubResource'}, + 'rewrite_rule_set': {'key': 'properties.rewriteRuleSet', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'firewall_policy': {'key': 'properties.firewallPolicy', 'type': 'SubResource'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, paths=None, backend_address_pool=None, backend_http_settings=None, redirect_configuration=None, rewrite_rule_set=None, firewall_policy=None, name: str=None, **kwargs) -> None: + super(ApplicationGatewayPathRule, self).__init__(id=id, **kwargs) + self.paths = paths + self.backend_address_pool = backend_address_pool + self.backend_http_settings = backend_http_settings + self.redirect_configuration = redirect_configuration + self.rewrite_rule_set = rewrite_rule_set + self.provisioning_state = None + self.firewall_policy = firewall_policy + self.name = name + self.etag = None + self.type = None + + +class ApplicationGatewayProbe(SubResource): + """Probe of the application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param protocol: The protocol used for the probe. Possible values include: + 'Http', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayProtocol + :param host: Host name to send the probe to. + :type host: str + :param path: Relative path of probe. Valid path starts from '/'. Probe is + sent to ://:. + :type path: str + :param interval: The probing interval in seconds. This is the time + interval between two consecutive probes. Acceptable values are from 1 + second to 86400 seconds. + :type interval: int + :param timeout: The probe timeout in seconds. Probe marked as failed if + valid response is not received with this timeout period. Acceptable values + are from 1 second to 86400 seconds. + :type timeout: int + :param unhealthy_threshold: The probe retry count. Backend server is + marked down after consecutive probe failure count reaches + UnhealthyThreshold. Acceptable values are from 1 second to 20. + :type unhealthy_threshold: int + :param pick_host_name_from_backend_http_settings: Whether the host header + should be picked from the backend http settings. Default value is false. + :type pick_host_name_from_backend_http_settings: bool + :param min_servers: Minimum number of servers that are always marked + healthy. Default value is 0. + :type min_servers: int + :param match: Criterion for classifying a healthy probe response. + :type match: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayProbeHealthResponseMatch + :ivar provisioning_state: The provisioning state of the probe resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param port: Custom port which will be used for probing the backend + servers. The valid value ranges from 1 to 65535. In case not set, port + from http settings will be used. This property is valid for Standard_v2 + and WAF_v2 only. + :type port: int + :param name: Name of the probe that is unique within an Application + Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'port': {'maximum': 65535, 'minimum': 1}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'host': {'key': 'properties.host', 'type': 'str'}, + 'path': {'key': 'properties.path', 'type': 'str'}, + 'interval': {'key': 'properties.interval', 'type': 'int'}, + 'timeout': {'key': 'properties.timeout', 'type': 'int'}, + 'unhealthy_threshold': {'key': 'properties.unhealthyThreshold', 'type': 'int'}, + 'pick_host_name_from_backend_http_settings': {'key': 'properties.pickHostNameFromBackendHttpSettings', 'type': 'bool'}, + 'min_servers': {'key': 'properties.minServers', 'type': 'int'}, + 'match': {'key': 'properties.match', 'type': 'ApplicationGatewayProbeHealthResponseMatch'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, protocol=None, host: str=None, path: str=None, interval: int=None, timeout: int=None, unhealthy_threshold: int=None, pick_host_name_from_backend_http_settings: bool=None, min_servers: int=None, match=None, port: int=None, name: str=None, **kwargs) -> None: + super(ApplicationGatewayProbe, self).__init__(id=id, **kwargs) + self.protocol = protocol + self.host = host + self.path = path + self.interval = interval + self.timeout = timeout + self.unhealthy_threshold = unhealthy_threshold + self.pick_host_name_from_backend_http_settings = pick_host_name_from_backend_http_settings + self.min_servers = min_servers + self.match = match + self.provisioning_state = None + self.port = port + self.name = name + self.etag = None + self.type = None + + +class ApplicationGatewayProbeHealthResponseMatch(Model): + """Application gateway probe health response match. + + :param body: Body that must be contained in the health response. Default + value is empty. + :type body: str + :param status_codes: Allowed ranges of healthy status codes. Default range + of healthy status codes is 200-399. + :type status_codes: list[str] + """ + + _attribute_map = { + 'body': {'key': 'body', 'type': 'str'}, + 'status_codes': {'key': 'statusCodes', 'type': '[str]'}, + } + + def __init__(self, *, body: str=None, status_codes=None, **kwargs) -> None: + super(ApplicationGatewayProbeHealthResponseMatch, self).__init__(**kwargs) + self.body = body + self.status_codes = status_codes + + +class ApplicationGatewayRedirectConfiguration(SubResource): + """Redirect configuration of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param redirect_type: HTTP redirection type. Possible values include: + 'Permanent', 'Found', 'SeeOther', 'Temporary' + :type redirect_type: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayRedirectType + :param target_listener: Reference to a listener to redirect the request + to. + :type target_listener: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param target_url: Url to redirect the request to. + :type target_url: str + :param include_path: Include path in the redirected url. + :type include_path: bool + :param include_query_string: Include query string in the redirected url. + :type include_query_string: bool + :param request_routing_rules: Request routing specifying redirect + configuration. + :type request_routing_rules: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param url_path_maps: Url path maps specifying default redirect + configuration. + :type url_path_maps: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param path_rules: Path rules specifying redirect configuration. + :type path_rules: list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param name: Name of the redirect configuration that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'redirect_type': {'key': 'properties.redirectType', 'type': 'str'}, + 'target_listener': {'key': 'properties.targetListener', 'type': 'SubResource'}, + 'target_url': {'key': 'properties.targetUrl', 'type': 'str'}, + 'include_path': {'key': 'properties.includePath', 'type': 'bool'}, + 'include_query_string': {'key': 'properties.includeQueryString', 'type': 'bool'}, + 'request_routing_rules': {'key': 'properties.requestRoutingRules', 'type': '[SubResource]'}, + 'url_path_maps': {'key': 'properties.urlPathMaps', 'type': '[SubResource]'}, + 'path_rules': {'key': 'properties.pathRules', 'type': '[SubResource]'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, redirect_type=None, target_listener=None, target_url: str=None, include_path: bool=None, include_query_string: bool=None, request_routing_rules=None, url_path_maps=None, path_rules=None, name: str=None, **kwargs) -> None: + super(ApplicationGatewayRedirectConfiguration, self).__init__(id=id, **kwargs) + self.redirect_type = redirect_type + self.target_listener = target_listener + self.target_url = target_url + self.include_path = include_path + self.include_query_string = include_query_string + self.request_routing_rules = request_routing_rules + self.url_path_maps = url_path_maps + self.path_rules = path_rules + self.name = name + self.etag = None + self.type = None + + +class ApplicationGatewayRequestRoutingRule(SubResource): + """Request routing rule of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param rule_type: Rule type. Possible values include: 'Basic', + 'PathBasedRouting' + :type rule_type: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayRequestRoutingRuleType + :param priority: Priority of the request routing rule. + :type priority: int + :param backend_address_pool: Backend address pool resource of the + application gateway. + :type backend_address_pool: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param backend_http_settings: Backend http settings resource of the + application gateway. + :type backend_http_settings: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param http_listener: Http listener resource of the application gateway. + :type http_listener: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param url_path_map: URL path map resource of the application gateway. + :type url_path_map: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param rewrite_rule_set: Rewrite Rule Set resource in Basic rule of the + application gateway. + :type rewrite_rule_set: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param redirect_configuration: Redirect configuration resource of the + application gateway. + :type redirect_configuration: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar provisioning_state: The provisioning state of the request routing + rule resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the request routing rule that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'priority': {'maximum': 20000, 'minimum': 1}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'rule_type': {'key': 'properties.ruleType', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'backend_http_settings': {'key': 'properties.backendHttpSettings', 'type': 'SubResource'}, + 'http_listener': {'key': 'properties.httpListener', 'type': 'SubResource'}, + 'url_path_map': {'key': 'properties.urlPathMap', 'type': 'SubResource'}, + 'rewrite_rule_set': {'key': 'properties.rewriteRuleSet', 'type': 'SubResource'}, + 'redirect_configuration': {'key': 'properties.redirectConfiguration', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, rule_type=None, priority: int=None, backend_address_pool=None, backend_http_settings=None, http_listener=None, url_path_map=None, rewrite_rule_set=None, redirect_configuration=None, name: str=None, **kwargs) -> None: + super(ApplicationGatewayRequestRoutingRule, self).__init__(id=id, **kwargs) + self.rule_type = rule_type + self.priority = priority + self.backend_address_pool = backend_address_pool + self.backend_http_settings = backend_http_settings + self.http_listener = http_listener + self.url_path_map = url_path_map + self.rewrite_rule_set = rewrite_rule_set + self.redirect_configuration = redirect_configuration + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class ApplicationGatewayRewriteRule(Model): + """Rewrite rule of an application gateway. + + :param name: Name of the rewrite rule that is unique within an Application + Gateway. + :type name: str + :param rule_sequence: Rule Sequence of the rewrite rule that determines + the order of execution of a particular rule in a RewriteRuleSet. + :type rule_sequence: int + :param conditions: Conditions based on which the action set execution will + be evaluated. + :type conditions: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayRewriteRuleCondition] + :param action_set: Set of actions to be done as part of the rewrite Rule. + :type action_set: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayRewriteRuleActionSet + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'rule_sequence': {'key': 'ruleSequence', 'type': 'int'}, + 'conditions': {'key': 'conditions', 'type': '[ApplicationGatewayRewriteRuleCondition]'}, + 'action_set': {'key': 'actionSet', 'type': 'ApplicationGatewayRewriteRuleActionSet'}, + } + + def __init__(self, *, name: str=None, rule_sequence: int=None, conditions=None, action_set=None, **kwargs) -> None: + super(ApplicationGatewayRewriteRule, self).__init__(**kwargs) + self.name = name + self.rule_sequence = rule_sequence + self.conditions = conditions + self.action_set = action_set + + +class ApplicationGatewayRewriteRuleActionSet(Model): + """Set of actions in the Rewrite Rule in Application Gateway. + + :param request_header_configurations: Request Header Actions in the Action + Set. + :type request_header_configurations: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayHeaderConfiguration] + :param response_header_configurations: Response Header Actions in the + Action Set. + :type response_header_configurations: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayHeaderConfiguration] + """ + + _attribute_map = { + 'request_header_configurations': {'key': 'requestHeaderConfigurations', 'type': '[ApplicationGatewayHeaderConfiguration]'}, + 'response_header_configurations': {'key': 'responseHeaderConfigurations', 'type': '[ApplicationGatewayHeaderConfiguration]'}, + } + + def __init__(self, *, request_header_configurations=None, response_header_configurations=None, **kwargs) -> None: + super(ApplicationGatewayRewriteRuleActionSet, self).__init__(**kwargs) + self.request_header_configurations = request_header_configurations + self.response_header_configurations = response_header_configurations + + +class ApplicationGatewayRewriteRuleCondition(Model): + """Set of conditions in the Rewrite Rule in Application Gateway. + + :param variable: The condition parameter of the RewriteRuleCondition. + :type variable: str + :param pattern: The pattern, either fixed string or regular expression, + that evaluates the truthfulness of the condition. + :type pattern: str + :param ignore_case: Setting this paramter to truth value with force the + pattern to do a case in-sensitive comparison. + :type ignore_case: bool + :param negate: Setting this value as truth will force to check the + negation of the condition given by the user. + :type negate: bool + """ + + _attribute_map = { + 'variable': {'key': 'variable', 'type': 'str'}, + 'pattern': {'key': 'pattern', 'type': 'str'}, + 'ignore_case': {'key': 'ignoreCase', 'type': 'bool'}, + 'negate': {'key': 'negate', 'type': 'bool'}, + } + + def __init__(self, *, variable: str=None, pattern: str=None, ignore_case: bool=None, negate: bool=None, **kwargs) -> None: + super(ApplicationGatewayRewriteRuleCondition, self).__init__(**kwargs) + self.variable = variable + self.pattern = pattern + self.ignore_case = ignore_case + self.negate = negate + + +class ApplicationGatewayRewriteRuleSet(SubResource): + """Rewrite rule set of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param rewrite_rules: Rewrite rules in the rewrite rule set. + :type rewrite_rules: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayRewriteRule] + :ivar provisioning_state: The provisioning state of the rewrite rule set + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the rewrite rule set that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'rewrite_rules': {'key': 'properties.rewriteRules', 'type': '[ApplicationGatewayRewriteRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, rewrite_rules=None, name: str=None, **kwargs) -> None: + super(ApplicationGatewayRewriteRuleSet, self).__init__(id=id, **kwargs) + self.rewrite_rules = rewrite_rules + self.provisioning_state = None + self.name = name + self.etag = None + + +class ApplicationGatewaySku(Model): + """SKU of an application gateway. + + :param name: Name of an application gateway SKU. Possible values include: + 'Standard_Small', 'Standard_Medium', 'Standard_Large', 'WAF_Medium', + 'WAF_Large', 'Standard_v2', 'WAF_v2' + :type name: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySkuName + :param tier: Tier of an application gateway. Possible values include: + 'Standard', 'WAF', 'Standard_v2', 'WAF_v2' + :type tier: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayTier + :param capacity: Capacity (instance count) of an application gateway. + :type capacity: int + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'int'}, + } + + def __init__(self, *, name=None, tier=None, capacity: int=None, **kwargs) -> None: + super(ApplicationGatewaySku, self).__init__(**kwargs) + self.name = name + self.tier = tier + self.capacity = capacity + + +class ApplicationGatewaySslCertificate(SubResource): + """SSL certificates of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param data: Base-64 encoded pfx certificate. Only applicable in PUT + Request. + :type data: str + :param password: Password for the pfx file specified in data. Only + applicable in PUT request. + :type password: str + :ivar public_cert_data: Base-64 encoded Public cert data corresponding to + pfx specified in data. Only applicable in GET request. + :vartype public_cert_data: str + :param key_vault_secret_id: Secret Id of (base-64 encoded unencrypted pfx) + 'Secret' or 'Certificate' object stored in KeyVault. + :type key_vault_secret_id: str + :ivar provisioning_state: The provisioning state of the SSL certificate + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the SSL certificate that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'public_cert_data': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'data': {'key': 'properties.data', 'type': 'str'}, + 'password': {'key': 'properties.password', 'type': 'str'}, + 'public_cert_data': {'key': 'properties.publicCertData', 'type': 'str'}, + 'key_vault_secret_id': {'key': 'properties.keyVaultSecretId', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, data: str=None, password: str=None, key_vault_secret_id: str=None, name: str=None, **kwargs) -> None: + super(ApplicationGatewaySslCertificate, self).__init__(id=id, **kwargs) + self.data = data + self.password = password + self.public_cert_data = None + self.key_vault_secret_id = key_vault_secret_id + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class ApplicationGatewaySslPolicy(Model): + """Application Gateway Ssl policy. + + :param disabled_ssl_protocols: Ssl protocols to be disabled on application + gateway. + :type disabled_ssl_protocols: list[str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslProtocol] + :param policy_type: Type of Ssl Policy. Possible values include: + 'Predefined', 'Custom' + :type policy_type: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslPolicyType + :param policy_name: Name of Ssl predefined policy. Possible values + include: 'AppGwSslPolicy20150501', 'AppGwSslPolicy20170401', + 'AppGwSslPolicy20170401S' + :type policy_name: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslPolicyName + :param cipher_suites: Ssl cipher suites to be enabled in the specified + order to application gateway. + :type cipher_suites: list[str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslCipherSuite] + :param min_protocol_version: Minimum version of Ssl protocol to be + supported on application gateway. Possible values include: 'TLSv1_0', + 'TLSv1_1', 'TLSv1_2' + :type min_protocol_version: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslProtocol + """ + + _attribute_map = { + 'disabled_ssl_protocols': {'key': 'disabledSslProtocols', 'type': '[str]'}, + 'policy_type': {'key': 'policyType', 'type': 'str'}, + 'policy_name': {'key': 'policyName', 'type': 'str'}, + 'cipher_suites': {'key': 'cipherSuites', 'type': '[str]'}, + 'min_protocol_version': {'key': 'minProtocolVersion', 'type': 'str'}, + } + + def __init__(self, *, disabled_ssl_protocols=None, policy_type=None, policy_name=None, cipher_suites=None, min_protocol_version=None, **kwargs) -> None: + super(ApplicationGatewaySslPolicy, self).__init__(**kwargs) + self.disabled_ssl_protocols = disabled_ssl_protocols + self.policy_type = policy_type + self.policy_name = policy_name + self.cipher_suites = cipher_suites + self.min_protocol_version = min_protocol_version + + +class ApplicationGatewaySslPredefinedPolicy(SubResource): + """An Ssl predefined policy. + + :param id: Resource ID. + :type id: str + :param name: Name of the Ssl predefined policy. + :type name: str + :param cipher_suites: Ssl cipher suites to be enabled in the specified + order for application gateway. + :type cipher_suites: list[str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslCipherSuite] + :param min_protocol_version: Minimum version of Ssl protocol to be + supported on application gateway. Possible values include: 'TLSv1_0', + 'TLSv1_1', 'TLSv1_2' + :type min_protocol_version: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslProtocol + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'cipher_suites': {'key': 'properties.cipherSuites', 'type': '[str]'}, + 'min_protocol_version': {'key': 'properties.minProtocolVersion', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, name: str=None, cipher_suites=None, min_protocol_version=None, **kwargs) -> None: + super(ApplicationGatewaySslPredefinedPolicy, self).__init__(id=id, **kwargs) + self.name = name + self.cipher_suites = cipher_suites + self.min_protocol_version = min_protocol_version + + +class ApplicationGatewayTrustedRootCertificate(SubResource): + """Trusted Root certificates of an application gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param data: Certificate public data. + :type data: str + :param key_vault_secret_id: Secret Id of (base-64 encoded unencrypted pfx) + 'Secret' or 'Certificate' object stored in KeyVault. + :type key_vault_secret_id: str + :ivar provisioning_state: The provisioning state of the trusted root + certificate resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the trusted root certificate that is unique within an + Application Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'data': {'key': 'properties.data', 'type': 'str'}, + 'key_vault_secret_id': {'key': 'properties.keyVaultSecretId', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, data: str=None, key_vault_secret_id: str=None, name: str=None, **kwargs) -> None: + super(ApplicationGatewayTrustedRootCertificate, self).__init__(id=id, **kwargs) + self.data = data + self.key_vault_secret_id = key_vault_secret_id + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class ApplicationGatewayUrlPathMap(SubResource): + """UrlPathMaps give a url path to the backend mapping information for + PathBasedRouting. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param default_backend_address_pool: Default backend address pool resource + of URL path map. + :type default_backend_address_pool: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param default_backend_http_settings: Default backend http settings + resource of URL path map. + :type default_backend_http_settings: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param default_rewrite_rule_set: Default Rewrite rule set resource of URL + path map. + :type default_rewrite_rule_set: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param default_redirect_configuration: Default redirect configuration + resource of URL path map. + :type default_redirect_configuration: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param path_rules: Path rule of URL path map resource. + :type path_rules: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayPathRule] + :ivar provisioning_state: The provisioning state of the URL path map + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the URL path map that is unique within an Application + Gateway. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'default_backend_address_pool': {'key': 'properties.defaultBackendAddressPool', 'type': 'SubResource'}, + 'default_backend_http_settings': {'key': 'properties.defaultBackendHttpSettings', 'type': 'SubResource'}, + 'default_rewrite_rule_set': {'key': 'properties.defaultRewriteRuleSet', 'type': 'SubResource'}, + 'default_redirect_configuration': {'key': 'properties.defaultRedirectConfiguration', 'type': 'SubResource'}, + 'path_rules': {'key': 'properties.pathRules', 'type': '[ApplicationGatewayPathRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, default_backend_address_pool=None, default_backend_http_settings=None, default_rewrite_rule_set=None, default_redirect_configuration=None, path_rules=None, name: str=None, **kwargs) -> None: + super(ApplicationGatewayUrlPathMap, self).__init__(id=id, **kwargs) + self.default_backend_address_pool = default_backend_address_pool + self.default_backend_http_settings = default_backend_http_settings + self.default_rewrite_rule_set = default_rewrite_rule_set + self.default_redirect_configuration = default_redirect_configuration + self.path_rules = path_rules + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class ApplicationGatewayWebApplicationFirewallConfiguration(Model): + """Application gateway web application firewall configuration. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Whether the web application firewall is enabled + or not. + :type enabled: bool + :param firewall_mode: Required. Web application firewall mode. Possible + values include: 'Detection', 'Prevention' + :type firewall_mode: str or + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayFirewallMode + :param rule_set_type: Required. The type of the web application firewall + rule set. Possible values are: 'OWASP'. + :type rule_set_type: str + :param rule_set_version: Required. The version of the rule set type. + :type rule_set_version: str + :param disabled_rule_groups: The disabled rule groups. + :type disabled_rule_groups: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayFirewallDisabledRuleGroup] + :param request_body_check: Whether allow WAF to check request Body. + :type request_body_check: bool + :param max_request_body_size: Maximum request body size for WAF. + :type max_request_body_size: int + :param max_request_body_size_in_kb: Maximum request body size in Kb for + WAF. + :type max_request_body_size_in_kb: int + :param file_upload_limit_in_mb: Maximum file upload size in Mb for WAF. + :type file_upload_limit_in_mb: int + :param exclusions: The exclusion list. + :type exclusions: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayFirewallExclusion] + """ + + _validation = { + 'enabled': {'required': True}, + 'firewall_mode': {'required': True}, + 'rule_set_type': {'required': True}, + 'rule_set_version': {'required': True}, + 'max_request_body_size': {'maximum': 128, 'minimum': 8}, + 'max_request_body_size_in_kb': {'maximum': 128, 'minimum': 8}, + 'file_upload_limit_in_mb': {'minimum': 0}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'firewall_mode': {'key': 'firewallMode', 'type': 'str'}, + 'rule_set_type': {'key': 'ruleSetType', 'type': 'str'}, + 'rule_set_version': {'key': 'ruleSetVersion', 'type': 'str'}, + 'disabled_rule_groups': {'key': 'disabledRuleGroups', 'type': '[ApplicationGatewayFirewallDisabledRuleGroup]'}, + 'request_body_check': {'key': 'requestBodyCheck', 'type': 'bool'}, + 'max_request_body_size': {'key': 'maxRequestBodySize', 'type': 'int'}, + 'max_request_body_size_in_kb': {'key': 'maxRequestBodySizeInKb', 'type': 'int'}, + 'file_upload_limit_in_mb': {'key': 'fileUploadLimitInMb', 'type': 'int'}, + 'exclusions': {'key': 'exclusions', 'type': '[ApplicationGatewayFirewallExclusion]'}, + } + + def __init__(self, *, enabled: bool, firewall_mode, rule_set_type: str, rule_set_version: str, disabled_rule_groups=None, request_body_check: bool=None, max_request_body_size: int=None, max_request_body_size_in_kb: int=None, file_upload_limit_in_mb: int=None, exclusions=None, **kwargs) -> None: + super(ApplicationGatewayWebApplicationFirewallConfiguration, self).__init__(**kwargs) + self.enabled = enabled + self.firewall_mode = firewall_mode + self.rule_set_type = rule_set_type + self.rule_set_version = rule_set_version + self.disabled_rule_groups = disabled_rule_groups + self.request_body_check = request_body_check + self.max_request_body_size = max_request_body_size + self.max_request_body_size_in_kb = max_request_body_size_in_kb + self.file_upload_limit_in_mb = file_upload_limit_in_mb + self.exclusions = exclusions + + +class FirewallPolicyRuleCondition(Model): + """Properties of a rule. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: ApplicationRuleCondition, NetworkRuleCondition + + All required parameters must be populated in order to send to Azure. + + :param name: Name of the rule condition. + :type name: str + :param description: Description of the rule condition. + :type description: str + :param rule_condition_type: Required. Constant filled by server. + :type rule_condition_type: str + """ + + _validation = { + 'rule_condition_type': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'rule_condition_type': {'key': 'ruleConditionType', 'type': 'str'}, + } + + _subtype_map = { + 'rule_condition_type': {'ApplicationRuleCondition': 'ApplicationRuleCondition', 'NetworkRuleCondition': 'NetworkRuleCondition'} + } + + def __init__(self, *, name: str=None, description: str=None, **kwargs) -> None: + super(FirewallPolicyRuleCondition, self).__init__(**kwargs) + self.name = name + self.description = description + self.rule_condition_type = None + + +class ApplicationRuleCondition(FirewallPolicyRuleCondition): + """Rule condition of type application. + + All required parameters must be populated in order to send to Azure. + + :param name: Name of the rule condition. + :type name: str + :param description: Description of the rule condition. + :type description: str + :param rule_condition_type: Required. Constant filled by server. + :type rule_condition_type: str + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param destination_addresses: List of destination IP addresses or Service + Tags. + :type destination_addresses: list[str] + :param protocols: Array of Application Protocols. + :type protocols: + list[~azure.mgmt.network.v2019_09_01.models.FirewallPolicyRuleConditionApplicationProtocol] + :param target_fqdns: List of FQDNs for this rule condition. + :type target_fqdns: list[str] + :param fqdn_tags: List of FQDN Tags for this rule condition. + :type fqdn_tags: list[str] + """ + + _validation = { + 'rule_condition_type': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'rule_condition_type': {'key': 'ruleConditionType', 'type': 'str'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'destination_addresses': {'key': 'destinationAddresses', 'type': '[str]'}, + 'protocols': {'key': 'protocols', 'type': '[FirewallPolicyRuleConditionApplicationProtocol]'}, + 'target_fqdns': {'key': 'targetFqdns', 'type': '[str]'}, + 'fqdn_tags': {'key': 'fqdnTags', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, description: str=None, source_addresses=None, destination_addresses=None, protocols=None, target_fqdns=None, fqdn_tags=None, **kwargs) -> None: + super(ApplicationRuleCondition, self).__init__(name=name, description=description, **kwargs) + self.source_addresses = source_addresses + self.destination_addresses = destination_addresses + self.protocols = protocols + self.target_fqdns = target_fqdns + self.fqdn_tags = fqdn_tags + self.rule_condition_type = 'ApplicationRuleCondition' + + +class ApplicationSecurityGroup(Resource): + """An application security group in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar resource_guid: The resource GUID property of the application + security group resource. It uniquely identifies a resource, even if the + user changes its name or migrate the resource across subscriptions or + resource groups. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the application + security group resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, **kwargs) -> None: + super(ApplicationSecurityGroup, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.resource_guid = None + self.provisioning_state = None + self.etag = None + + +class AutoApprovedPrivateLinkService(Model): + """The information of an AutoApprovedPrivateLinkService. + + :param private_link_service: The id of the private link service resource. + :type private_link_service: str + """ + + _attribute_map = { + 'private_link_service': {'key': 'privateLinkService', 'type': 'str'}, + } + + def __init__(self, *, private_link_service: str=None, **kwargs) -> None: + super(AutoApprovedPrivateLinkService, self).__init__(**kwargs) + self.private_link_service = private_link_service + + +class Availability(Model): + """Availability of the metric. + + :param time_grain: The time grain of the availability. + :type time_grain: str + :param retention: The retention of the availability. + :type retention: str + :param blob_duration: Duration of the availability blob. + :type blob_duration: str + """ + + _attribute_map = { + 'time_grain': {'key': 'timeGrain', 'type': 'str'}, + 'retention': {'key': 'retention', 'type': 'str'}, + 'blob_duration': {'key': 'blobDuration', 'type': 'str'}, + } + + def __init__(self, *, time_grain: str=None, retention: str=None, blob_duration: str=None, **kwargs) -> None: + super(Availability, self).__init__(**kwargs) + self.time_grain = time_grain + self.retention = retention + self.blob_duration = blob_duration + + +class AvailableDelegation(Model): + """The serviceName of an AvailableDelegation indicates a possible delegation + for a subnet. + + :param name: The name of the AvailableDelegation resource. + :type name: str + :param id: A unique identifier of the AvailableDelegation resource. + :type id: str + :param type: Resource type. + :type type: str + :param service_name: The name of the service and resource. + :type service_name: str + :param actions: Describes the actions permitted to the service upon + delegation. + :type actions: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'service_name': {'key': 'serviceName', 'type': 'str'}, + 'actions': {'key': 'actions', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, id: str=None, type: str=None, service_name: str=None, actions=None, **kwargs) -> None: + super(AvailableDelegation, self).__init__(**kwargs) + self.name = name + self.id = id + self.type = type + self.service_name = service_name + self.actions = actions + + +class AvailablePrivateEndpointType(Model): + """The information of an AvailablePrivateEndpointType. + + :param name: The name of the service and resource. + :type name: str + :param id: A unique identifier of the AvailablePrivateEndpoint Type + resource. + :type id: str + :param type: Resource type. + :type type: str + :param resource_name: The name of the service and resource. + :type resource_name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'resource_name': {'key': 'resourceName', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, id: str=None, type: str=None, resource_name: str=None, **kwargs) -> None: + super(AvailablePrivateEndpointType, self).__init__(**kwargs) + self.name = name + self.id = id + self.type = type + self.resource_name = resource_name + + +class AvailableProvidersList(Model): + """List of available countries with details. + + All required parameters must be populated in order to send to Azure. + + :param countries: Required. List of available countries. + :type countries: + list[~azure.mgmt.network.v2019_09_01.models.AvailableProvidersListCountry] + """ + + _validation = { + 'countries': {'required': True}, + } + + _attribute_map = { + 'countries': {'key': 'countries', 'type': '[AvailableProvidersListCountry]'}, + } + + def __init__(self, *, countries, **kwargs) -> None: + super(AvailableProvidersList, self).__init__(**kwargs) + self.countries = countries + + +class AvailableProvidersListCity(Model): + """City or town details. + + :param city_name: The city or town name. + :type city_name: str + :param providers: A list of Internet service providers. + :type providers: list[str] + """ + + _attribute_map = { + 'city_name': {'key': 'cityName', 'type': 'str'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + } + + def __init__(self, *, city_name: str=None, providers=None, **kwargs) -> None: + super(AvailableProvidersListCity, self).__init__(**kwargs) + self.city_name = city_name + self.providers = providers + + +class AvailableProvidersListCountry(Model): + """Country details. + + :param country_name: The country name. + :type country_name: str + :param providers: A list of Internet service providers. + :type providers: list[str] + :param states: List of available states in the country. + :type states: + list[~azure.mgmt.network.v2019_09_01.models.AvailableProvidersListState] + """ + + _attribute_map = { + 'country_name': {'key': 'countryName', 'type': 'str'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + 'states': {'key': 'states', 'type': '[AvailableProvidersListState]'}, + } + + def __init__(self, *, country_name: str=None, providers=None, states=None, **kwargs) -> None: + super(AvailableProvidersListCountry, self).__init__(**kwargs) + self.country_name = country_name + self.providers = providers + self.states = states + + +class AvailableProvidersListParameters(Model): + """Constraints that determine the list of available Internet service + providers. + + :param azure_locations: A list of Azure regions. + :type azure_locations: list[str] + :param country: The country for available providers list. + :type country: str + :param state: The state for available providers list. + :type state: str + :param city: The city or town for available providers list. + :type city: str + """ + + _attribute_map = { + 'azure_locations': {'key': 'azureLocations', 'type': '[str]'}, + 'country': {'key': 'country', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'city': {'key': 'city', 'type': 'str'}, + } + + def __init__(self, *, azure_locations=None, country: str=None, state: str=None, city: str=None, **kwargs) -> None: + super(AvailableProvidersListParameters, self).__init__(**kwargs) + self.azure_locations = azure_locations + self.country = country + self.state = state + self.city = city + + +class AvailableProvidersListState(Model): + """State details. + + :param state_name: The state name. + :type state_name: str + :param providers: A list of Internet service providers. + :type providers: list[str] + :param cities: List of available cities or towns in the state. + :type cities: + list[~azure.mgmt.network.v2019_09_01.models.AvailableProvidersListCity] + """ + + _attribute_map = { + 'state_name': {'key': 'stateName', 'type': 'str'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + 'cities': {'key': 'cities', 'type': '[AvailableProvidersListCity]'}, + } + + def __init__(self, *, state_name: str=None, providers=None, cities=None, **kwargs) -> None: + super(AvailableProvidersListState, self).__init__(**kwargs) + self.state_name = state_name + self.providers = providers + self.cities = cities + + +class AvailableServiceAlias(Model): + """The available service alias. + + :param name: The name of the service alias. + :type name: str + :param id: The ID of the service alias. + :type id: str + :param type: The type of the resource. + :type type: str + :param resource_name: The resource name of the service alias. + :type resource_name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'resource_name': {'key': 'resourceName', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, id: str=None, type: str=None, resource_name: str=None, **kwargs) -> None: + super(AvailableServiceAlias, self).__init__(**kwargs) + self.name = name + self.id = id + self.type = type + self.resource_name = resource_name + + +class AzureAsyncOperationResult(Model): + """The response body contains the status of the specified asynchronous + operation, indicating whether it has succeeded, is in progress, or has + failed. Note that this status is distinct from the HTTP status code + returned for the Get Operation Status operation itself. If the asynchronous + operation succeeded, the response body includes the HTTP status code for + the successful request. If the asynchronous operation failed, the response + body includes the HTTP status code for the failed request and error + information regarding the failure. + + :param status: Status of the Azure async operation. Possible values + include: 'InProgress', 'Succeeded', 'Failed' + :type status: str or + ~azure.mgmt.network.v2019_09_01.models.NetworkOperationStatus + :param error: Details of the error occurred during specified asynchronous + operation. + :type error: ~azure.mgmt.network.v2019_09_01.models.Error + """ + + _attribute_map = { + 'status': {'key': 'status', 'type': 'str'}, + 'error': {'key': 'error', 'type': 'Error'}, + } + + def __init__(self, *, status=None, error=None, **kwargs) -> None: + super(AzureAsyncOperationResult, self).__init__(**kwargs) + self.status = status + self.error = error + + +class AzureFirewall(Resource): + """Azure Firewall resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param application_rule_collections: Collection of application rule + collections used by Azure Firewall. + :type application_rule_collections: + list[~azure.mgmt.network.v2019_09_01.models.AzureFirewallApplicationRuleCollection] + :param nat_rule_collections: Collection of NAT rule collections used by + Azure Firewall. + :type nat_rule_collections: + list[~azure.mgmt.network.v2019_09_01.models.AzureFirewallNatRuleCollection] + :param network_rule_collections: Collection of network rule collections + used by Azure Firewall. + :type network_rule_collections: + list[~azure.mgmt.network.v2019_09_01.models.AzureFirewallNetworkRuleCollection] + :param ip_configurations: IP configuration of the Azure Firewall resource. + :type ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.AzureFirewallIPConfiguration] + :ivar provisioning_state: The provisioning state of the Azure firewall + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param threat_intel_mode: The operation mode for Threat Intelligence. + Possible values include: 'Alert', 'Deny', 'Off' + :type threat_intel_mode: str or + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallThreatIntelMode + :param virtual_hub: The virtualHub to which the firewall belongs. + :type virtual_hub: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param firewall_policy: The firewallPolicy associated with this azure + firewall. + :type firewall_policy: ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar hub_ip_addresses: IP addresses associated with AzureFirewall. + :vartype hub_ip_addresses: + ~azure.mgmt.network.v2019_09_01.models.HubIPAddresses + :param sku: The Azure Firewall Resource SKU. + :type sku: ~azure.mgmt.network.v2019_09_01.models.AzureFirewallSku + :param additional_properties: The additional properties used to further + config this azure firewall + :type additional_properties: dict[str, str] + :param zones: A list of availability zones denoting where the resource + needs to come from. + :type zones: list[str] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'hub_ip_addresses': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'application_rule_collections': {'key': 'properties.applicationRuleCollections', 'type': '[AzureFirewallApplicationRuleCollection]'}, + 'nat_rule_collections': {'key': 'properties.natRuleCollections', 'type': '[AzureFirewallNatRuleCollection]'}, + 'network_rule_collections': {'key': 'properties.networkRuleCollections', 'type': '[AzureFirewallNetworkRuleCollection]'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[AzureFirewallIPConfiguration]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'threat_intel_mode': {'key': 'properties.threatIntelMode', 'type': 'str'}, + 'virtual_hub': {'key': 'properties.virtualHub', 'type': 'SubResource'}, + 'firewall_policy': {'key': 'properties.firewallPolicy', 'type': 'SubResource'}, + 'hub_ip_addresses': {'key': 'properties.hubIpAddresses', 'type': 'HubIPAddresses'}, + 'sku': {'key': 'properties.sku', 'type': 'AzureFirewallSku'}, + 'additional_properties': {'key': 'properties.additionalProperties', 'type': '{str}'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, application_rule_collections=None, nat_rule_collections=None, network_rule_collections=None, ip_configurations=None, threat_intel_mode=None, virtual_hub=None, firewall_policy=None, sku=None, additional_properties=None, zones=None, **kwargs) -> None: + super(AzureFirewall, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.application_rule_collections = application_rule_collections + self.nat_rule_collections = nat_rule_collections + self.network_rule_collections = network_rule_collections + self.ip_configurations = ip_configurations + self.provisioning_state = None + self.threat_intel_mode = threat_intel_mode + self.virtual_hub = virtual_hub + self.firewall_policy = firewall_policy + self.hub_ip_addresses = None + self.sku = sku + self.additional_properties = additional_properties + self.zones = zones + self.etag = None + + +class AzureFirewallApplicationRule(Model): + """Properties of an application rule. + + :param name: Name of the application rule. + :type name: str + :param description: Description of the rule. + :type description: str + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param protocols: Array of ApplicationRuleProtocols. + :type protocols: + list[~azure.mgmt.network.v2019_09_01.models.AzureFirewallApplicationRuleProtocol] + :param target_fqdns: List of FQDNs for this rule. + :type target_fqdns: list[str] + :param fqdn_tags: List of FQDN Tags for this rule. + :type fqdn_tags: list[str] + :param source_ip_groups: List of source IpGroups for this rule. + :type source_ip_groups: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'protocols': {'key': 'protocols', 'type': '[AzureFirewallApplicationRuleProtocol]'}, + 'target_fqdns': {'key': 'targetFqdns', 'type': '[str]'}, + 'fqdn_tags': {'key': 'fqdnTags', 'type': '[str]'}, + 'source_ip_groups': {'key': 'sourceIpGroups', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, description: str=None, source_addresses=None, protocols=None, target_fqdns=None, fqdn_tags=None, source_ip_groups=None, **kwargs) -> None: + super(AzureFirewallApplicationRule, self).__init__(**kwargs) + self.name = name + self.description = description + self.source_addresses = source_addresses + self.protocols = protocols + self.target_fqdns = target_fqdns + self.fqdn_tags = fqdn_tags + self.source_ip_groups = source_ip_groups + + +class AzureFirewallApplicationRuleCollection(SubResource): + """Application rule collection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param priority: Priority of the application rule collection resource. + :type priority: int + :param action: The action type of a rule collection. + :type action: ~azure.mgmt.network.v2019_09_01.models.AzureFirewallRCAction + :param rules: Collection of rules used by a application rule collection. + :type rules: + list[~azure.mgmt.network.v2019_09_01.models.AzureFirewallApplicationRule] + :ivar provisioning_state: The provisioning state of the application rule + collection resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within the Azure + firewall. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'action': {'key': 'properties.action', 'type': 'AzureFirewallRCAction'}, + 'rules': {'key': 'properties.rules', 'type': '[AzureFirewallApplicationRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, priority: int=None, action=None, rules=None, name: str=None, **kwargs) -> None: + super(AzureFirewallApplicationRuleCollection, self).__init__(id=id, **kwargs) + self.priority = priority + self.action = action + self.rules = rules + self.provisioning_state = None + self.name = name + self.etag = None + + +class AzureFirewallApplicationRuleProtocol(Model): + """Properties of the application rule protocol. + + :param protocol_type: Protocol type. Possible values include: 'Http', + 'Https', 'Mssql' + :type protocol_type: str or + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallApplicationRuleProtocolType + :param port: Port number for the protocol, cannot be greater than 64000. + This field is optional. + :type port: int + """ + + _validation = { + 'port': {'maximum': 64000, 'minimum': 0}, + } + + _attribute_map = { + 'protocol_type': {'key': 'protocolType', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, *, protocol_type=None, port: int=None, **kwargs) -> None: + super(AzureFirewallApplicationRuleProtocol, self).__init__(**kwargs) + self.protocol_type = protocol_type + self.port = port + + +class AzureFirewallFqdnTag(Resource): + """Azure Firewall FQDN Tag Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar provisioning_state: The provisioning state of the Azure firewall + FQDN tag resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar fqdn_tag_name: The name of this FQDN Tag. + :vartype fqdn_tag_name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'fqdn_tag_name': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'fqdn_tag_name': {'key': 'properties.fqdnTagName', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, **kwargs) -> None: + super(AzureFirewallFqdnTag, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.provisioning_state = None + self.fqdn_tag_name = None + self.etag = None + + +class AzureFirewallIPConfiguration(SubResource): + """IP configuration of an Azure Firewall. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar private_ip_address: The Firewall Internal Load Balancer IP to be + used as the next hop in User Defined Routes. + :vartype private_ip_address: str + :param subnet: Reference of the subnet resource. This resource must be + named 'AzureFirewallSubnet'. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param public_ip_address: Reference of the PublicIP resource. This field + is a mandatory input if subnet is not null. + :type public_ip_address: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar provisioning_state: The provisioning state of the Azure firewall IP + configuration resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the resource that is unique within a resource group. + This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'private_ip_address': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, subnet=None, public_ip_address=None, name: str=None, **kwargs) -> None: + super(AzureFirewallIPConfiguration, self).__init__(id=id, **kwargs) + self.private_ip_address = None + self.subnet = subnet + self.public_ip_address = public_ip_address + self.provisioning_state = None + self.name = name + self.etag = None + + +class AzureFirewallNatRCAction(Model): + """AzureFirewall NAT Rule Collection Action. + + :param type: The type of action. Possible values include: 'Snat', 'Dnat' + :type type: str or + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallNatRCActionType + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, type=None, **kwargs) -> None: + super(AzureFirewallNatRCAction, self).__init__(**kwargs) + self.type = type + + +class AzureFirewallNatRule(Model): + """Properties of a NAT rule. + + :param name: Name of the NAT rule. + :type name: str + :param description: Description of the rule. + :type description: str + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param destination_addresses: List of destination IP addresses for this + rule. Supports IP ranges, prefixes, and service tags. + :type destination_addresses: list[str] + :param destination_ports: List of destination ports. + :type destination_ports: list[str] + :param protocols: Array of AzureFirewallNetworkRuleProtocols applicable to + this NAT rule. + :type protocols: list[str or + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallNetworkRuleProtocol] + :param translated_address: The translated address for this NAT rule. + :type translated_address: str + :param translated_port: The translated port for this NAT rule. + :type translated_port: str + :param translated_fqdn: The translated FQDN for this NAT rule. + :type translated_fqdn: str + :param source_ip_groups: List of source IpGroups for this rule. + :type source_ip_groups: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'destination_addresses': {'key': 'destinationAddresses', 'type': '[str]'}, + 'destination_ports': {'key': 'destinationPorts', 'type': '[str]'}, + 'protocols': {'key': 'protocols', 'type': '[str]'}, + 'translated_address': {'key': 'translatedAddress', 'type': 'str'}, + 'translated_port': {'key': 'translatedPort', 'type': 'str'}, + 'translated_fqdn': {'key': 'translatedFqdn', 'type': 'str'}, + 'source_ip_groups': {'key': 'sourceIpGroups', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, description: str=None, source_addresses=None, destination_addresses=None, destination_ports=None, protocols=None, translated_address: str=None, translated_port: str=None, translated_fqdn: str=None, source_ip_groups=None, **kwargs) -> None: + super(AzureFirewallNatRule, self).__init__(**kwargs) + self.name = name + self.description = description + self.source_addresses = source_addresses + self.destination_addresses = destination_addresses + self.destination_ports = destination_ports + self.protocols = protocols + self.translated_address = translated_address + self.translated_port = translated_port + self.translated_fqdn = translated_fqdn + self.source_ip_groups = source_ip_groups + + +class AzureFirewallNatRuleCollection(SubResource): + """NAT rule collection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param priority: Priority of the NAT rule collection resource. + :type priority: int + :param action: The action type of a NAT rule collection. + :type action: + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallNatRCAction + :param rules: Collection of rules used by a NAT rule collection. + :type rules: + list[~azure.mgmt.network.v2019_09_01.models.AzureFirewallNatRule] + :ivar provisioning_state: The provisioning state of the NAT rule + collection resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within the Azure + firewall. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'action': {'key': 'properties.action', 'type': 'AzureFirewallNatRCAction'}, + 'rules': {'key': 'properties.rules', 'type': '[AzureFirewallNatRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, priority: int=None, action=None, rules=None, name: str=None, **kwargs) -> None: + super(AzureFirewallNatRuleCollection, self).__init__(id=id, **kwargs) + self.priority = priority + self.action = action + self.rules = rules + self.provisioning_state = None + self.name = name + self.etag = None + + +class AzureFirewallNetworkRule(Model): + """Properties of the network rule. + + :param name: Name of the network rule. + :type name: str + :param description: Description of the rule. + :type description: str + :param protocols: Array of AzureFirewallNetworkRuleProtocols. + :type protocols: list[str or + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallNetworkRuleProtocol] + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param destination_addresses: List of destination IP addresses. + :type destination_addresses: list[str] + :param destination_ports: List of destination ports. + :type destination_ports: list[str] + :param destination_fqdns: List of destination FQDNs. + :type destination_fqdns: list[str] + :param source_ip_groups: List of source IpGroups for this rule. + :type source_ip_groups: list[str] + :param destination_ip_groups: List of destination IpGroups for this rule. + :type destination_ip_groups: list[str] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'protocols': {'key': 'protocols', 'type': '[str]'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'destination_addresses': {'key': 'destinationAddresses', 'type': '[str]'}, + 'destination_ports': {'key': 'destinationPorts', 'type': '[str]'}, + 'destination_fqdns': {'key': 'destinationFqdns', 'type': '[str]'}, + 'source_ip_groups': {'key': 'sourceIpGroups', 'type': '[str]'}, + 'destination_ip_groups': {'key': 'destinationIpGroups', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, description: str=None, protocols=None, source_addresses=None, destination_addresses=None, destination_ports=None, destination_fqdns=None, source_ip_groups=None, destination_ip_groups=None, **kwargs) -> None: + super(AzureFirewallNetworkRule, self).__init__(**kwargs) + self.name = name + self.description = description + self.protocols = protocols + self.source_addresses = source_addresses + self.destination_addresses = destination_addresses + self.destination_ports = destination_ports + self.destination_fqdns = destination_fqdns + self.source_ip_groups = source_ip_groups + self.destination_ip_groups = destination_ip_groups + + +class AzureFirewallNetworkRuleCollection(SubResource): + """Network rule collection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param priority: Priority of the network rule collection resource. + :type priority: int + :param action: The action type of a rule collection. + :type action: ~azure.mgmt.network.v2019_09_01.models.AzureFirewallRCAction + :param rules: Collection of rules used by a network rule collection. + :type rules: + list[~azure.mgmt.network.v2019_09_01.models.AzureFirewallNetworkRule] + :ivar provisioning_state: The provisioning state of the network rule + collection resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within the Azure + firewall. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'action': {'key': 'properties.action', 'type': 'AzureFirewallRCAction'}, + 'rules': {'key': 'properties.rules', 'type': '[AzureFirewallNetworkRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, priority: int=None, action=None, rules=None, name: str=None, **kwargs) -> None: + super(AzureFirewallNetworkRuleCollection, self).__init__(id=id, **kwargs) + self.priority = priority + self.action = action + self.rules = rules + self.provisioning_state = None + self.name = name + self.etag = None + + +class AzureFirewallPublicIPAddress(Model): + """Public IP Address associated with azure firewall. + + :param address: Public IP Address value. + :type address: str + """ + + _attribute_map = { + 'address': {'key': 'address', 'type': 'str'}, + } + + def __init__(self, *, address: str=None, **kwargs) -> None: + super(AzureFirewallPublicIPAddress, self).__init__(**kwargs) + self.address = address + + +class AzureFirewallRCAction(Model): + """Properties of the AzureFirewallRCAction. + + :param type: The type of action. Possible values include: 'Allow', 'Deny' + :type type: str or + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallRCActionType + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, type=None, **kwargs) -> None: + super(AzureFirewallRCAction, self).__init__(**kwargs) + self.type = type + + +class AzureFirewallSku(Model): + """SKU of an Azure Firewall. + + :param name: Name of an Azure Firewall SKU. Possible values include: + 'AZFW_VNet', 'AZFW_Hub' + :type name: str or + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallSkuName + :param tier: Tier of an Azure Firewall. Possible values include: + 'Standard' + :type tier: str or + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallSkuTier + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + } + + def __init__(self, *, name=None, tier=None, **kwargs) -> None: + super(AzureFirewallSku, self).__init__(**kwargs) + self.name = name + self.tier = tier + + +class AzureReachabilityReport(Model): + """Azure reachability report details. + + All required parameters must be populated in order to send to Azure. + + :param aggregation_level: Required. The aggregation level of Azure + reachability report. Can be Country, State or City. + :type aggregation_level: str + :param provider_location: Required. Parameters that define a geographic + location. + :type provider_location: + ~azure.mgmt.network.v2019_09_01.models.AzureReachabilityReportLocation + :param reachability_report: Required. List of Azure reachability report + items. + :type reachability_report: + list[~azure.mgmt.network.v2019_09_01.models.AzureReachabilityReportItem] + """ + + _validation = { + 'aggregation_level': {'required': True}, + 'provider_location': {'required': True}, + 'reachability_report': {'required': True}, + } + + _attribute_map = { + 'aggregation_level': {'key': 'aggregationLevel', 'type': 'str'}, + 'provider_location': {'key': 'providerLocation', 'type': 'AzureReachabilityReportLocation'}, + 'reachability_report': {'key': 'reachabilityReport', 'type': '[AzureReachabilityReportItem]'}, + } + + def __init__(self, *, aggregation_level: str, provider_location, reachability_report, **kwargs) -> None: + super(AzureReachabilityReport, self).__init__(**kwargs) + self.aggregation_level = aggregation_level + self.provider_location = provider_location + self.reachability_report = reachability_report + + +class AzureReachabilityReportItem(Model): + """Azure reachability report details for a given provider location. + + :param provider: The Internet service provider. + :type provider: str + :param azure_location: The Azure region. + :type azure_location: str + :param latencies: List of latency details for each of the time series. + :type latencies: + list[~azure.mgmt.network.v2019_09_01.models.AzureReachabilityReportLatencyInfo] + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'azure_location': {'key': 'azureLocation', 'type': 'str'}, + 'latencies': {'key': 'latencies', 'type': '[AzureReachabilityReportLatencyInfo]'}, + } + + def __init__(self, *, provider: str=None, azure_location: str=None, latencies=None, **kwargs) -> None: + super(AzureReachabilityReportItem, self).__init__(**kwargs) + self.provider = provider + self.azure_location = azure_location + self.latencies = latencies + + +class AzureReachabilityReportLatencyInfo(Model): + """Details on latency for a time series. + + :param time_stamp: The time stamp. + :type time_stamp: datetime + :param score: The relative latency score between 1 and 100, higher values + indicating a faster connection. + :type score: int + """ + + _validation = { + 'score': {'maximum': 100, 'minimum': 1}, + } + + _attribute_map = { + 'time_stamp': {'key': 'timeStamp', 'type': 'iso-8601'}, + 'score': {'key': 'score', 'type': 'int'}, + } + + def __init__(self, *, time_stamp=None, score: int=None, **kwargs) -> None: + super(AzureReachabilityReportLatencyInfo, self).__init__(**kwargs) + self.time_stamp = time_stamp + self.score = score + + +class AzureReachabilityReportLocation(Model): + """Parameters that define a geographic location. + + All required parameters must be populated in order to send to Azure. + + :param country: Required. The name of the country. + :type country: str + :param state: The name of the state. + :type state: str + :param city: The name of the city or town. + :type city: str + """ + + _validation = { + 'country': {'required': True}, + } + + _attribute_map = { + 'country': {'key': 'country', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'city': {'key': 'city', 'type': 'str'}, + } + + def __init__(self, *, country: str, state: str=None, city: str=None, **kwargs) -> None: + super(AzureReachabilityReportLocation, self).__init__(**kwargs) + self.country = country + self.state = state + self.city = city + + +class AzureReachabilityReportParameters(Model): + """Geographic and time constraints for Azure reachability report. + + All required parameters must be populated in order to send to Azure. + + :param provider_location: Required. Parameters that define a geographic + location. + :type provider_location: + ~azure.mgmt.network.v2019_09_01.models.AzureReachabilityReportLocation + :param providers: List of Internet service providers. + :type providers: list[str] + :param azure_locations: Optional Azure regions to scope the query to. + :type azure_locations: list[str] + :param start_time: Required. The start time for the Azure reachability + report. + :type start_time: datetime + :param end_time: Required. The end time for the Azure reachability report. + :type end_time: datetime + """ + + _validation = { + 'provider_location': {'required': True}, + 'start_time': {'required': True}, + 'end_time': {'required': True}, + } + + _attribute_map = { + 'provider_location': {'key': 'providerLocation', 'type': 'AzureReachabilityReportLocation'}, + 'providers': {'key': 'providers', 'type': '[str]'}, + 'azure_locations': {'key': 'azureLocations', 'type': '[str]'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + } + + def __init__(self, *, provider_location, start_time, end_time, providers=None, azure_locations=None, **kwargs) -> None: + super(AzureReachabilityReportParameters, self).__init__(**kwargs) + self.provider_location = provider_location + self.providers = providers + self.azure_locations = azure_locations + self.start_time = start_time + self.end_time = end_time + + +class BackendAddressPool(SubResource): + """Pool of backend IP addresses. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar backend_ip_configurations: An array of references to IP addresses + defined in network interfaces. + :vartype backend_ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfiguration] + :ivar load_balancing_rules: An array of references to load balancing rules + that use this backend address pool. + :vartype load_balancing_rules: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar outbound_rule: A reference to an outbound rule that uses this + backend address pool. + :vartype outbound_rule: ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar outbound_rules: An array of references to outbound rules that use + this backend address pool. + :vartype outbound_rules: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar provisioning_state: The provisioning state of the backend address + pool resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within the set of + backend address pools used by the load balancer. This name can be used to + access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'backend_ip_configurations': {'readonly': True}, + 'load_balancing_rules': {'readonly': True}, + 'outbound_rule': {'readonly': True}, + 'outbound_rules': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'backend_ip_configurations': {'key': 'properties.backendIPConfigurations', 'type': '[NetworkInterfaceIPConfiguration]'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[SubResource]'}, + 'outbound_rule': {'key': 'properties.outboundRule', 'type': 'SubResource'}, + 'outbound_rules': {'key': 'properties.outboundRules', 'type': '[SubResource]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, name: str=None, **kwargs) -> None: + super(BackendAddressPool, self).__init__(id=id, **kwargs) + self.backend_ip_configurations = None + self.load_balancing_rules = None + self.outbound_rule = None + self.outbound_rules = None + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class BastionHost(Resource): + """Bastion Host resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param ip_configurations: IP configuration of the Bastion Host resource. + :type ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.BastionHostIPConfiguration] + :param dns_name: FQDN for the endpoint on which bastion host is + accessible. + :type dns_name: str + :ivar provisioning_state: The provisioning state of the bastion host + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[BastionHostIPConfiguration]'}, + 'dns_name': {'key': 'properties.dnsName', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, ip_configurations=None, dns_name: str=None, **kwargs) -> None: + super(BastionHost, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.ip_configurations = ip_configurations + self.dns_name = dns_name + self.provisioning_state = None + self.etag = None + + +class BastionHostIPConfiguration(SubResource): + """IP configuration of an Bastion Host. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param subnet: Required. Reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param public_ip_address: Required. Reference of the PublicIP resource. + :type public_ip_address: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar provisioning_state: The provisioning state of the bastion host IP + configuration resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param private_ip_allocation_method: Private IP allocation method. + Possible values include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2019_09_01.models.IPAllocationMethod + :param name: Name of the resource that is unique within a resource group. + This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Ip configuration type. + :vartype type: str + """ + + _validation = { + 'subnet': {'required': True}, + 'public_ip_address': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, subnet, public_ip_address, id: str=None, private_ip_allocation_method=None, name: str=None, **kwargs) -> None: + super(BastionHostIPConfiguration, self).__init__(id=id, **kwargs) + self.subnet = subnet + self.public_ip_address = public_ip_address + self.provisioning_state = None + self.private_ip_allocation_method = private_ip_allocation_method + self.name = name + self.etag = None + self.type = None + + +class BGPCommunity(Model): + """Contains bgp community information offered in Service Community resources. + + :param service_supported_region: The region which the service support. + e.g. For O365, region is Global. + :type service_supported_region: str + :param community_name: The name of the bgp community. e.g. Skype. + :type community_name: str + :param community_value: The value of the bgp community. For more + information: + https://docs.microsoft.com/en-us/azure/expressroute/expressroute-routing. + :type community_value: str + :param community_prefixes: The prefixes that the bgp community contains. + :type community_prefixes: list[str] + :param is_authorized_to_use: Customer is authorized to use bgp community + or not. + :type is_authorized_to_use: bool + :param service_group: The service group of the bgp community contains. + :type service_group: str + """ + + _attribute_map = { + 'service_supported_region': {'key': 'serviceSupportedRegion', 'type': 'str'}, + 'community_name': {'key': 'communityName', 'type': 'str'}, + 'community_value': {'key': 'communityValue', 'type': 'str'}, + 'community_prefixes': {'key': 'communityPrefixes', 'type': '[str]'}, + 'is_authorized_to_use': {'key': 'isAuthorizedToUse', 'type': 'bool'}, + 'service_group': {'key': 'serviceGroup', 'type': 'str'}, + } + + def __init__(self, *, service_supported_region: str=None, community_name: str=None, community_value: str=None, community_prefixes=None, is_authorized_to_use: bool=None, service_group: str=None, **kwargs) -> None: + super(BGPCommunity, self).__init__(**kwargs) + self.service_supported_region = service_supported_region + self.community_name = community_name + self.community_value = community_value + self.community_prefixes = community_prefixes + self.is_authorized_to_use = is_authorized_to_use + self.service_group = service_group + + +class BgpPeerStatus(Model): + """BGP peer status details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar local_address: The virtual network gateway's local address. + :vartype local_address: str + :ivar neighbor: The remote BGP peer. + :vartype neighbor: str + :ivar asn: The autonomous system number of the remote BGP peer. + :vartype asn: int + :ivar state: The BGP peer state. Possible values include: 'Unknown', + 'Stopped', 'Idle', 'Connecting', 'Connected' + :vartype state: str or ~azure.mgmt.network.v2019_09_01.models.BgpPeerState + :ivar connected_duration: For how long the peering has been up. + :vartype connected_duration: str + :ivar routes_received: The number of routes learned from this peer. + :vartype routes_received: long + :ivar messages_sent: The number of BGP messages sent. + :vartype messages_sent: long + :ivar messages_received: The number of BGP messages received. + :vartype messages_received: long + """ + + _validation = { + 'local_address': {'readonly': True}, + 'neighbor': {'readonly': True}, + 'asn': {'readonly': True}, + 'state': {'readonly': True}, + 'connected_duration': {'readonly': True}, + 'routes_received': {'readonly': True}, + 'messages_sent': {'readonly': True}, + 'messages_received': {'readonly': True}, + } + + _attribute_map = { + 'local_address': {'key': 'localAddress', 'type': 'str'}, + 'neighbor': {'key': 'neighbor', 'type': 'str'}, + 'asn': {'key': 'asn', 'type': 'int'}, + 'state': {'key': 'state', 'type': 'str'}, + 'connected_duration': {'key': 'connectedDuration', 'type': 'str'}, + 'routes_received': {'key': 'routesReceived', 'type': 'long'}, + 'messages_sent': {'key': 'messagesSent', 'type': 'long'}, + 'messages_received': {'key': 'messagesReceived', 'type': 'long'}, + } + + def __init__(self, **kwargs) -> None: + super(BgpPeerStatus, self).__init__(**kwargs) + self.local_address = None + self.neighbor = None + self.asn = None + self.state = None + self.connected_duration = None + self.routes_received = None + self.messages_sent = None + self.messages_received = None + + +class BgpPeerStatusListResult(Model): + """Response for list BGP peer status API service call. + + :param value: List of BGP peers. + :type value: list[~azure.mgmt.network.v2019_09_01.models.BgpPeerStatus] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[BgpPeerStatus]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(BgpPeerStatusListResult, self).__init__(**kwargs) + self.value = value + + +class BgpServiceCommunity(Resource): + """Service Community Properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param service_name: The name of the bgp community. e.g. Skype. + :type service_name: str + :param bgp_communities: A list of bgp communities. + :type bgp_communities: + list[~azure.mgmt.network.v2019_09_01.models.BGPCommunity] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'service_name': {'key': 'properties.serviceName', 'type': 'str'}, + 'bgp_communities': {'key': 'properties.bgpCommunities', 'type': '[BGPCommunity]'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, service_name: str=None, bgp_communities=None, **kwargs) -> None: + super(BgpServiceCommunity, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.service_name = service_name + self.bgp_communities = bgp_communities + + +class BgpSettings(Model): + """BGP settings details. + + :param asn: The BGP speaker's ASN. + :type asn: long + :param bgp_peering_address: The BGP peering address and BGP identifier of + this BGP speaker. + :type bgp_peering_address: str + :param peer_weight: The weight added to routes learned from this BGP + speaker. + :type peer_weight: int + """ + + _attribute_map = { + 'asn': {'key': 'asn', 'type': 'long'}, + 'bgp_peering_address': {'key': 'bgpPeeringAddress', 'type': 'str'}, + 'peer_weight': {'key': 'peerWeight', 'type': 'int'}, + } + + def __init__(self, *, asn: int=None, bgp_peering_address: str=None, peer_weight: int=None, **kwargs) -> None: + super(BgpSettings, self).__init__(**kwargs) + self.asn = asn + self.bgp_peering_address = bgp_peering_address + self.peer_weight = peer_weight + + +class CheckPrivateLinkServiceVisibilityRequest(Model): + """Request body of the CheckPrivateLinkServiceVisibility API service call. + + :param private_link_service_alias: The alias of the private link service. + :type private_link_service_alias: str + """ + + _attribute_map = { + 'private_link_service_alias': {'key': 'privateLinkServiceAlias', 'type': 'str'}, + } + + def __init__(self, *, private_link_service_alias: str=None, **kwargs) -> None: + super(CheckPrivateLinkServiceVisibilityRequest, self).__init__(**kwargs) + self.private_link_service_alias = private_link_service_alias + + +class CloudError(Model): + """An error response from the service. + + :param error: Cloud error body. + :type error: ~azure.mgmt.network.v2019_09_01.models.CloudErrorBody + """ + + _attribute_map = { + 'error': {'key': 'error', 'type': 'CloudErrorBody'}, + } + + def __init__(self, *, error=None, **kwargs) -> None: + super(CloudError, self).__init__(**kwargs) + self.error = error + + +class CloudErrorException(HttpOperationError): + """Server responsed with exception of type: 'CloudError'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(CloudErrorException, self).__init__(deserialize, response, 'CloudError', *args) + + +class CloudErrorBody(Model): + """An error response from the service. + + :param code: An identifier for the error. Codes are invariant and are + intended to be consumed programmatically. + :type code: str + :param message: A message describing the error, intended to be suitable + for display in a user interface. + :type message: str + :param target: The target of the particular error. For example, the name + of the property in error. + :type target: str + :param details: A list of additional details about the error. + :type details: list[~azure.mgmt.network.v2019_09_01.models.CloudErrorBody] + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'details': {'key': 'details', 'type': '[CloudErrorBody]'}, + } + + def __init__(self, *, code: str=None, message: str=None, target: str=None, details=None, **kwargs) -> None: + super(CloudErrorBody, self).__init__(**kwargs) + self.code = code + self.message = message + self.target = target + self.details = details + + +class ConnectionMonitor(Model): + """Parameters that define the operation to create a connection monitor. + + All required parameters must be populated in order to send to Azure. + + :param location: Connection monitor location. + :type location: str + :param tags: Connection monitor tags. + :type tags: dict[str, str] + :param source: Required. Describes the source of connection monitor. + :type source: + ~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorSource + :param destination: Required. Describes the destination of connection + monitor. + :type destination: + ~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorDestination + :param auto_start: Determines if the connection monitor will start + automatically once created. Default value: True . + :type auto_start: bool + :param monitoring_interval_in_seconds: Monitoring interval in seconds. + Default value: 60 . + :type monitoring_interval_in_seconds: int + """ + + _validation = { + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'source': {'key': 'properties.source', 'type': 'ConnectionMonitorSource'}, + 'destination': {'key': 'properties.destination', 'type': 'ConnectionMonitorDestination'}, + 'auto_start': {'key': 'properties.autoStart', 'type': 'bool'}, + 'monitoring_interval_in_seconds': {'key': 'properties.monitoringIntervalInSeconds', 'type': 'int'}, + } + + def __init__(self, *, source, destination, location: str=None, tags=None, auto_start: bool=True, monitoring_interval_in_seconds: int=60, **kwargs) -> None: + super(ConnectionMonitor, self).__init__(**kwargs) + self.location = location + self.tags = tags + self.source = source + self.destination = destination + self.auto_start = auto_start + self.monitoring_interval_in_seconds = monitoring_interval_in_seconds + + +class ConnectionMonitorDestination(Model): + """Describes the destination of connection monitor. + + :param resource_id: The ID of the resource used as the destination by + connection monitor. + :type resource_id: str + :param address: Address of the connection monitor destination (IP or + domain name). + :type address: str + :param port: The destination port used by connection monitor. + :type port: int + """ + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'address': {'key': 'address', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, *, resource_id: str=None, address: str=None, port: int=None, **kwargs) -> None: + super(ConnectionMonitorDestination, self).__init__(**kwargs) + self.resource_id = resource_id + self.address = address + self.port = port + + +class ConnectionMonitorParameters(Model): + """Parameters that define the operation to create a connection monitor. + + All required parameters must be populated in order to send to Azure. + + :param source: Required. Describes the source of connection monitor. + :type source: + ~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorSource + :param destination: Required. Describes the destination of connection + monitor. + :type destination: + ~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorDestination + :param auto_start: Determines if the connection monitor will start + automatically once created. Default value: True . + :type auto_start: bool + :param monitoring_interval_in_seconds: Monitoring interval in seconds. + Default value: 60 . + :type monitoring_interval_in_seconds: int + """ + + _validation = { + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'source': {'key': 'source', 'type': 'ConnectionMonitorSource'}, + 'destination': {'key': 'destination', 'type': 'ConnectionMonitorDestination'}, + 'auto_start': {'key': 'autoStart', 'type': 'bool'}, + 'monitoring_interval_in_seconds': {'key': 'monitoringIntervalInSeconds', 'type': 'int'}, + } + + def __init__(self, *, source, destination, auto_start: bool=True, monitoring_interval_in_seconds: int=60, **kwargs) -> None: + super(ConnectionMonitorParameters, self).__init__(**kwargs) + self.source = source + self.destination = destination + self.auto_start = auto_start + self.monitoring_interval_in_seconds = monitoring_interval_in_seconds + + +class ConnectionMonitorQueryResult(Model): + """List of connection states snapshots. + + :param source_status: Status of connection monitor source. Possible values + include: 'Unknown', 'Active', 'Inactive' + :type source_status: str or + ~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorSourceStatus + :param states: Information about connection states. + :type states: + list[~azure.mgmt.network.v2019_09_01.models.ConnectionStateSnapshot] + """ + + _attribute_map = { + 'source_status': {'key': 'sourceStatus', 'type': 'str'}, + 'states': {'key': 'states', 'type': '[ConnectionStateSnapshot]'}, + } + + def __init__(self, *, source_status=None, states=None, **kwargs) -> None: + super(ConnectionMonitorQueryResult, self).__init__(**kwargs) + self.source_status = source_status + self.states = states + + +class ConnectionMonitorResult(Model): + """Information about the connection monitor. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar name: Name of the connection monitor. + :vartype name: str + :ivar id: ID of the connection monitor. + :vartype id: str + :param etag: A unique read-only string that changes whenever the resource + is updated. Default value: "A unique read-only string that changes + whenever the resource is updated." . + :type etag: str + :ivar type: Connection monitor type. + :vartype type: str + :param location: Connection monitor location. + :type location: str + :param tags: Connection monitor tags. + :type tags: dict[str, str] + :param source: Required. Describes the source of connection monitor. + :type source: + ~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorSource + :param destination: Required. Describes the destination of connection + monitor. + :type destination: + ~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorDestination + :param auto_start: Determines if the connection monitor will start + automatically once created. Default value: True . + :type auto_start: bool + :param monitoring_interval_in_seconds: Monitoring interval in seconds. + Default value: 60 . + :type monitoring_interval_in_seconds: int + :param provisioning_state: The provisioning state of the connection + monitor. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :type provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param start_time: The date and time when the connection monitor was + started. + :type start_time: datetime + :param monitoring_status: The monitoring status of the connection monitor. + :type monitoring_status: str + """ + + _validation = { + 'name': {'readonly': True}, + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'source': {'key': 'properties.source', 'type': 'ConnectionMonitorSource'}, + 'destination': {'key': 'properties.destination', 'type': 'ConnectionMonitorDestination'}, + 'auto_start': {'key': 'properties.autoStart', 'type': 'bool'}, + 'monitoring_interval_in_seconds': {'key': 'properties.monitoringIntervalInSeconds', 'type': 'int'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'start_time': {'key': 'properties.startTime', 'type': 'iso-8601'}, + 'monitoring_status': {'key': 'properties.monitoringStatus', 'type': 'str'}, + } + + def __init__(self, *, source, destination, etag: str="A unique read-only string that changes whenever the resource is updated.", location: str=None, tags=None, auto_start: bool=True, monitoring_interval_in_seconds: int=60, provisioning_state=None, start_time=None, monitoring_status: str=None, **kwargs) -> None: + super(ConnectionMonitorResult, self).__init__(**kwargs) + self.name = None + self.id = None + self.etag = etag + self.type = None + self.location = location + self.tags = tags + self.source = source + self.destination = destination + self.auto_start = auto_start + self.monitoring_interval_in_seconds = monitoring_interval_in_seconds + self.provisioning_state = provisioning_state + self.start_time = start_time + self.monitoring_status = monitoring_status + + +class ConnectionMonitorSource(Model): + """Describes the source of connection monitor. + + All required parameters must be populated in order to send to Azure. + + :param resource_id: Required. The ID of the resource used as the source by + connection monitor. + :type resource_id: str + :param port: The source port used by connection monitor. + :type port: int + """ + + _validation = { + 'resource_id': {'required': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, *, resource_id: str, port: int=None, **kwargs) -> None: + super(ConnectionMonitorSource, self).__init__(**kwargs) + self.resource_id = resource_id + self.port = port + + +class ConnectionResetSharedKey(Model): + """The virtual network connection reset shared key. + + All required parameters must be populated in order to send to Azure. + + :param key_length: Required. The virtual network connection reset shared + key length, should between 1 and 128. + :type key_length: int + """ + + _validation = { + 'key_length': {'required': True, 'maximum': 128, 'minimum': 1}, + } + + _attribute_map = { + 'key_length': {'key': 'keyLength', 'type': 'int'}, + } + + def __init__(self, *, key_length: int, **kwargs) -> None: + super(ConnectionResetSharedKey, self).__init__(**kwargs) + self.key_length = key_length + + +class ConnectionSharedKey(SubResource): + """Response for GetConnectionSharedKey API service call. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param value: Required. The virtual network connection shared key value. + :type value: str + """ + + _validation = { + 'value': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, *, value: str, id: str=None, **kwargs) -> None: + super(ConnectionSharedKey, self).__init__(id=id, **kwargs) + self.value = value + + +class ConnectionStateSnapshot(Model): + """Connection state snapshot. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param connection_state: The connection state. Possible values include: + 'Reachable', 'Unreachable', 'Unknown' + :type connection_state: str or + ~azure.mgmt.network.v2019_09_01.models.ConnectionState + :param start_time: The start time of the connection snapshot. + :type start_time: datetime + :param end_time: The end time of the connection snapshot. + :type end_time: datetime + :param evaluation_state: Connectivity analysis evaluation state. Possible + values include: 'NotStarted', 'InProgress', 'Completed' + :type evaluation_state: str or + ~azure.mgmt.network.v2019_09_01.models.EvaluationState + :param avg_latency_in_ms: Average latency in ms. + :type avg_latency_in_ms: int + :param min_latency_in_ms: Minimum latency in ms. + :type min_latency_in_ms: int + :param max_latency_in_ms: Maximum latency in ms. + :type max_latency_in_ms: int + :param probes_sent: The number of sent probes. + :type probes_sent: int + :param probes_failed: The number of failed probes. + :type probes_failed: int + :ivar hops: List of hops between the source and the destination. + :vartype hops: + list[~azure.mgmt.network.v2019_09_01.models.ConnectivityHop] + """ + + _validation = { + 'hops': {'readonly': True}, + } + + _attribute_map = { + 'connection_state': {'key': 'connectionState', 'type': 'str'}, + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'evaluation_state': {'key': 'evaluationState', 'type': 'str'}, + 'avg_latency_in_ms': {'key': 'avgLatencyInMs', 'type': 'int'}, + 'min_latency_in_ms': {'key': 'minLatencyInMs', 'type': 'int'}, + 'max_latency_in_ms': {'key': 'maxLatencyInMs', 'type': 'int'}, + 'probes_sent': {'key': 'probesSent', 'type': 'int'}, + 'probes_failed': {'key': 'probesFailed', 'type': 'int'}, + 'hops': {'key': 'hops', 'type': '[ConnectivityHop]'}, + } + + def __init__(self, *, connection_state=None, start_time=None, end_time=None, evaluation_state=None, avg_latency_in_ms: int=None, min_latency_in_ms: int=None, max_latency_in_ms: int=None, probes_sent: int=None, probes_failed: int=None, **kwargs) -> None: + super(ConnectionStateSnapshot, self).__init__(**kwargs) + self.connection_state = connection_state + self.start_time = start_time + self.end_time = end_time + self.evaluation_state = evaluation_state + self.avg_latency_in_ms = avg_latency_in_ms + self.min_latency_in_ms = min_latency_in_ms + self.max_latency_in_ms = max_latency_in_ms + self.probes_sent = probes_sent + self.probes_failed = probes_failed + self.hops = None + + +class ConnectivityDestination(Model): + """Parameters that define destination of connection. + + :param resource_id: The ID of the resource to which a connection attempt + will be made. + :type resource_id: str + :param address: The IP address or URI the resource to which a connection + attempt will be made. + :type address: str + :param port: Port on which check connectivity will be performed. + :type port: int + """ + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'address': {'key': 'address', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, *, resource_id: str=None, address: str=None, port: int=None, **kwargs) -> None: + super(ConnectivityDestination, self).__init__(**kwargs) + self.resource_id = resource_id + self.address = address + self.port = port + + +class ConnectivityHop(Model): + """Information about a hop between the source and the destination. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar type: The type of the hop. + :vartype type: str + :ivar id: The ID of the hop. + :vartype id: str + :ivar address: The IP address of the hop. + :vartype address: str + :ivar resource_id: The ID of the resource corresponding to this hop. + :vartype resource_id: str + :ivar next_hop_ids: List of next hop identifiers. + :vartype next_hop_ids: list[str] + :ivar issues: List of issues. + :vartype issues: + list[~azure.mgmt.network.v2019_09_01.models.ConnectivityIssue] + """ + + _validation = { + 'type': {'readonly': True}, + 'id': {'readonly': True}, + 'address': {'readonly': True}, + 'resource_id': {'readonly': True}, + 'next_hop_ids': {'readonly': True}, + 'issues': {'readonly': True}, + } + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'address': {'key': 'address', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'next_hop_ids': {'key': 'nextHopIds', 'type': '[str]'}, + 'issues': {'key': 'issues', 'type': '[ConnectivityIssue]'}, + } + + def __init__(self, **kwargs) -> None: + super(ConnectivityHop, self).__init__(**kwargs) + self.type = None + self.id = None + self.address = None + self.resource_id = None + self.next_hop_ids = None + self.issues = None + + +class ConnectivityInformation(Model): + """Information on the connectivity status. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar hops: List of hops between the source and the destination. + :vartype hops: + list[~azure.mgmt.network.v2019_09_01.models.ConnectivityHop] + :ivar connection_status: The connection status. Possible values include: + 'Unknown', 'Connected', 'Disconnected', 'Degraded' + :vartype connection_status: str or + ~azure.mgmt.network.v2019_09_01.models.ConnectionStatus + :ivar avg_latency_in_ms: Average latency in milliseconds. + :vartype avg_latency_in_ms: int + :ivar min_latency_in_ms: Minimum latency in milliseconds. + :vartype min_latency_in_ms: int + :ivar max_latency_in_ms: Maximum latency in milliseconds. + :vartype max_latency_in_ms: int + :ivar probes_sent: Total number of probes sent. + :vartype probes_sent: int + :ivar probes_failed: Number of failed probes. + :vartype probes_failed: int + """ + + _validation = { + 'hops': {'readonly': True}, + 'connection_status': {'readonly': True}, + 'avg_latency_in_ms': {'readonly': True}, + 'min_latency_in_ms': {'readonly': True}, + 'max_latency_in_ms': {'readonly': True}, + 'probes_sent': {'readonly': True}, + 'probes_failed': {'readonly': True}, + } + + _attribute_map = { + 'hops': {'key': 'hops', 'type': '[ConnectivityHop]'}, + 'connection_status': {'key': 'connectionStatus', 'type': 'str'}, + 'avg_latency_in_ms': {'key': 'avgLatencyInMs', 'type': 'int'}, + 'min_latency_in_ms': {'key': 'minLatencyInMs', 'type': 'int'}, + 'max_latency_in_ms': {'key': 'maxLatencyInMs', 'type': 'int'}, + 'probes_sent': {'key': 'probesSent', 'type': 'int'}, + 'probes_failed': {'key': 'probesFailed', 'type': 'int'}, + } + + def __init__(self, **kwargs) -> None: + super(ConnectivityInformation, self).__init__(**kwargs) + self.hops = None + self.connection_status = None + self.avg_latency_in_ms = None + self.min_latency_in_ms = None + self.max_latency_in_ms = None + self.probes_sent = None + self.probes_failed = None + + +class ConnectivityIssue(Model): + """Information about an issue encountered in the process of checking for + connectivity. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar origin: The origin of the issue. Possible values include: 'Local', + 'Inbound', 'Outbound' + :vartype origin: str or ~azure.mgmt.network.v2019_09_01.models.Origin + :ivar severity: The severity of the issue. Possible values include: + 'Error', 'Warning' + :vartype severity: str or ~azure.mgmt.network.v2019_09_01.models.Severity + :ivar type: The type of issue. Possible values include: 'Unknown', + 'AgentStopped', 'GuestFirewall', 'DnsResolution', 'SocketBind', + 'NetworkSecurityRule', 'UserDefinedRoute', 'PortThrottled', 'Platform' + :vartype type: str or ~azure.mgmt.network.v2019_09_01.models.IssueType + :ivar context: Provides additional context on the issue. + :vartype context: list[dict[str, str]] + """ + + _validation = { + 'origin': {'readonly': True}, + 'severity': {'readonly': True}, + 'type': {'readonly': True}, + 'context': {'readonly': True}, + } + + _attribute_map = { + 'origin': {'key': 'origin', 'type': 'str'}, + 'severity': {'key': 'severity', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'context': {'key': 'context', 'type': '[{str}]'}, + } + + def __init__(self, **kwargs) -> None: + super(ConnectivityIssue, self).__init__(**kwargs) + self.origin = None + self.severity = None + self.type = None + self.context = None + + +class ConnectivityParameters(Model): + """Parameters that determine how the connectivity check will be performed. + + All required parameters must be populated in order to send to Azure. + + :param source: Required. Describes the source of the connection. + :type source: ~azure.mgmt.network.v2019_09_01.models.ConnectivitySource + :param destination: Required. Describes the destination of connection. + :type destination: + ~azure.mgmt.network.v2019_09_01.models.ConnectivityDestination + :param protocol: Network protocol. Possible values include: 'Tcp', 'Http', + 'Https', 'Icmp' + :type protocol: str or ~azure.mgmt.network.v2019_09_01.models.Protocol + :param protocol_configuration: Configuration of the protocol. + :type protocol_configuration: + ~azure.mgmt.network.v2019_09_01.models.ProtocolConfiguration + """ + + _validation = { + 'source': {'required': True}, + 'destination': {'required': True}, + } + + _attribute_map = { + 'source': {'key': 'source', 'type': 'ConnectivitySource'}, + 'destination': {'key': 'destination', 'type': 'ConnectivityDestination'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'protocol_configuration': {'key': 'protocolConfiguration', 'type': 'ProtocolConfiguration'}, + } + + def __init__(self, *, source, destination, protocol=None, protocol_configuration=None, **kwargs) -> None: + super(ConnectivityParameters, self).__init__(**kwargs) + self.source = source + self.destination = destination + self.protocol = protocol + self.protocol_configuration = protocol_configuration + + +class ConnectivitySource(Model): + """Parameters that define the source of the connection. + + All required parameters must be populated in order to send to Azure. + + :param resource_id: Required. The ID of the resource from which a + connectivity check will be initiated. + :type resource_id: str + :param port: The source port from which a connectivity check will be + performed. + :type port: int + """ + + _validation = { + 'resource_id': {'required': True}, + } + + _attribute_map = { + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, *, resource_id: str, port: int=None, **kwargs) -> None: + super(ConnectivitySource, self).__init__(**kwargs) + self.resource_id = resource_id + self.port = port + + +class Container(SubResource): + """Reference to container resource in remote resource provider. + + :param id: Resource ID. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(Container, self).__init__(id=id, **kwargs) + + +class ContainerNetworkInterface(SubResource): + """Container network interface child resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar container_network_interface_configuration: Container network + interface configuration from which this container network interface is + created. + :vartype container_network_interface_configuration: + ~azure.mgmt.network.v2019_09_01.models.ContainerNetworkInterfaceConfiguration + :param container: Reference to the container to which this container + network interface is attached. + :type container: ~azure.mgmt.network.v2019_09_01.models.Container + :ivar ip_configurations: Reference to the ip configuration on this + container nic. + :vartype ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.ContainerNetworkInterfaceIpConfiguration] + :ivar provisioning_state: The provisioning state of the container network + interface resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource. This name can be used to access the + resource. + :type name: str + :ivar type: Sub Resource type. + :vartype type: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'container_network_interface_configuration': {'readonly': True}, + 'ip_configurations': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'container_network_interface_configuration': {'key': 'properties.containerNetworkInterfaceConfiguration', 'type': 'ContainerNetworkInterfaceConfiguration'}, + 'container': {'key': 'properties.container', 'type': 'Container'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[ContainerNetworkInterfaceIpConfiguration]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, container=None, name: str=None, **kwargs) -> None: + super(ContainerNetworkInterface, self).__init__(id=id, **kwargs) + self.container_network_interface_configuration = None + self.container = container + self.ip_configurations = None + self.provisioning_state = None + self.name = name + self.type = None + self.etag = None + + +class ContainerNetworkInterfaceConfiguration(SubResource): + """Container network interface configuration child resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param ip_configurations: A list of ip configurations of the container + network interface configuration. + :type ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.IPConfigurationProfile] + :param container_network_interfaces: A list of container network + interfaces created from this container network interface configuration. + :type container_network_interfaces: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar provisioning_state: The provisioning state of the container network + interface configuration resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource. This name can be used to access the + resource. + :type name: str + :ivar type: Sub Resource type. + :vartype type: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[IPConfigurationProfile]'}, + 'container_network_interfaces': {'key': 'properties.containerNetworkInterfaces', 'type': '[SubResource]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, ip_configurations=None, container_network_interfaces=None, name: str=None, **kwargs) -> None: + super(ContainerNetworkInterfaceConfiguration, self).__init__(id=id, **kwargs) + self.ip_configurations = ip_configurations + self.container_network_interfaces = container_network_interfaces + self.provisioning_state = None + self.name = name + self.type = None + self.etag = None + + +class ContainerNetworkInterfaceIpConfiguration(Model): + """The ip configuration for a container network interface. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar provisioning_state: The provisioning state of the container network + interface IP configuration resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource. This name can be used to access the + resource. + :type name: str + :ivar type: Sub Resource type. + :vartype type: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, **kwargs) -> None: + super(ContainerNetworkInterfaceIpConfiguration, self).__init__(**kwargs) + self.provisioning_state = None + self.name = name + self.type = None + self.etag = None + + +class DdosCustomPolicy(Resource): + """A DDoS custom policy in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar resource_guid: The resource GUID property of the DDoS custom policy + resource. It uniquely identifies the resource, even if the user changes + its name or migrate the resource across subscriptions or resource groups. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the DDoS custom policy + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar public_ip_addresses: The list of public IPs associated with the DDoS + custom policy resource. This list is read-only. + :vartype public_ip_addresses: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param protocol_custom_settings: The protocol-specific DDoS policy + customization parameters. + :type protocol_custom_settings: + list[~azure.mgmt.network.v2019_09_01.models.ProtocolCustomSettingsFormat] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'public_ip_addresses': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'public_ip_addresses': {'key': 'properties.publicIPAddresses', 'type': '[SubResource]'}, + 'protocol_custom_settings': {'key': 'properties.protocolCustomSettings', 'type': '[ProtocolCustomSettingsFormat]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, protocol_custom_settings=None, **kwargs) -> None: + super(DdosCustomPolicy, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.resource_guid = None + self.provisioning_state = None + self.public_ip_addresses = None + self.protocol_custom_settings = protocol_custom_settings + self.etag = None + + +class DdosProtectionPlan(Model): + """A DDoS protection plan in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Resource ID. + :vartype id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar resource_guid: The resource GUID property of the DDoS protection + plan resource. It uniquely identifies the resource, even if the user + changes its name or migrate the resource across subscriptions or resource + groups. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the DDoS protection + plan resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar virtual_networks: The list of virtual networks associated with the + DDoS protection plan resource. This list is read-only. + :vartype virtual_networks: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'id': {'readonly': True}, + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'virtual_networks': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'virtual_networks': {'key': 'properties.virtualNetworks', 'type': '[SubResource]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, location: str=None, tags=None, **kwargs) -> None: + super(DdosProtectionPlan, self).__init__(**kwargs) + self.id = None + self.name = None + self.type = None + self.location = location + self.tags = tags + self.resource_guid = None + self.provisioning_state = None + self.virtual_networks = None + self.etag = None + + +class DdosSettings(Model): + """Contains the DDoS protection settings of the public IP. + + :param ddos_custom_policy: The DDoS custom policy associated with the + public IP. + :type ddos_custom_policy: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param protection_coverage: The DDoS protection policy customizability of + the public IP. Only standard coverage will have the ability to be + customized. Possible values include: 'Basic', 'Standard' + :type protection_coverage: str or + ~azure.mgmt.network.v2019_09_01.models.DdosSettingsProtectionCoverage + """ + + _attribute_map = { + 'ddos_custom_policy': {'key': 'ddosCustomPolicy', 'type': 'SubResource'}, + 'protection_coverage': {'key': 'protectionCoverage', 'type': 'str'}, + } + + def __init__(self, *, ddos_custom_policy=None, protection_coverage=None, **kwargs) -> None: + super(DdosSettings, self).__init__(**kwargs) + self.ddos_custom_policy = ddos_custom_policy + self.protection_coverage = protection_coverage + + +class Delegation(SubResource): + """Details the service to which the subnet is delegated. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param service_name: The name of the service to whom the subnet should be + delegated (e.g. Microsoft.Sql/servers). + :type service_name: str + :ivar actions: Describes the actions permitted to the service upon + delegation. + :vartype actions: list[str] + :ivar provisioning_state: The provisioning state of the service delegation + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a subnet. This + name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'actions': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'service_name': {'key': 'properties.serviceName', 'type': 'str'}, + 'actions': {'key': 'properties.actions', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, service_name: str=None, name: str=None, **kwargs) -> None: + super(Delegation, self).__init__(id=id, **kwargs) + self.service_name = service_name + self.actions = None + self.provisioning_state = None + self.name = name + self.etag = None + + +class DeviceProperties(Model): + """List of properties of the device. + + :param device_vendor: Name of the device Vendor. + :type device_vendor: str + :param device_model: Model of the device. + :type device_model: str + :param link_speed_in_mbps: Link speed. + :type link_speed_in_mbps: int + """ + + _attribute_map = { + 'device_vendor': {'key': 'deviceVendor', 'type': 'str'}, + 'device_model': {'key': 'deviceModel', 'type': 'str'}, + 'link_speed_in_mbps': {'key': 'linkSpeedInMbps', 'type': 'int'}, + } + + def __init__(self, *, device_vendor: str=None, device_model: str=None, link_speed_in_mbps: int=None, **kwargs) -> None: + super(DeviceProperties, self).__init__(**kwargs) + self.device_vendor = device_vendor + self.device_model = device_model + self.link_speed_in_mbps = link_speed_in_mbps + + +class DhcpOptions(Model): + """DhcpOptions contains an array of DNS servers available to VMs deployed in + the virtual network. Standard DHCP option for a subnet overrides VNET DHCP + options. + + :param dns_servers: The list of DNS servers IP addresses. + :type dns_servers: list[str] + """ + + _attribute_map = { + 'dns_servers': {'key': 'dnsServers', 'type': '[str]'}, + } + + def __init__(self, *, dns_servers=None, **kwargs) -> None: + super(DhcpOptions, self).__init__(**kwargs) + self.dns_servers = dns_servers + + +class Dimension(Model): + """Dimension of the metric. + + :param name: The name of the dimension. + :type name: str + :param display_name: The display name of the dimension. + :type display_name: str + :param internal_name: The internal name of the dimension. + :type internal_name: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'internal_name': {'key': 'internalName', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, display_name: str=None, internal_name: str=None, **kwargs) -> None: + super(Dimension, self).__init__(**kwargs) + self.name = name + self.display_name = display_name + self.internal_name = internal_name + + +class DnsNameAvailabilityResult(Model): + """Response for the CheckDnsNameAvailability API service call. + + :param available: Domain availability (True/False). + :type available: bool + """ + + _attribute_map = { + 'available': {'key': 'available', 'type': 'bool'}, + } + + def __init__(self, *, available: bool=None, **kwargs) -> None: + super(DnsNameAvailabilityResult, self).__init__(**kwargs) + self.available = available + + +class EffectiveNetworkSecurityGroup(Model): + """Effective network security group. + + :param network_security_group: The ID of network security group that is + applied. + :type network_security_group: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param association: Associated resources. + :type association: + ~azure.mgmt.network.v2019_09_01.models.EffectiveNetworkSecurityGroupAssociation + :param effective_security_rules: A collection of effective security rules. + :type effective_security_rules: + list[~azure.mgmt.network.v2019_09_01.models.EffectiveNetworkSecurityRule] + :param tag_map: Mapping of tags to list of IP Addresses included within + the tag. + :type tag_map: dict[str, list[str]] + """ + + _attribute_map = { + 'network_security_group': {'key': 'networkSecurityGroup', 'type': 'SubResource'}, + 'association': {'key': 'association', 'type': 'EffectiveNetworkSecurityGroupAssociation'}, + 'effective_security_rules': {'key': 'effectiveSecurityRules', 'type': '[EffectiveNetworkSecurityRule]'}, + 'tag_map': {'key': 'tagMap', 'type': '{[str]}'}, + } + + def __init__(self, *, network_security_group=None, association=None, effective_security_rules=None, tag_map=None, **kwargs) -> None: + super(EffectiveNetworkSecurityGroup, self).__init__(**kwargs) + self.network_security_group = network_security_group + self.association = association + self.effective_security_rules = effective_security_rules + self.tag_map = tag_map + + +class EffectiveNetworkSecurityGroupAssociation(Model): + """The effective network security group association. + + :param subnet: The ID of the subnet if assigned. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param network_interface: The ID of the network interface if assigned. + :type network_interface: + ~azure.mgmt.network.v2019_09_01.models.SubResource + """ + + _attribute_map = { + 'subnet': {'key': 'subnet', 'type': 'SubResource'}, + 'network_interface': {'key': 'networkInterface', 'type': 'SubResource'}, + } + + def __init__(self, *, subnet=None, network_interface=None, **kwargs) -> None: + super(EffectiveNetworkSecurityGroupAssociation, self).__init__(**kwargs) + self.subnet = subnet + self.network_interface = network_interface + + +class EffectiveNetworkSecurityGroupListResult(Model): + """Response for list effective network security groups API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: A list of effective network security groups. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.EffectiveNetworkSecurityGroup] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[EffectiveNetworkSecurityGroup]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(EffectiveNetworkSecurityGroupListResult, self).__init__(**kwargs) + self.value = value + self.next_link = None + + +class EffectiveNetworkSecurityRule(Model): + """Effective network security rules. + + :param name: The name of the security rule specified by the user (if + created by the user). + :type name: str + :param protocol: The network protocol this rule applies to. Possible + values include: 'Tcp', 'Udp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.EffectiveSecurityRuleProtocol + :param source_port_range: The source port or range. + :type source_port_range: str + :param destination_port_range: The destination port or range. + :type destination_port_range: str + :param source_port_ranges: The source port ranges. Expected values include + a single integer between 0 and 65535, a range using '-' as separator (e.g. + 100-400), or an asterisk (*). + :type source_port_ranges: list[str] + :param destination_port_ranges: The destination port ranges. Expected + values include a single integer between 0 and 65535, a range using '-' as + separator (e.g. 100-400), or an asterisk (*). + :type destination_port_ranges: list[str] + :param source_address_prefix: The source address prefix. + :type source_address_prefix: str + :param destination_address_prefix: The destination address prefix. + :type destination_address_prefix: str + :param source_address_prefixes: The source address prefixes. Expected + values include CIDR IP ranges, Default Tags (VirtualNetwork, + AzureLoadBalancer, Internet), System Tags, and the asterisk (*). + :type source_address_prefixes: list[str] + :param destination_address_prefixes: The destination address prefixes. + Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, + AzureLoadBalancer, Internet), System Tags, and the asterisk (*). + :type destination_address_prefixes: list[str] + :param expanded_source_address_prefix: The expanded source address prefix. + :type expanded_source_address_prefix: list[str] + :param expanded_destination_address_prefix: Expanded destination address + prefix. + :type expanded_destination_address_prefix: list[str] + :param access: Whether network traffic is allowed or denied. Possible + values include: 'Allow', 'Deny' + :type access: str or + ~azure.mgmt.network.v2019_09_01.models.SecurityRuleAccess + :param priority: The priority of the rule. + :type priority: int + :param direction: The direction of the rule. Possible values include: + 'Inbound', 'Outbound' + :type direction: str or + ~azure.mgmt.network.v2019_09_01.models.SecurityRuleDirection + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'source_port_range': {'key': 'sourcePortRange', 'type': 'str'}, + 'destination_port_range': {'key': 'destinationPortRange', 'type': 'str'}, + 'source_port_ranges': {'key': 'sourcePortRanges', 'type': '[str]'}, + 'destination_port_ranges': {'key': 'destinationPortRanges', 'type': '[str]'}, + 'source_address_prefix': {'key': 'sourceAddressPrefix', 'type': 'str'}, + 'destination_address_prefix': {'key': 'destinationAddressPrefix', 'type': 'str'}, + 'source_address_prefixes': {'key': 'sourceAddressPrefixes', 'type': '[str]'}, + 'destination_address_prefixes': {'key': 'destinationAddressPrefixes', 'type': '[str]'}, + 'expanded_source_address_prefix': {'key': 'expandedSourceAddressPrefix', 'type': '[str]'}, + 'expanded_destination_address_prefix': {'key': 'expandedDestinationAddressPrefix', 'type': '[str]'}, + 'access': {'key': 'access', 'type': 'str'}, + 'priority': {'key': 'priority', 'type': 'int'}, + 'direction': {'key': 'direction', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, protocol=None, source_port_range: str=None, destination_port_range: str=None, source_port_ranges=None, destination_port_ranges=None, source_address_prefix: str=None, destination_address_prefix: str=None, source_address_prefixes=None, destination_address_prefixes=None, expanded_source_address_prefix=None, expanded_destination_address_prefix=None, access=None, priority: int=None, direction=None, **kwargs) -> None: + super(EffectiveNetworkSecurityRule, self).__init__(**kwargs) + self.name = name + self.protocol = protocol + self.source_port_range = source_port_range + self.destination_port_range = destination_port_range + self.source_port_ranges = source_port_ranges + self.destination_port_ranges = destination_port_ranges + self.source_address_prefix = source_address_prefix + self.destination_address_prefix = destination_address_prefix + self.source_address_prefixes = source_address_prefixes + self.destination_address_prefixes = destination_address_prefixes + self.expanded_source_address_prefix = expanded_source_address_prefix + self.expanded_destination_address_prefix = expanded_destination_address_prefix + self.access = access + self.priority = priority + self.direction = direction + + +class EffectiveRoute(Model): + """Effective Route. + + :param name: The name of the user defined route. This is optional. + :type name: str + :param disable_bgp_route_propagation: If true, on-premises routes are not + propagated to the network interfaces in the subnet. + :type disable_bgp_route_propagation: bool + :param source: Who created the route. Possible values include: 'Unknown', + 'User', 'VirtualNetworkGateway', 'Default' + :type source: str or + ~azure.mgmt.network.v2019_09_01.models.EffectiveRouteSource + :param state: The value of effective route. Possible values include: + 'Active', 'Invalid' + :type state: str or + ~azure.mgmt.network.v2019_09_01.models.EffectiveRouteState + :param address_prefix: The address prefixes of the effective routes in + CIDR notation. + :type address_prefix: list[str] + :param next_hop_ip_address: The IP address of the next hop of the + effective route. + :type next_hop_ip_address: list[str] + :param next_hop_type: The type of Azure hop the packet should be sent to. + Possible values include: 'VirtualNetworkGateway', 'VnetLocal', 'Internet', + 'VirtualAppliance', 'None' + :type next_hop_type: str or + ~azure.mgmt.network.v2019_09_01.models.RouteNextHopType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'disable_bgp_route_propagation': {'key': 'disableBgpRoutePropagation', 'type': 'bool'}, + 'source': {'key': 'source', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + 'address_prefix': {'key': 'addressPrefix', 'type': '[str]'}, + 'next_hop_ip_address': {'key': 'nextHopIpAddress', 'type': '[str]'}, + 'next_hop_type': {'key': 'nextHopType', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, disable_bgp_route_propagation: bool=None, source=None, state=None, address_prefix=None, next_hop_ip_address=None, next_hop_type=None, **kwargs) -> None: + super(EffectiveRoute, self).__init__(**kwargs) + self.name = name + self.disable_bgp_route_propagation = disable_bgp_route_propagation + self.source = source + self.state = state + self.address_prefix = address_prefix + self.next_hop_ip_address = next_hop_ip_address + self.next_hop_type = next_hop_type + + +class EffectiveRouteListResult(Model): + """Response for list effective route API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: A list of effective routes. + :type value: list[~azure.mgmt.network.v2019_09_01.models.EffectiveRoute] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[EffectiveRoute]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(EffectiveRouteListResult, self).__init__(**kwargs) + self.value = value + self.next_link = None + + +class EndpointServiceResult(SubResource): + """Endpoint service. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Name of the endpoint service. + :vartype name: str + :ivar type: Type of the endpoint service. + :vartype type: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(EndpointServiceResult, self).__init__(id=id, **kwargs) + self.name = None + self.type = None + + +class Error(Model): + """Common error representation. + + :param code: Error code. + :type code: str + :param message: Error message. + :type message: str + :param target: Error target. + :type target: str + :param details: Error details. + :type details: list[~azure.mgmt.network.v2019_09_01.models.ErrorDetails] + :param inner_error: Inner error message. + :type inner_error: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'details': {'key': 'details', 'type': '[ErrorDetails]'}, + 'inner_error': {'key': 'innerError', 'type': 'str'}, + } + + def __init__(self, *, code: str=None, message: str=None, target: str=None, details=None, inner_error: str=None, **kwargs) -> None: + super(Error, self).__init__(**kwargs) + self.code = code + self.message = message + self.target = target + self.details = details + self.inner_error = inner_error + + +class ErrorException(HttpOperationError): + """Server responsed with exception of type: 'Error'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorException, self).__init__(deserialize, response, 'Error', *args) + + +class ErrorDetails(Model): + """Common error details representation. + + :param code: Error code. + :type code: str + :param target: Error target. + :type target: str + :param message: Error message. + :type message: str + """ + + _attribute_map = { + 'code': {'key': 'code', 'type': 'str'}, + 'target': {'key': 'target', 'type': 'str'}, + 'message': {'key': 'message', 'type': 'str'}, + } + + def __init__(self, *, code: str=None, target: str=None, message: str=None, **kwargs) -> None: + super(ErrorDetails, self).__init__(**kwargs) + self.code = code + self.target = target + self.message = message + + +class ErrorResponse(Model): + """The error object. + + :param error: Error. The error details object. + :type error: ~azure.mgmt.network.v2019_09_01.models.ErrorDetails + """ + + _attribute_map = { + 'error': {'key': 'error', 'type': 'ErrorDetails'}, + } + + def __init__(self, *, error=None, **kwargs) -> None: + super(ErrorResponse, self).__init__(**kwargs) + self.error = error + + +class ErrorResponseException(HttpOperationError): + """Server responsed with exception of type: 'ErrorResponse'. + + :param deserialize: A deserializer + :param response: Server response to be deserialized. + """ + + def __init__(self, deserialize, response, *args): + + super(ErrorResponseException, self).__init__(deserialize, response, 'ErrorResponse', *args) + + +class EvaluatedNetworkSecurityGroup(Model): + """Results of network security group evaluation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param network_security_group_id: Network security group ID. + :type network_security_group_id: str + :param applied_to: Resource ID of nic or subnet to which network security + group is applied. + :type applied_to: str + :param matched_rule: Matched network security rule. + :type matched_rule: ~azure.mgmt.network.v2019_09_01.models.MatchedRule + :ivar rules_evaluation_result: List of network security rules evaluation + results. + :vartype rules_evaluation_result: + list[~azure.mgmt.network.v2019_09_01.models.NetworkSecurityRulesEvaluationResult] + """ + + _validation = { + 'rules_evaluation_result': {'readonly': True}, + } + + _attribute_map = { + 'network_security_group_id': {'key': 'networkSecurityGroupId', 'type': 'str'}, + 'applied_to': {'key': 'appliedTo', 'type': 'str'}, + 'matched_rule': {'key': 'matchedRule', 'type': 'MatchedRule'}, + 'rules_evaluation_result': {'key': 'rulesEvaluationResult', 'type': '[NetworkSecurityRulesEvaluationResult]'}, + } + + def __init__(self, *, network_security_group_id: str=None, applied_to: str=None, matched_rule=None, **kwargs) -> None: + super(EvaluatedNetworkSecurityGroup, self).__init__(**kwargs) + self.network_security_group_id = network_security_group_id + self.applied_to = applied_to + self.matched_rule = matched_rule + self.rules_evaluation_result = None + + +class ExpressRouteCircuit(Resource): + """ExpressRouteCircuit resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The SKU. + :type sku: ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitSku + :param allow_classic_operations: Allow classic operations. + :type allow_classic_operations: bool + :ivar circuit_provisioning_state: The CircuitProvisioningState state of + the resource. + :vartype circuit_provisioning_state: str + :ivar service_provider_provisioning_state: The + ServiceProviderProvisioningState state of the resource. Possible values + include: 'NotProvisioned', 'Provisioning', 'Provisioned', 'Deprovisioning' + :vartype service_provider_provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ServiceProviderProvisioningState + :param authorizations: The list of authorizations. + :type authorizations: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitAuthorization] + :param peerings: The list of peerings. + :type peerings: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeering] + :ivar service_key: The ServiceKey. + :vartype service_key: str + :param service_provider_notes: The ServiceProviderNotes. + :type service_provider_notes: str + :param service_provider_properties: The ServiceProviderProperties. + :type service_provider_properties: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitServiceProviderProperties + :param express_route_port: The reference to the ExpressRoutePort resource + when the circuit is provisioned on an ExpressRoutePort resource. + :type express_route_port: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param bandwidth_in_gbps: The bandwidth of the circuit when the circuit is + provisioned on an ExpressRoutePort resource. + :type bandwidth_in_gbps: float + :ivar stag: The identifier of the circuit traffic. Outer tag for QinQ + encapsulation. + :vartype stag: int + :ivar provisioning_state: The provisioning state of the express route + circuit resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param gateway_manager_etag: The GatewayManager Etag. + :type gateway_manager_etag: str + :ivar global_reach_enabled: Flag denoting Global reach status. + :vartype global_reach_enabled: bool + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'circuit_provisioning_state': {'readonly': True}, + 'service_provider_provisioning_state': {'readonly': True}, + 'service_key': {'readonly': True}, + 'stag': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'global_reach_enabled': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'ExpressRouteCircuitSku'}, + 'allow_classic_operations': {'key': 'properties.allowClassicOperations', 'type': 'bool'}, + 'circuit_provisioning_state': {'key': 'properties.circuitProvisioningState', 'type': 'str'}, + 'service_provider_provisioning_state': {'key': 'properties.serviceProviderProvisioningState', 'type': 'str'}, + 'authorizations': {'key': 'properties.authorizations', 'type': '[ExpressRouteCircuitAuthorization]'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'service_key': {'key': 'properties.serviceKey', 'type': 'str'}, + 'service_provider_notes': {'key': 'properties.serviceProviderNotes', 'type': 'str'}, + 'service_provider_properties': {'key': 'properties.serviceProviderProperties', 'type': 'ExpressRouteCircuitServiceProviderProperties'}, + 'express_route_port': {'key': 'properties.expressRoutePort', 'type': 'SubResource'}, + 'bandwidth_in_gbps': {'key': 'properties.bandwidthInGbps', 'type': 'float'}, + 'stag': {'key': 'properties.stag', 'type': 'int'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'gateway_manager_etag': {'key': 'properties.gatewayManagerEtag', 'type': 'str'}, + 'global_reach_enabled': {'key': 'properties.globalReachEnabled', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, sku=None, allow_classic_operations: bool=None, authorizations=None, peerings=None, service_provider_notes: str=None, service_provider_properties=None, express_route_port=None, bandwidth_in_gbps: float=None, gateway_manager_etag: str=None, **kwargs) -> None: + super(ExpressRouteCircuit, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.sku = sku + self.allow_classic_operations = allow_classic_operations + self.circuit_provisioning_state = None + self.service_provider_provisioning_state = None + self.authorizations = authorizations + self.peerings = peerings + self.service_key = None + self.service_provider_notes = service_provider_notes + self.service_provider_properties = service_provider_properties + self.express_route_port = express_route_port + self.bandwidth_in_gbps = bandwidth_in_gbps + self.stag = None + self.provisioning_state = None + self.gateway_manager_etag = gateway_manager_etag + self.global_reach_enabled = None + self.etag = None + + +class ExpressRouteCircuitArpTable(Model): + """The ARP table associated with the ExpressRouteCircuit. + + :param age: Entry age in minutes. + :type age: int + :param interface: Interface address. + :type interface: str + :param ip_address: The IP address. + :type ip_address: str + :param mac_address: The MAC address. + :type mac_address: str + """ + + _attribute_map = { + 'age': {'key': 'age', 'type': 'int'}, + 'interface': {'key': 'interface', 'type': 'str'}, + 'ip_address': {'key': 'ipAddress', 'type': 'str'}, + 'mac_address': {'key': 'macAddress', 'type': 'str'}, + } + + def __init__(self, *, age: int=None, interface: str=None, ip_address: str=None, mac_address: str=None, **kwargs) -> None: + super(ExpressRouteCircuitArpTable, self).__init__(**kwargs) + self.age = age + self.interface = interface + self.ip_address = ip_address + self.mac_address = mac_address + + +class ExpressRouteCircuitAuthorization(SubResource): + """Authorization in an ExpressRouteCircuit resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar authorization_key: The authorization key. + :vartype authorization_key: str + :ivar authorization_use_status: The authorization use status. Possible + values include: 'Available', 'InUse' + :vartype authorization_use_status: str or + ~azure.mgmt.network.v2019_09_01.models.AuthorizationUseStatus + :ivar provisioning_state: The provisioning state of the authorization + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'authorization_key': {'readonly': True}, + 'authorization_use_status': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'authorization_use_status': {'key': 'properties.authorizationUseStatus', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, name: str=None, **kwargs) -> None: + super(ExpressRouteCircuitAuthorization, self).__init__(id=id, **kwargs) + self.authorization_key = None + self.authorization_use_status = None + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class ExpressRouteCircuitConnection(SubResource): + """Express Route Circuit Connection in an ExpressRouteCircuitPeering resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param express_route_circuit_peering: Reference to Express Route Circuit + Private Peering Resource of the circuit initiating connection. + :type express_route_circuit_peering: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param peer_express_route_circuit_peering: Reference to Express Route + Circuit Private Peering Resource of the peered circuit. + :type peer_express_route_circuit_peering: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param address_prefix: /29 IP address space to carve out Customer + addresses for tunnels. + :type address_prefix: str + :param authorization_key: The authorization key. + :type authorization_key: str + :ivar circuit_connection_status: Express Route Circuit connection state. + Possible values include: 'Connected', 'Connecting', 'Disconnected' + :vartype circuit_connection_status: str or + ~azure.mgmt.network.v2019_09_01.models.CircuitConnectionStatus + :ivar provisioning_state: The provisioning state of the express route + circuit connection resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'circuit_connection_status': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'express_route_circuit_peering': {'key': 'properties.expressRouteCircuitPeering', 'type': 'SubResource'}, + 'peer_express_route_circuit_peering': {'key': 'properties.peerExpressRouteCircuitPeering', 'type': 'SubResource'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'circuit_connection_status': {'key': 'properties.circuitConnectionStatus', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, express_route_circuit_peering=None, peer_express_route_circuit_peering=None, address_prefix: str=None, authorization_key: str=None, name: str=None, **kwargs) -> None: + super(ExpressRouteCircuitConnection, self).__init__(id=id, **kwargs) + self.express_route_circuit_peering = express_route_circuit_peering + self.peer_express_route_circuit_peering = peer_express_route_circuit_peering + self.address_prefix = address_prefix + self.authorization_key = authorization_key + self.circuit_connection_status = None + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class ExpressRouteCircuitPeering(SubResource): + """Peering in an ExpressRouteCircuit resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param peering_type: The peering type. Possible values include: + 'AzurePublicPeering', 'AzurePrivatePeering', 'MicrosoftPeering' + :type peering_type: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRoutePeeringType + :param state: The peering state. Possible values include: 'Disabled', + 'Enabled' + :type state: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRoutePeeringState + :ivar azure_asn: The Azure ASN. + :vartype azure_asn: int + :param peer_asn: The peer ASN. + :type peer_asn: long + :param primary_peer_address_prefix: The primary address prefix. + :type primary_peer_address_prefix: str + :param secondary_peer_address_prefix: The secondary address prefix. + :type secondary_peer_address_prefix: str + :ivar primary_azure_port: The primary port. + :vartype primary_azure_port: str + :ivar secondary_azure_port: The secondary port. + :vartype secondary_azure_port: str + :param shared_key: The shared key. + :type shared_key: str + :param vlan_id: The VLAN ID. + :type vlan_id: int + :param microsoft_peering_config: The Microsoft peering configuration. + :type microsoft_peering_config: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeeringConfig + :param stats: The peering stats of express route circuit. + :type stats: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitStats + :ivar provisioning_state: The provisioning state of the express route + circuit peering resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param gateway_manager_etag: The GatewayManager Etag. + :type gateway_manager_etag: str + :ivar last_modified_by: Who was the last to modify the peering. + :vartype last_modified_by: str + :param route_filter: The reference of the RouteFilter resource. + :type route_filter: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param ipv6_peering_config: The IPv6 peering configuration. + :type ipv6_peering_config: + ~azure.mgmt.network.v2019_09_01.models.Ipv6ExpressRouteCircuitPeeringConfig + :param express_route_connection: The ExpressRoute connection. + :type express_route_connection: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteConnectionId + :ivar connections: The list of circuit connections associated with Azure + Private Peering for this circuit. + :vartype connections: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitConnection] + :ivar peered_connections: The list of peered circuit connections + associated with Azure Private Peering for this circuit. + :vartype peered_connections: + list[~azure.mgmt.network.v2019_09_01.models.PeerExpressRouteCircuitConnection] + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'azure_asn': {'readonly': True}, + 'peer_asn': {'maximum': 4294967295, 'minimum': 1}, + 'primary_azure_port': {'readonly': True}, + 'secondary_azure_port': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'last_modified_by': {'readonly': True}, + 'connections': {'readonly': True}, + 'peered_connections': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'peering_type': {'key': 'properties.peeringType', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'azure_asn': {'key': 'properties.azureASN', 'type': 'int'}, + 'peer_asn': {'key': 'properties.peerASN', 'type': 'long'}, + 'primary_peer_address_prefix': {'key': 'properties.primaryPeerAddressPrefix', 'type': 'str'}, + 'secondary_peer_address_prefix': {'key': 'properties.secondaryPeerAddressPrefix', 'type': 'str'}, + 'primary_azure_port': {'key': 'properties.primaryAzurePort', 'type': 'str'}, + 'secondary_azure_port': {'key': 'properties.secondaryAzurePort', 'type': 'str'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'vlan_id': {'key': 'properties.vlanId', 'type': 'int'}, + 'microsoft_peering_config': {'key': 'properties.microsoftPeeringConfig', 'type': 'ExpressRouteCircuitPeeringConfig'}, + 'stats': {'key': 'properties.stats', 'type': 'ExpressRouteCircuitStats'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'gateway_manager_etag': {'key': 'properties.gatewayManagerEtag', 'type': 'str'}, + 'last_modified_by': {'key': 'properties.lastModifiedBy', 'type': 'str'}, + 'route_filter': {'key': 'properties.routeFilter', 'type': 'SubResource'}, + 'ipv6_peering_config': {'key': 'properties.ipv6PeeringConfig', 'type': 'Ipv6ExpressRouteCircuitPeeringConfig'}, + 'express_route_connection': {'key': 'properties.expressRouteConnection', 'type': 'ExpressRouteConnectionId'}, + 'connections': {'key': 'properties.connections', 'type': '[ExpressRouteCircuitConnection]'}, + 'peered_connections': {'key': 'properties.peeredConnections', 'type': '[PeerExpressRouteCircuitConnection]'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, peering_type=None, state=None, peer_asn: int=None, primary_peer_address_prefix: str=None, secondary_peer_address_prefix: str=None, shared_key: str=None, vlan_id: int=None, microsoft_peering_config=None, stats=None, gateway_manager_etag: str=None, route_filter=None, ipv6_peering_config=None, express_route_connection=None, name: str=None, **kwargs) -> None: + super(ExpressRouteCircuitPeering, self).__init__(id=id, **kwargs) + self.peering_type = peering_type + self.state = state + self.azure_asn = None + self.peer_asn = peer_asn + self.primary_peer_address_prefix = primary_peer_address_prefix + self.secondary_peer_address_prefix = secondary_peer_address_prefix + self.primary_azure_port = None + self.secondary_azure_port = None + self.shared_key = shared_key + self.vlan_id = vlan_id + self.microsoft_peering_config = microsoft_peering_config + self.stats = stats + self.provisioning_state = None + self.gateway_manager_etag = gateway_manager_etag + self.last_modified_by = None + self.route_filter = route_filter + self.ipv6_peering_config = ipv6_peering_config + self.express_route_connection = express_route_connection + self.connections = None + self.peered_connections = None + self.name = name + self.etag = None + self.type = None + + +class ExpressRouteCircuitPeeringConfig(Model): + """Specifies the peering configuration. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param advertised_public_prefixes: The reference of + AdvertisedPublicPrefixes. + :type advertised_public_prefixes: list[str] + :param advertised_communities: The communities of bgp peering. Specified + for microsoft peering. + :type advertised_communities: list[str] + :ivar advertised_public_prefixes_state: The advertised public prefix state + of the Peering resource. Possible values include: 'NotConfigured', + 'Configuring', 'Configured', 'ValidationNeeded' + :vartype advertised_public_prefixes_state: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeeringAdvertisedPublicPrefixState + :param legacy_mode: The legacy mode of the peering. + :type legacy_mode: int + :param customer_asn: The CustomerASN of the peering. + :type customer_asn: int + :param routing_registry_name: The RoutingRegistryName of the + configuration. + :type routing_registry_name: str + """ + + _validation = { + 'advertised_public_prefixes_state': {'readonly': True}, + } + + _attribute_map = { + 'advertised_public_prefixes': {'key': 'advertisedPublicPrefixes', 'type': '[str]'}, + 'advertised_communities': {'key': 'advertisedCommunities', 'type': '[str]'}, + 'advertised_public_prefixes_state': {'key': 'advertisedPublicPrefixesState', 'type': 'str'}, + 'legacy_mode': {'key': 'legacyMode', 'type': 'int'}, + 'customer_asn': {'key': 'customerASN', 'type': 'int'}, + 'routing_registry_name': {'key': 'routingRegistryName', 'type': 'str'}, + } + + def __init__(self, *, advertised_public_prefixes=None, advertised_communities=None, legacy_mode: int=None, customer_asn: int=None, routing_registry_name: str=None, **kwargs) -> None: + super(ExpressRouteCircuitPeeringConfig, self).__init__(**kwargs) + self.advertised_public_prefixes = advertised_public_prefixes + self.advertised_communities = advertised_communities + self.advertised_public_prefixes_state = None + self.legacy_mode = legacy_mode + self.customer_asn = customer_asn + self.routing_registry_name = routing_registry_name + + +class ExpressRouteCircuitPeeringId(Model): + """ExpressRoute circuit peering identifier. + + :param id: The ID of the ExpressRoute circuit peering. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(ExpressRouteCircuitPeeringId, self).__init__(**kwargs) + self.id = id + + +class ExpressRouteCircuitReference(Model): + """Reference to an express route circuit. + + :param id: Corresponding Express Route Circuit Id. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(ExpressRouteCircuitReference, self).__init__(**kwargs) + self.id = id + + +class ExpressRouteCircuitRoutesTable(Model): + """The routes table associated with the ExpressRouteCircuit. + + :param network: IP address of a network entity. + :type network: str + :param next_hop: NextHop address. + :type next_hop: str + :param loc_prf: Local preference value as set with the set + local-preference route-map configuration command. + :type loc_prf: str + :param weight: Route Weight. + :type weight: int + :param path: Autonomous system paths to the destination network. + :type path: str + """ + + _attribute_map = { + 'network': {'key': 'network', 'type': 'str'}, + 'next_hop': {'key': 'nextHop', 'type': 'str'}, + 'loc_prf': {'key': 'locPrf', 'type': 'str'}, + 'weight': {'key': 'weight', 'type': 'int'}, + 'path': {'key': 'path', 'type': 'str'}, + } + + def __init__(self, *, network: str=None, next_hop: str=None, loc_prf: str=None, weight: int=None, path: str=None, **kwargs) -> None: + super(ExpressRouteCircuitRoutesTable, self).__init__(**kwargs) + self.network = network + self.next_hop = next_hop + self.loc_prf = loc_prf + self.weight = weight + self.path = path + + +class ExpressRouteCircuitRoutesTableSummary(Model): + """The routes table associated with the ExpressRouteCircuit. + + :param neighbor: IP address of the neighbor. + :type neighbor: str + :param v: BGP version number spoken to the neighbor. + :type v: int + :param as_property: Autonomous system number. + :type as_property: int + :param up_down: The length of time that the BGP session has been in the + Established state, or the current status if not in the Established state. + :type up_down: str + :param state_pfx_rcd: Current state of the BGP session, and the number of + prefixes that have been received from a neighbor or peer group. + :type state_pfx_rcd: str + """ + + _attribute_map = { + 'neighbor': {'key': 'neighbor', 'type': 'str'}, + 'v': {'key': 'v', 'type': 'int'}, + 'as_property': {'key': 'as', 'type': 'int'}, + 'up_down': {'key': 'upDown', 'type': 'str'}, + 'state_pfx_rcd': {'key': 'statePfxRcd', 'type': 'str'}, + } + + def __init__(self, *, neighbor: str=None, v: int=None, as_property: int=None, up_down: str=None, state_pfx_rcd: str=None, **kwargs) -> None: + super(ExpressRouteCircuitRoutesTableSummary, self).__init__(**kwargs) + self.neighbor = neighbor + self.v = v + self.as_property = as_property + self.up_down = up_down + self.state_pfx_rcd = state_pfx_rcd + + +class ExpressRouteCircuitsArpTableListResult(Model): + """Response for ListArpTable associated with the Express Route Circuits API. + + :param value: A list of the ARP tables. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitArpTable] + :param next_link: The URL to get the next set of results. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCircuitArpTable]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, next_link: str=None, **kwargs) -> None: + super(ExpressRouteCircuitsArpTableListResult, self).__init__(**kwargs) + self.value = value + self.next_link = next_link + + +class ExpressRouteCircuitServiceProviderProperties(Model): + """Contains ServiceProviderProperties in an ExpressRouteCircuit. + + :param service_provider_name: The serviceProviderName. + :type service_provider_name: str + :param peering_location: The peering location. + :type peering_location: str + :param bandwidth_in_mbps: The BandwidthInMbps. + :type bandwidth_in_mbps: int + """ + + _attribute_map = { + 'service_provider_name': {'key': 'serviceProviderName', 'type': 'str'}, + 'peering_location': {'key': 'peeringLocation', 'type': 'str'}, + 'bandwidth_in_mbps': {'key': 'bandwidthInMbps', 'type': 'int'}, + } + + def __init__(self, *, service_provider_name: str=None, peering_location: str=None, bandwidth_in_mbps: int=None, **kwargs) -> None: + super(ExpressRouteCircuitServiceProviderProperties, self).__init__(**kwargs) + self.service_provider_name = service_provider_name + self.peering_location = peering_location + self.bandwidth_in_mbps = bandwidth_in_mbps + + +class ExpressRouteCircuitSku(Model): + """Contains SKU in an ExpressRouteCircuit. + + :param name: The name of the SKU. + :type name: str + :param tier: The tier of the SKU. Possible values include: 'Standard', + 'Premium', 'Basic', 'Local' + :type tier: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitSkuTier + :param family: The family of the SKU. Possible values include: + 'UnlimitedData', 'MeteredData' + :type family: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitSkuFamily + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'family': {'key': 'family', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, tier=None, family=None, **kwargs) -> None: + super(ExpressRouteCircuitSku, self).__init__(**kwargs) + self.name = name + self.tier = tier + self.family = family + + +class ExpressRouteCircuitsRoutesTableListResult(Model): + """Response for ListRoutesTable associated with the Express Route Circuits + API. + + :param value: The list of routes table. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitRoutesTable] + :param next_link: The URL to get the next set of results. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCircuitRoutesTable]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, next_link: str=None, **kwargs) -> None: + super(ExpressRouteCircuitsRoutesTableListResult, self).__init__(**kwargs) + self.value = value + self.next_link = next_link + + +class ExpressRouteCircuitsRoutesTableSummaryListResult(Model): + """Response for ListRoutesTable associated with the Express Route Circuits + API. + + :param value: A list of the routes table. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitRoutesTableSummary] + :param next_link: The URL to get the next set of results. + :type next_link: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCircuitRoutesTableSummary]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, next_link: str=None, **kwargs) -> None: + super(ExpressRouteCircuitsRoutesTableSummaryListResult, self).__init__(**kwargs) + self.value = value + self.next_link = next_link + + +class ExpressRouteCircuitStats(Model): + """Contains stats associated with the peering. + + :param primarybytes_in: The Primary BytesIn of the peering. + :type primarybytes_in: long + :param primarybytes_out: The primary BytesOut of the peering. + :type primarybytes_out: long + :param secondarybytes_in: The secondary BytesIn of the peering. + :type secondarybytes_in: long + :param secondarybytes_out: The secondary BytesOut of the peering. + :type secondarybytes_out: long + """ + + _attribute_map = { + 'primarybytes_in': {'key': 'primarybytesIn', 'type': 'long'}, + 'primarybytes_out': {'key': 'primarybytesOut', 'type': 'long'}, + 'secondarybytes_in': {'key': 'secondarybytesIn', 'type': 'long'}, + 'secondarybytes_out': {'key': 'secondarybytesOut', 'type': 'long'}, + } + + def __init__(self, *, primarybytes_in: int=None, primarybytes_out: int=None, secondarybytes_in: int=None, secondarybytes_out: int=None, **kwargs) -> None: + super(ExpressRouteCircuitStats, self).__init__(**kwargs) + self.primarybytes_in = primarybytes_in + self.primarybytes_out = primarybytes_out + self.secondarybytes_in = secondarybytes_in + self.secondarybytes_out = secondarybytes_out + + +class ExpressRouteConnection(SubResource): + """ExpressRouteConnection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :ivar provisioning_state: The provisioning state of the express route + connection resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param express_route_circuit_peering: Required. The ExpressRoute circuit + peering. + :type express_route_circuit_peering: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeeringId + :param authorization_key: Authorization key to establish the connection. + :type authorization_key: str + :param routing_weight: The routing weight associated to the connection. + :type routing_weight: int + :param enable_internet_security: Enable internet security. + :type enable_internet_security: bool + :param name: Required. The name of the resource. + :type name: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'express_route_circuit_peering': {'required': True}, + 'name': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'express_route_circuit_peering': {'key': 'properties.expressRouteCircuitPeering', 'type': 'ExpressRouteCircuitPeeringId'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'enable_internet_security': {'key': 'properties.enableInternetSecurity', 'type': 'bool'}, + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, express_route_circuit_peering, name: str, id: str=None, authorization_key: str=None, routing_weight: int=None, enable_internet_security: bool=None, **kwargs) -> None: + super(ExpressRouteConnection, self).__init__(id=id, **kwargs) + self.provisioning_state = None + self.express_route_circuit_peering = express_route_circuit_peering + self.authorization_key = authorization_key + self.routing_weight = routing_weight + self.enable_internet_security = enable_internet_security + self.name = name + + +class ExpressRouteConnectionId(Model): + """The ID of the ExpressRouteConnection. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: The ID of the ExpressRouteConnection. + :vartype id: str + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(ExpressRouteConnectionId, self).__init__(**kwargs) + self.id = None + + +class ExpressRouteConnectionList(Model): + """ExpressRouteConnection list. + + :param value: The list of ExpressRoute connections. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteConnection] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteConnection]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(ExpressRouteConnectionList, self).__init__(**kwargs) + self.value = value + + +class ExpressRouteCrossConnection(Resource): + """ExpressRouteCrossConnection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar primary_azure_port: The name of the primary port. + :vartype primary_azure_port: str + :ivar secondary_azure_port: The name of the secondary port. + :vartype secondary_azure_port: str + :ivar s_tag: The identifier of the circuit traffic. + :vartype s_tag: int + :param peering_location: The peering location of the ExpressRoute circuit. + :type peering_location: str + :param bandwidth_in_mbps: The circuit bandwidth In Mbps. + :type bandwidth_in_mbps: int + :param express_route_circuit: The ExpressRouteCircuit. + :type express_route_circuit: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitReference + :param service_provider_provisioning_state: The provisioning state of the + circuit in the connectivity provider system. Possible values include: + 'NotProvisioned', 'Provisioning', 'Provisioned', 'Deprovisioning' + :type service_provider_provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ServiceProviderProvisioningState + :param service_provider_notes: Additional read only notes set by the + connectivity provider. + :type service_provider_notes: str + :ivar provisioning_state: The provisioning state of the express route + cross connection resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param peerings: The list of peerings. + :type peerings: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnectionPeering] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'primary_azure_port': {'readonly': True}, + 'secondary_azure_port': {'readonly': True}, + 's_tag': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'primary_azure_port': {'key': 'properties.primaryAzurePort', 'type': 'str'}, + 'secondary_azure_port': {'key': 'properties.secondaryAzurePort', 'type': 'str'}, + 's_tag': {'key': 'properties.sTag', 'type': 'int'}, + 'peering_location': {'key': 'properties.peeringLocation', 'type': 'str'}, + 'bandwidth_in_mbps': {'key': 'properties.bandwidthInMbps', 'type': 'int'}, + 'express_route_circuit': {'key': 'properties.expressRouteCircuit', 'type': 'ExpressRouteCircuitReference'}, + 'service_provider_provisioning_state': {'key': 'properties.serviceProviderProvisioningState', 'type': 'str'}, + 'service_provider_notes': {'key': 'properties.serviceProviderNotes', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCrossConnectionPeering]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, peering_location: str=None, bandwidth_in_mbps: int=None, express_route_circuit=None, service_provider_provisioning_state=None, service_provider_notes: str=None, peerings=None, **kwargs) -> None: + super(ExpressRouteCrossConnection, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.primary_azure_port = None + self.secondary_azure_port = None + self.s_tag = None + self.peering_location = peering_location + self.bandwidth_in_mbps = bandwidth_in_mbps + self.express_route_circuit = express_route_circuit + self.service_provider_provisioning_state = service_provider_provisioning_state + self.service_provider_notes = service_provider_notes + self.provisioning_state = None + self.peerings = peerings + self.etag = None + + +class ExpressRouteCrossConnectionPeering(SubResource): + """Peering in an ExpressRoute Cross Connection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param peering_type: The peering type. Possible values include: + 'AzurePublicPeering', 'AzurePrivatePeering', 'MicrosoftPeering' + :type peering_type: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRoutePeeringType + :param state: The peering state. Possible values include: 'Disabled', + 'Enabled' + :type state: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRoutePeeringState + :ivar azure_asn: The Azure ASN. + :vartype azure_asn: int + :param peer_asn: The peer ASN. + :type peer_asn: long + :param primary_peer_address_prefix: The primary address prefix. + :type primary_peer_address_prefix: str + :param secondary_peer_address_prefix: The secondary address prefix. + :type secondary_peer_address_prefix: str + :ivar primary_azure_port: The primary port. + :vartype primary_azure_port: str + :ivar secondary_azure_port: The secondary port. + :vartype secondary_azure_port: str + :param shared_key: The shared key. + :type shared_key: str + :param vlan_id: The VLAN ID. + :type vlan_id: int + :param microsoft_peering_config: The Microsoft peering configuration. + :type microsoft_peering_config: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeeringConfig + :ivar provisioning_state: The provisioning state of the express route + cross connection peering resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param gateway_manager_etag: The GatewayManager Etag. + :type gateway_manager_etag: str + :ivar last_modified_by: Who was the last to modify the peering. + :vartype last_modified_by: str + :param ipv6_peering_config: The IPv6 peering configuration. + :type ipv6_peering_config: + ~azure.mgmt.network.v2019_09_01.models.Ipv6ExpressRouteCircuitPeeringConfig + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'azure_asn': {'readonly': True}, + 'peer_asn': {'maximum': 4294967295, 'minimum': 1}, + 'primary_azure_port': {'readonly': True}, + 'secondary_azure_port': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'last_modified_by': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'peering_type': {'key': 'properties.peeringType', 'type': 'str'}, + 'state': {'key': 'properties.state', 'type': 'str'}, + 'azure_asn': {'key': 'properties.azureASN', 'type': 'int'}, + 'peer_asn': {'key': 'properties.peerASN', 'type': 'long'}, + 'primary_peer_address_prefix': {'key': 'properties.primaryPeerAddressPrefix', 'type': 'str'}, + 'secondary_peer_address_prefix': {'key': 'properties.secondaryPeerAddressPrefix', 'type': 'str'}, + 'primary_azure_port': {'key': 'properties.primaryAzurePort', 'type': 'str'}, + 'secondary_azure_port': {'key': 'properties.secondaryAzurePort', 'type': 'str'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'vlan_id': {'key': 'properties.vlanId', 'type': 'int'}, + 'microsoft_peering_config': {'key': 'properties.microsoftPeeringConfig', 'type': 'ExpressRouteCircuitPeeringConfig'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'gateway_manager_etag': {'key': 'properties.gatewayManagerEtag', 'type': 'str'}, + 'last_modified_by': {'key': 'properties.lastModifiedBy', 'type': 'str'}, + 'ipv6_peering_config': {'key': 'properties.ipv6PeeringConfig', 'type': 'Ipv6ExpressRouteCircuitPeeringConfig'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, peering_type=None, state=None, peer_asn: int=None, primary_peer_address_prefix: str=None, secondary_peer_address_prefix: str=None, shared_key: str=None, vlan_id: int=None, microsoft_peering_config=None, gateway_manager_etag: str=None, ipv6_peering_config=None, name: str=None, **kwargs) -> None: + super(ExpressRouteCrossConnectionPeering, self).__init__(id=id, **kwargs) + self.peering_type = peering_type + self.state = state + self.azure_asn = None + self.peer_asn = peer_asn + self.primary_peer_address_prefix = primary_peer_address_prefix + self.secondary_peer_address_prefix = secondary_peer_address_prefix + self.primary_azure_port = None + self.secondary_azure_port = None + self.shared_key = shared_key + self.vlan_id = vlan_id + self.microsoft_peering_config = microsoft_peering_config + self.provisioning_state = None + self.gateway_manager_etag = gateway_manager_etag + self.last_modified_by = None + self.ipv6_peering_config = ipv6_peering_config + self.name = name + self.etag = None + + +class ExpressRouteCrossConnectionRoutesTableSummary(Model): + """The routes table associated with the ExpressRouteCircuit. + + :param neighbor: IP address of Neighbor router. + :type neighbor: str + :param asn: Autonomous system number. + :type asn: int + :param up_down: The length of time that the BGP session has been in the + Established state, or the current status if not in the Established state. + :type up_down: str + :param state_or_prefixes_received: Current state of the BGP session, and + the number of prefixes that have been received from a neighbor or peer + group. + :type state_or_prefixes_received: str + """ + + _attribute_map = { + 'neighbor': {'key': 'neighbor', 'type': 'str'}, + 'asn': {'key': 'asn', 'type': 'int'}, + 'up_down': {'key': 'upDown', 'type': 'str'}, + 'state_or_prefixes_received': {'key': 'stateOrPrefixesReceived', 'type': 'str'}, + } + + def __init__(self, *, neighbor: str=None, asn: int=None, up_down: str=None, state_or_prefixes_received: str=None, **kwargs) -> None: + super(ExpressRouteCrossConnectionRoutesTableSummary, self).__init__(**kwargs) + self.neighbor = neighbor + self.asn = asn + self.up_down = up_down + self.state_or_prefixes_received = state_or_prefixes_received + + +class ExpressRouteCrossConnectionsRoutesTableSummaryListResult(Model): + """Response for ListRoutesTable associated with the Express Route Cross + Connections. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: A list of the routes table. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnectionRoutesTableSummary] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteCrossConnectionRoutesTableSummary]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(ExpressRouteCrossConnectionsRoutesTableSummaryListResult, self).__init__(**kwargs) + self.value = value + self.next_link = None + + +class ExpressRouteGateway(Resource): + """ExpressRoute gateway resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param auto_scale_configuration: Configuration for auto scaling. + :type auto_scale_configuration: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteGatewayPropertiesAutoScaleConfiguration + :ivar express_route_connections: List of ExpressRoute connections to the + ExpressRoute gateway. + :vartype express_route_connections: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteConnection] + :ivar provisioning_state: The provisioning state of the express route + gateway resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param virtual_hub: Required. The Virtual Hub where the ExpressRoute + gateway is or will be deployed. + :type virtual_hub: ~azure.mgmt.network.v2019_09_01.models.VirtualHubId + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'express_route_connections': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'virtual_hub': {'required': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'auto_scale_configuration': {'key': 'properties.autoScaleConfiguration', 'type': 'ExpressRouteGatewayPropertiesAutoScaleConfiguration'}, + 'express_route_connections': {'key': 'properties.expressRouteConnections', 'type': '[ExpressRouteConnection]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'virtual_hub': {'key': 'properties.virtualHub', 'type': 'VirtualHubId'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, virtual_hub, id: str=None, location: str=None, tags=None, auto_scale_configuration=None, **kwargs) -> None: + super(ExpressRouteGateway, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.auto_scale_configuration = auto_scale_configuration + self.express_route_connections = None + self.provisioning_state = None + self.virtual_hub = virtual_hub + self.etag = None + + +class ExpressRouteGatewayList(Model): + """List of ExpressRoute gateways. + + :param value: List of ExpressRoute gateways. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteGateway] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ExpressRouteGateway]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(ExpressRouteGatewayList, self).__init__(**kwargs) + self.value = value + + +class ExpressRouteGatewayPropertiesAutoScaleConfiguration(Model): + """Configuration for auto scaling. + + :param bounds: Minimum and maximum number of scale units to deploy. + :type bounds: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds + """ + + _attribute_map = { + 'bounds': {'key': 'bounds', 'type': 'ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds'}, + } + + def __init__(self, *, bounds=None, **kwargs) -> None: + super(ExpressRouteGatewayPropertiesAutoScaleConfiguration, self).__init__(**kwargs) + self.bounds = bounds + + +class ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds(Model): + """Minimum and maximum number of scale units to deploy. + + :param min: Minimum number of scale units deployed for ExpressRoute + gateway. + :type min: int + :param max: Maximum number of scale units deployed for ExpressRoute + gateway. + :type max: int + """ + + _attribute_map = { + 'min': {'key': 'min', 'type': 'int'}, + 'max': {'key': 'max', 'type': 'int'}, + } + + def __init__(self, *, min: int=None, max: int=None, **kwargs) -> None: + super(ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds, self).__init__(**kwargs) + self.min = min + self.max = max + + +class ExpressRouteLink(SubResource): + """ExpressRouteLink. + + ExpressRouteLink child resource definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar router_name: Name of Azure router associated with physical port. + :vartype router_name: str + :ivar interface_name: Name of Azure router interface. + :vartype interface_name: str + :ivar patch_panel_id: Mapping between physical port to patch panel port. + :vartype patch_panel_id: str + :ivar rack_id: Mapping of physical patch panel to rack. + :vartype rack_id: str + :ivar connector_type: Physical fiber port type. Possible values include: + 'LC', 'SC' + :vartype connector_type: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteLinkConnectorType + :param admin_state: Administrative state of the physical port. Possible + values include: 'Enabled', 'Disabled' + :type admin_state: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteLinkAdminState + :ivar provisioning_state: The provisioning state of the express route link + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param mac_sec_config: MacSec configuration. + :type mac_sec_config: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteLinkMacSecConfig + :param name: Name of child port resource that is unique among child port + resources of the parent. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'router_name': {'readonly': True}, + 'interface_name': {'readonly': True}, + 'patch_panel_id': {'readonly': True}, + 'rack_id': {'readonly': True}, + 'connector_type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'router_name': {'key': 'properties.routerName', 'type': 'str'}, + 'interface_name': {'key': 'properties.interfaceName', 'type': 'str'}, + 'patch_panel_id': {'key': 'properties.patchPanelId', 'type': 'str'}, + 'rack_id': {'key': 'properties.rackId', 'type': 'str'}, + 'connector_type': {'key': 'properties.connectorType', 'type': 'str'}, + 'admin_state': {'key': 'properties.adminState', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'mac_sec_config': {'key': 'properties.macSecConfig', 'type': 'ExpressRouteLinkMacSecConfig'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, admin_state=None, mac_sec_config=None, name: str=None, **kwargs) -> None: + super(ExpressRouteLink, self).__init__(id=id, **kwargs) + self.router_name = None + self.interface_name = None + self.patch_panel_id = None + self.rack_id = None + self.connector_type = None + self.admin_state = admin_state + self.provisioning_state = None + self.mac_sec_config = mac_sec_config + self.name = name + self.etag = None + + +class ExpressRouteLinkMacSecConfig(Model): + """Definition of ExpressRouteLink Mac Security configuration. + + ExpressRouteLink Mac Security Configuration. + + :param ckn_secret_identifier: Keyvault Secret Identifier URL containing + Mac security CKN key. + :type ckn_secret_identifier: str + :param cak_secret_identifier: Keyvault Secret Identifier URL containing + Mac security CAK key. + :type cak_secret_identifier: str + :param cipher: Mac security cipher. Possible values include: + 'gcm-aes-128', 'gcm-aes-256' + :type cipher: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteLinkMacSecCipher + """ + + _attribute_map = { + 'ckn_secret_identifier': {'key': 'cknSecretIdentifier', 'type': 'str'}, + 'cak_secret_identifier': {'key': 'cakSecretIdentifier', 'type': 'str'}, + 'cipher': {'key': 'cipher', 'type': 'str'}, + } + + def __init__(self, *, ckn_secret_identifier: str=None, cak_secret_identifier: str=None, cipher=None, **kwargs) -> None: + super(ExpressRouteLinkMacSecConfig, self).__init__(**kwargs) + self.ckn_secret_identifier = ckn_secret_identifier + self.cak_secret_identifier = cak_secret_identifier + self.cipher = cipher + + +class ExpressRoutePort(Resource): + """ExpressRoute Port. + + ExpressRoutePort resource definition. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param peering_location: The name of the peering location that the + ExpressRoutePort is mapped to physically. + :type peering_location: str + :param bandwidth_in_gbps: Bandwidth of procured ports in Gbps. + :type bandwidth_in_gbps: int + :ivar provisioned_bandwidth_in_gbps: Aggregate Gbps of associated circuit + bandwidths. + :vartype provisioned_bandwidth_in_gbps: float + :ivar mtu: Maximum transmission unit of the physical port pair(s). + :vartype mtu: str + :param encapsulation: Encapsulation method on physical ports. Possible + values include: 'Dot1Q', 'QinQ' + :type encapsulation: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRoutePortsEncapsulation + :ivar ether_type: Ether type of the physical port. + :vartype ether_type: str + :ivar allocation_date: Date of the physical port allocation to be used in + Letter of Authorization. + :vartype allocation_date: str + :param links: ExpressRouteLink Sub-Resources. The set of physical links of + the ExpressRoutePort resource. + :type links: list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteLink] + :ivar circuits: Reference the ExpressRoute circuit(s) that are provisioned + on this ExpressRoutePort resource. + :vartype circuits: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar provisioning_state: The provisioning state of the express route port + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar resource_guid: The resource GUID property of the express route port + resource. + :vartype resource_guid: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :param identity: The identity of ExpressRoutePort, if configured. + :type identity: + ~azure.mgmt.network.v2019_09_01.models.ManagedServiceIdentity + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioned_bandwidth_in_gbps': {'readonly': True}, + 'mtu': {'readonly': True}, + 'ether_type': {'readonly': True}, + 'allocation_date': {'readonly': True}, + 'circuits': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'peering_location': {'key': 'properties.peeringLocation', 'type': 'str'}, + 'bandwidth_in_gbps': {'key': 'properties.bandwidthInGbps', 'type': 'int'}, + 'provisioned_bandwidth_in_gbps': {'key': 'properties.provisionedBandwidthInGbps', 'type': 'float'}, + 'mtu': {'key': 'properties.mtu', 'type': 'str'}, + 'encapsulation': {'key': 'properties.encapsulation', 'type': 'str'}, + 'ether_type': {'key': 'properties.etherType', 'type': 'str'}, + 'allocation_date': {'key': 'properties.allocationDate', 'type': 'str'}, + 'links': {'key': 'properties.links', 'type': '[ExpressRouteLink]'}, + 'circuits': {'key': 'properties.circuits', 'type': '[SubResource]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'identity': {'key': 'identity', 'type': 'ManagedServiceIdentity'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, peering_location: str=None, bandwidth_in_gbps: int=None, encapsulation=None, links=None, identity=None, **kwargs) -> None: + super(ExpressRoutePort, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.peering_location = peering_location + self.bandwidth_in_gbps = bandwidth_in_gbps + self.provisioned_bandwidth_in_gbps = None + self.mtu = None + self.encapsulation = encapsulation + self.ether_type = None + self.allocation_date = None + self.links = links + self.circuits = None + self.provisioning_state = None + self.resource_guid = None + self.etag = None + self.identity = identity + + +class ExpressRoutePortsLocation(Resource): + """ExpressRoutePorts Peering Location. + + Definition of the ExpressRoutePorts peering location resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar address: Address of peering location. + :vartype address: str + :ivar contact: Contact details of peering locations. + :vartype contact: str + :param available_bandwidths: The inventory of available ExpressRoutePort + bandwidths. + :type available_bandwidths: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRoutePortsLocationBandwidths] + :ivar provisioning_state: The provisioning state of the express route port + location resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'address': {'readonly': True}, + 'contact': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'address': {'key': 'properties.address', 'type': 'str'}, + 'contact': {'key': 'properties.contact', 'type': 'str'}, + 'available_bandwidths': {'key': 'properties.availableBandwidths', 'type': '[ExpressRoutePortsLocationBandwidths]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, available_bandwidths=None, **kwargs) -> None: + super(ExpressRoutePortsLocation, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.address = None + self.contact = None + self.available_bandwidths = available_bandwidths + self.provisioning_state = None + + +class ExpressRoutePortsLocationBandwidths(Model): + """ExpressRoutePorts Location Bandwidths. + + Real-time inventory of available ExpressRoute port bandwidths. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar offer_name: Bandwidth descriptive name. + :vartype offer_name: str + :ivar value_in_gbps: Bandwidth value in Gbps. + :vartype value_in_gbps: int + """ + + _validation = { + 'offer_name': {'readonly': True}, + 'value_in_gbps': {'readonly': True}, + } + + _attribute_map = { + 'offer_name': {'key': 'offerName', 'type': 'str'}, + 'value_in_gbps': {'key': 'valueInGbps', 'type': 'int'}, + } + + def __init__(self, **kwargs) -> None: + super(ExpressRoutePortsLocationBandwidths, self).__init__(**kwargs) + self.offer_name = None + self.value_in_gbps = None + + +class ExpressRouteServiceProvider(Resource): + """A ExpressRouteResourceProvider object. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param peering_locations: A list of peering locations. + :type peering_locations: list[str] + :param bandwidths_offered: A list of bandwidths offered. + :type bandwidths_offered: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteServiceProviderBandwidthsOffered] + :ivar provisioning_state: The provisioning state of the express route + service provider resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'peering_locations': {'key': 'properties.peeringLocations', 'type': '[str]'}, + 'bandwidths_offered': {'key': 'properties.bandwidthsOffered', 'type': '[ExpressRouteServiceProviderBandwidthsOffered]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, peering_locations=None, bandwidths_offered=None, **kwargs) -> None: + super(ExpressRouteServiceProvider, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.peering_locations = peering_locations + self.bandwidths_offered = bandwidths_offered + self.provisioning_state = None + + +class ExpressRouteServiceProviderBandwidthsOffered(Model): + """Contains bandwidths offered in ExpressRouteServiceProvider resources. + + :param offer_name: The OfferName. + :type offer_name: str + :param value_in_mbps: The ValueInMbps. + :type value_in_mbps: int + """ + + _attribute_map = { + 'offer_name': {'key': 'offerName', 'type': 'str'}, + 'value_in_mbps': {'key': 'valueInMbps', 'type': 'int'}, + } + + def __init__(self, *, offer_name: str=None, value_in_mbps: int=None, **kwargs) -> None: + super(ExpressRouteServiceProviderBandwidthsOffered, self).__init__(**kwargs) + self.offer_name = offer_name + self.value_in_mbps = value_in_mbps + + +class FirewallPolicy(Resource): + """FirewallPolicy Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar rule_groups: List of references to FirewallPolicyRuleGroups. + :vartype rule_groups: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar provisioning_state: The provisioning state of the firewall policy + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param base_policy: The parent firewall policy from which rules are + inherited. + :type base_policy: ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar firewalls: List of references to Azure Firewalls that this Firewall + Policy is associated with. + :vartype firewalls: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar child_policies: List of references to Child Firewall Policies. + :vartype child_policies: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param threat_intel_mode: The operation mode for Threat Intelligence. + Possible values include: 'Alert', 'Deny', 'Off' + :type threat_intel_mode: str or + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallThreatIntelMode + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'rule_groups': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'firewalls': {'readonly': True}, + 'child_policies': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'rule_groups': {'key': 'properties.ruleGroups', 'type': '[SubResource]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'base_policy': {'key': 'properties.basePolicy', 'type': 'SubResource'}, + 'firewalls': {'key': 'properties.firewalls', 'type': '[SubResource]'}, + 'child_policies': {'key': 'properties.childPolicies', 'type': '[SubResource]'}, + 'threat_intel_mode': {'key': 'properties.threatIntelMode', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, base_policy=None, threat_intel_mode=None, **kwargs) -> None: + super(FirewallPolicy, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.rule_groups = None + self.provisioning_state = None + self.base_policy = base_policy + self.firewalls = None + self.child_policies = None + self.threat_intel_mode = threat_intel_mode + self.etag = None + + +class FirewallPolicyRule(Model): + """Properties of the rule. + + You probably want to use the sub-classes and not this class directly. Known + sub-classes are: FirewallPolicyNatRule, FirewallPolicyFilterRule + + All required parameters must be populated in order to send to Azure. + + :param name: The name of the rule. + :type name: str + :param priority: Priority of the Firewall Policy Rule resource. + :type priority: int + :param rule_type: Required. Constant filled by server. + :type rule_type: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'rule_type': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'priority': {'key': 'priority', 'type': 'int'}, + 'rule_type': {'key': 'ruleType', 'type': 'str'}, + } + + _subtype_map = { + 'rule_type': {'FirewallPolicyNatRule': 'FirewallPolicyNatRule', 'FirewallPolicyFilterRule': 'FirewallPolicyFilterRule'} + } + + def __init__(self, *, name: str=None, priority: int=None, **kwargs) -> None: + super(FirewallPolicyRule, self).__init__(**kwargs) + self.name = name + self.priority = priority + self.rule_type = None + + +class FirewallPolicyFilterRule(FirewallPolicyRule): + """Firewall Policy Filter Rule. + + All required parameters must be populated in order to send to Azure. + + :param name: The name of the rule. + :type name: str + :param priority: Priority of the Firewall Policy Rule resource. + :type priority: int + :param rule_type: Required. Constant filled by server. + :type rule_type: str + :param action: The action type of a Filter rule. + :type action: + ~azure.mgmt.network.v2019_09_01.models.FirewallPolicyFilterRuleAction + :param rule_conditions: Collection of rule conditions used by a rule. + :type rule_conditions: + list[~azure.mgmt.network.v2019_09_01.models.FirewallPolicyRuleCondition] + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'rule_type': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'priority': {'key': 'priority', 'type': 'int'}, + 'rule_type': {'key': 'ruleType', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'FirewallPolicyFilterRuleAction'}, + 'rule_conditions': {'key': 'ruleConditions', 'type': '[FirewallPolicyRuleCondition]'}, + } + + def __init__(self, *, name: str=None, priority: int=None, action=None, rule_conditions=None, **kwargs) -> None: + super(FirewallPolicyFilterRule, self).__init__(name=name, priority=priority, **kwargs) + self.action = action + self.rule_conditions = rule_conditions + self.rule_type = 'FirewallPolicyFilterRule' + + +class FirewallPolicyFilterRuleAction(Model): + """Properties of the FirewallPolicyFilterRuleAction. + + :param type: The type of action. Possible values include: 'Allow', 'Deny' + :type type: str or + ~azure.mgmt.network.v2019_09_01.models.FirewallPolicyFilterRuleActionType + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, type=None, **kwargs) -> None: + super(FirewallPolicyFilterRuleAction, self).__init__(**kwargs) + self.type = type + + +class FirewallPolicyNatRule(FirewallPolicyRule): + """Firewall Policy NAT Rule. + + All required parameters must be populated in order to send to Azure. + + :param name: The name of the rule. + :type name: str + :param priority: Priority of the Firewall Policy Rule resource. + :type priority: int + :param rule_type: Required. Constant filled by server. + :type rule_type: str + :param action: The action type of a Nat rule. + :type action: + ~azure.mgmt.network.v2019_09_01.models.FirewallPolicyNatRuleAction + :param translated_address: The translated address for this NAT rule. + :type translated_address: str + :param translated_port: The translated port for this NAT rule. + :type translated_port: str + :param rule_condition: The match conditions for incoming traffic. + :type rule_condition: + ~azure.mgmt.network.v2019_09_01.models.FirewallPolicyRuleCondition + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'rule_type': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'priority': {'key': 'priority', 'type': 'int'}, + 'rule_type': {'key': 'ruleType', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'FirewallPolicyNatRuleAction'}, + 'translated_address': {'key': 'translatedAddress', 'type': 'str'}, + 'translated_port': {'key': 'translatedPort', 'type': 'str'}, + 'rule_condition': {'key': 'ruleCondition', 'type': 'FirewallPolicyRuleCondition'}, + } + + def __init__(self, *, name: str=None, priority: int=None, action=None, translated_address: str=None, translated_port: str=None, rule_condition=None, **kwargs) -> None: + super(FirewallPolicyNatRule, self).__init__(name=name, priority=priority, **kwargs) + self.action = action + self.translated_address = translated_address + self.translated_port = translated_port + self.rule_condition = rule_condition + self.rule_type = 'FirewallPolicyNatRule' + + +class FirewallPolicyNatRuleAction(Model): + """Properties of the FirewallPolicyNatRuleAction. + + :param type: The type of action. Possible values include: 'DNAT' + :type type: str or + ~azure.mgmt.network.v2019_09_01.models.FirewallPolicyNatRuleActionType + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, type=None, **kwargs) -> None: + super(FirewallPolicyNatRuleAction, self).__init__(**kwargs) + self.type = type + + +class FirewallPolicyRuleConditionApplicationProtocol(Model): + """Properties of the application rule protocol. + + :param protocol_type: Protocol type. Possible values include: 'Http', + 'Https' + :type protocol_type: str or + ~azure.mgmt.network.v2019_09_01.models.FirewallPolicyRuleConditionApplicationProtocolType + :param port: Port number for the protocol, cannot be greater than 64000. + :type port: int + """ + + _validation = { + 'port': {'maximum': 64000, 'minimum': 0}, + } + + _attribute_map = { + 'protocol_type': {'key': 'protocolType', 'type': 'str'}, + 'port': {'key': 'port', 'type': 'int'}, + } + + def __init__(self, *, protocol_type=None, port: int=None, **kwargs) -> None: + super(FirewallPolicyRuleConditionApplicationProtocol, self).__init__(**kwargs) + self.protocol_type = protocol_type + self.port = port + + +class FirewallPolicyRuleGroup(SubResource): + """Rule Group resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param priority: Priority of the Firewall Policy Rule Group resource. + :type priority: int + :param rules: Group of Firewall Policy rules. + :type rules: + list[~azure.mgmt.network.v2019_09_01.models.FirewallPolicyRule] + :ivar provisioning_state: The provisioning state of the firewall policy + rule group resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Rule Group type. + :vartype type: str + """ + + _validation = { + 'priority': {'maximum': 65000, 'minimum': 100}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'rules': {'key': 'properties.rules', 'type': '[FirewallPolicyRule]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, priority: int=None, rules=None, name: str=None, **kwargs) -> None: + super(FirewallPolicyRuleGroup, self).__init__(id=id, **kwargs) + self.priority = priority + self.rules = rules + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class FlowLogFormatParameters(Model): + """Parameters that define the flow log format. + + :param type: The file type of flow log. Possible values include: 'JSON' + :type type: str or + ~azure.mgmt.network.v2019_09_01.models.FlowLogFormatType + :param version: The version (revision) of the flow log. Default value: 0 . + :type version: int + """ + + _attribute_map = { + 'type': {'key': 'type', 'type': 'str'}, + 'version': {'key': 'version', 'type': 'int'}, + } + + def __init__(self, *, type=None, version: int=0, **kwargs) -> None: + super(FlowLogFormatParameters, self).__init__(**kwargs) + self.type = type + self.version = version + + +class FlowLogInformation(Model): + """Information on the configuration of flow log and traffic analytics + (optional) . + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the resource to configure + for flow log and traffic analytics (optional) . + :type target_resource_id: str + :param storage_id: Required. ID of the storage account which is used to + store the flow log. + :type storage_id: str + :param enabled: Required. Flag to enable/disable flow logging. + :type enabled: bool + :param retention_policy: Parameters that define the retention policy for + flow log. + :type retention_policy: + ~azure.mgmt.network.v2019_09_01.models.RetentionPolicyParameters + :param format: Parameters that define the flow log format. + :type format: + ~azure.mgmt.network.v2019_09_01.models.FlowLogFormatParameters + :param flow_analytics_configuration: Parameters that define the + configuration of traffic analytics. + :type flow_analytics_configuration: + ~azure.mgmt.network.v2019_09_01.models.TrafficAnalyticsProperties + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'storage_id': {'required': True}, + 'enabled': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'storage_id': {'key': 'properties.storageId', 'type': 'str'}, + 'enabled': {'key': 'properties.enabled', 'type': 'bool'}, + 'retention_policy': {'key': 'properties.retentionPolicy', 'type': 'RetentionPolicyParameters'}, + 'format': {'key': 'properties.format', 'type': 'FlowLogFormatParameters'}, + 'flow_analytics_configuration': {'key': 'flowAnalyticsConfiguration', 'type': 'TrafficAnalyticsProperties'}, + } + + def __init__(self, *, target_resource_id: str, storage_id: str, enabled: bool, retention_policy=None, format=None, flow_analytics_configuration=None, **kwargs) -> None: + super(FlowLogInformation, self).__init__(**kwargs) + self.target_resource_id = target_resource_id + self.storage_id = storage_id + self.enabled = enabled + self.retention_policy = retention_policy + self.format = format + self.flow_analytics_configuration = flow_analytics_configuration + + +class FlowLogStatusParameters(Model): + """Parameters that define a resource to query flow log and traffic analytics + (optional) status. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The target resource where getting the + flow log and traffic analytics (optional) status. + :type target_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + } + + def __init__(self, *, target_resource_id: str, **kwargs) -> None: + super(FlowLogStatusParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id + + +class FrontendIPConfiguration(SubResource): + """Frontend IP address of the load balancer. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar inbound_nat_rules: An array of references to inbound rules that use + this frontend IP. + :vartype inbound_nat_rules: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar inbound_nat_pools: An array of references to inbound pools that use + this frontend IP. + :vartype inbound_nat_pools: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar outbound_rules: An array of references to outbound rules that use + this frontend IP. + :vartype outbound_rules: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar load_balancing_rules: An array of references to load balancing rules + that use this frontend IP. + :vartype load_balancing_rules: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param private_ip_address: The private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: The Private IP allocation method. + Possible values include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2019_09_01.models.IPAllocationMethod + :param private_ip_address_version: Whether the specific ipconfiguration is + IPv4 or IPv6. Default is taken as IPv4. Possible values include: 'IPv4', + 'IPv6' + :type private_ip_address_version: str or + ~azure.mgmt.network.v2019_09_01.models.IPVersion + :param subnet: The reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.Subnet + :param public_ip_address: The reference of the Public IP resource. + :type public_ip_address: + ~azure.mgmt.network.v2019_09_01.models.PublicIPAddress + :param public_ip_prefix: The reference of the Public IP Prefix resource. + :type public_ip_prefix: ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar provisioning_state: The provisioning state of the frontend IP + configuration resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within the set of + frontend IP configurations used by the load balancer. This name can be + used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + :param zones: A list of availability zones denoting the IP allocated for + the resource needs to come from. + :type zones: list[str] + """ + + _validation = { + 'inbound_nat_rules': {'readonly': True}, + 'inbound_nat_pools': {'readonly': True}, + 'outbound_rules': {'readonly': True}, + 'load_balancing_rules': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'inbound_nat_rules': {'key': 'properties.inboundNatRules', 'type': '[SubResource]'}, + 'inbound_nat_pools': {'key': 'properties.inboundNatPools', 'type': '[SubResource]'}, + 'outbound_rules': {'key': 'properties.outboundRules', 'type': '[SubResource]'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[SubResource]'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'private_ip_address_version': {'key': 'properties.privateIPAddressVersion', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'PublicIPAddress'}, + 'public_ip_prefix': {'key': 'properties.publicIPPrefix', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, *, id: str=None, private_ip_address: str=None, private_ip_allocation_method=None, private_ip_address_version=None, subnet=None, public_ip_address=None, public_ip_prefix=None, name: str=None, zones=None, **kwargs) -> None: + super(FrontendIPConfiguration, self).__init__(id=id, **kwargs) + self.inbound_nat_rules = None + self.inbound_nat_pools = None + self.outbound_rules = None + self.load_balancing_rules = None + self.private_ip_address = private_ip_address + self.private_ip_allocation_method = private_ip_allocation_method + self.private_ip_address_version = private_ip_address_version + self.subnet = subnet + self.public_ip_address = public_ip_address + self.public_ip_prefix = public_ip_prefix + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + self.zones = zones + + +class GatewayRoute(Model): + """Gateway routing details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar local_address: The gateway's local address. + :vartype local_address: str + :ivar network: The route's network prefix. + :vartype network: str + :ivar next_hop: The route's next hop. + :vartype next_hop: str + :ivar source_peer: The peer this route was learned from. + :vartype source_peer: str + :ivar origin: The source this route was learned from. + :vartype origin: str + :ivar as_path: The route's AS path sequence. + :vartype as_path: str + :ivar weight: The route's weight. + :vartype weight: int + """ + + _validation = { + 'local_address': {'readonly': True}, + 'network': {'readonly': True}, + 'next_hop': {'readonly': True}, + 'source_peer': {'readonly': True}, + 'origin': {'readonly': True}, + 'as_path': {'readonly': True}, + 'weight': {'readonly': True}, + } + + _attribute_map = { + 'local_address': {'key': 'localAddress', 'type': 'str'}, + 'network': {'key': 'network', 'type': 'str'}, + 'next_hop': {'key': 'nextHop', 'type': 'str'}, + 'source_peer': {'key': 'sourcePeer', 'type': 'str'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'as_path': {'key': 'asPath', 'type': 'str'}, + 'weight': {'key': 'weight', 'type': 'int'}, + } + + def __init__(self, **kwargs) -> None: + super(GatewayRoute, self).__init__(**kwargs) + self.local_address = None + self.network = None + self.next_hop = None + self.source_peer = None + self.origin = None + self.as_path = None + self.weight = None + + +class GatewayRouteListResult(Model): + """List of virtual network gateway routes. + + :param value: List of gateway routes. + :type value: list[~azure.mgmt.network.v2019_09_01.models.GatewayRoute] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[GatewayRoute]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(GatewayRouteListResult, self).__init__(**kwargs) + self.value = value + + +class GetVpnSitesConfigurationRequest(Model): + """List of Vpn-Sites. + + All required parameters must be populated in order to send to Azure. + + :param vpn_sites: List of resource-ids of the vpn-sites for which config + is to be downloaded. + :type vpn_sites: list[str] + :param output_blob_sas_url: Required. The sas-url to download the + configurations for vpn-sites. + :type output_blob_sas_url: str + """ + + _validation = { + 'output_blob_sas_url': {'required': True}, + } + + _attribute_map = { + 'vpn_sites': {'key': 'vpnSites', 'type': '[str]'}, + 'output_blob_sas_url': {'key': 'outputBlobSasUrl', 'type': 'str'}, + } + + def __init__(self, *, output_blob_sas_url: str, vpn_sites=None, **kwargs) -> None: + super(GetVpnSitesConfigurationRequest, self).__init__(**kwargs) + self.vpn_sites = vpn_sites + self.output_blob_sas_url = output_blob_sas_url + + +class HTTPConfiguration(Model): + """HTTP configuration of the connectivity check. + + :param method: HTTP method. Possible values include: 'Get' + :type method: str or ~azure.mgmt.network.v2019_09_01.models.HTTPMethod + :param headers: List of HTTP headers. + :type headers: list[~azure.mgmt.network.v2019_09_01.models.HTTPHeader] + :param valid_status_codes: Valid status codes. + :type valid_status_codes: list[int] + """ + + _attribute_map = { + 'method': {'key': 'method', 'type': 'str'}, + 'headers': {'key': 'headers', 'type': '[HTTPHeader]'}, + 'valid_status_codes': {'key': 'validStatusCodes', 'type': '[int]'}, + } + + def __init__(self, *, method=None, headers=None, valid_status_codes=None, **kwargs) -> None: + super(HTTPConfiguration, self).__init__(**kwargs) + self.method = method + self.headers = headers + self.valid_status_codes = valid_status_codes + + +class HTTPHeader(Model): + """Describes the HTTP header. + + :param name: The name in HTTP header. + :type name: str + :param value: The value in HTTP header. + :type value: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, value: str=None, **kwargs) -> None: + super(HTTPHeader, self).__init__(**kwargs) + self.name = name + self.value = value + + +class HubIPAddresses(Model): + """IP addresses associated with azure firewall. + + :param public_ip_addresses: List of Public IP addresses associated with + azure firewall. + :type public_ip_addresses: + list[~azure.mgmt.network.v2019_09_01.models.AzureFirewallPublicIPAddress] + :param private_ip_address: Private IP Address associated with azure + firewall. + :type private_ip_address: str + """ + + _attribute_map = { + 'public_ip_addresses': {'key': 'publicIPAddresses', 'type': '[AzureFirewallPublicIPAddress]'}, + 'private_ip_address': {'key': 'privateIPAddress', 'type': 'str'}, + } + + def __init__(self, *, public_ip_addresses=None, private_ip_address: str=None, **kwargs) -> None: + super(HubIPAddresses, self).__init__(**kwargs) + self.public_ip_addresses = public_ip_addresses + self.private_ip_address = private_ip_address + + +class HubVirtualNetworkConnection(SubResource): + """HubVirtualNetworkConnection Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param remote_virtual_network: Reference to the remote virtual network. + :type remote_virtual_network: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param allow_hub_to_remote_vnet_transit: VirtualHub to RemoteVnet transit + to enabled or not. + :type allow_hub_to_remote_vnet_transit: bool + :param allow_remote_vnet_to_use_hub_vnet_gateways: Allow RemoteVnet to use + Virtual Hub's gateways. + :type allow_remote_vnet_to_use_hub_vnet_gateways: bool + :param enable_internet_security: Enable internet security. + :type enable_internet_security: bool + :ivar provisioning_state: The provisioning state of the hub virtual + network connection resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'remote_virtual_network': {'key': 'properties.remoteVirtualNetwork', 'type': 'SubResource'}, + 'allow_hub_to_remote_vnet_transit': {'key': 'properties.allowHubToRemoteVnetTransit', 'type': 'bool'}, + 'allow_remote_vnet_to_use_hub_vnet_gateways': {'key': 'properties.allowRemoteVnetToUseHubVnetGateways', 'type': 'bool'}, + 'enable_internet_security': {'key': 'properties.enableInternetSecurity', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, remote_virtual_network=None, allow_hub_to_remote_vnet_transit: bool=None, allow_remote_vnet_to_use_hub_vnet_gateways: bool=None, enable_internet_security: bool=None, name: str=None, **kwargs) -> None: + super(HubVirtualNetworkConnection, self).__init__(id=id, **kwargs) + self.remote_virtual_network = remote_virtual_network + self.allow_hub_to_remote_vnet_transit = allow_hub_to_remote_vnet_transit + self.allow_remote_vnet_to_use_hub_vnet_gateways = allow_remote_vnet_to_use_hub_vnet_gateways + self.enable_internet_security = enable_internet_security + self.provisioning_state = None + self.name = name + self.etag = None + + +class InboundNatPool(SubResource): + """Inbound NAT pool of the load balancer. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: A reference to frontend IP addresses. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param protocol: Required. The reference to the transport protocol used by + the inbound NAT pool. Possible values include: 'Udp', 'Tcp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.TransportProtocol + :param frontend_port_range_start: Required. The first port number in the + range of external ports that will be used to provide Inbound Nat to NICs + associated with a load balancer. Acceptable values range between 1 and + 65534. + :type frontend_port_range_start: int + :param frontend_port_range_end: Required. The last port number in the + range of external ports that will be used to provide Inbound Nat to NICs + associated with a load balancer. Acceptable values range between 1 and + 65535. + :type frontend_port_range_end: int + :param backend_port: Required. The port used for internal connections on + the endpoint. Acceptable values are between 1 and 65535. + :type backend_port: int + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + The value can be set between 4 and 30 minutes. The default value is 4 + minutes. This element is only used when the protocol is set to TCP. + :type idle_timeout_in_minutes: int + :param enable_floating_ip: Configures a virtual machine's endpoint for the + floating IP capability required to configure a SQL AlwaysOn Availability + Group. This setting is required when using the SQL AlwaysOn Availability + Groups in SQL server. This setting can't be changed after you create the + endpoint. + :type enable_floating_ip: bool + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :ivar provisioning_state: The provisioning state of the inbound NAT pool + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within the set of + inbound NAT pools used by the load balancer. This name can be used to + access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'protocol': {'required': True}, + 'frontend_port_range_start': {'required': True}, + 'frontend_port_range_end': {'required': True}, + 'backend_port': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'frontend_port_range_start': {'key': 'properties.frontendPortRangeStart', 'type': 'int'}, + 'frontend_port_range_end': {'key': 'properties.frontendPortRangeEnd', 'type': 'int'}, + 'backend_port': {'key': 'properties.backendPort', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'enable_floating_ip': {'key': 'properties.enableFloatingIP', 'type': 'bool'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, protocol, frontend_port_range_start: int, frontend_port_range_end: int, backend_port: int, id: str=None, frontend_ip_configuration=None, idle_timeout_in_minutes: int=None, enable_floating_ip: bool=None, enable_tcp_reset: bool=None, name: str=None, **kwargs) -> None: + super(InboundNatPool, self).__init__(id=id, **kwargs) + self.frontend_ip_configuration = frontend_ip_configuration + self.protocol = protocol + self.frontend_port_range_start = frontend_port_range_start + self.frontend_port_range_end = frontend_port_range_end + self.backend_port = backend_port + self.idle_timeout_in_minutes = idle_timeout_in_minutes + self.enable_floating_ip = enable_floating_ip + self.enable_tcp_reset = enable_tcp_reset + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class InboundNatRule(SubResource): + """Inbound NAT rule of the load balancer. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: A reference to frontend IP addresses. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar backend_ip_configuration: A reference to a private IP address + defined on a network interface of a VM. Traffic sent to the frontend port + of each of the frontend IP configurations is forwarded to the backend IP. + :vartype backend_ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfiguration + :param protocol: The reference to the transport protocol used by the load + balancing rule. Possible values include: 'Udp', 'Tcp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.TransportProtocol + :param frontend_port: The port for the external endpoint. Port numbers for + each rule must be unique within the Load Balancer. Acceptable values range + from 1 to 65534. + :type frontend_port: int + :param backend_port: The port used for the internal endpoint. Acceptable + values range from 1 to 65535. + :type backend_port: int + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + The value can be set between 4 and 30 minutes. The default value is 4 + minutes. This element is only used when the protocol is set to TCP. + :type idle_timeout_in_minutes: int + :param enable_floating_ip: Configures a virtual machine's endpoint for the + floating IP capability required to configure a SQL AlwaysOn Availability + Group. This setting is required when using the SQL AlwaysOn Availability + Groups in SQL server. This setting can't be changed after you create the + endpoint. + :type enable_floating_ip: bool + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :ivar provisioning_state: The provisioning state of the inbound NAT rule + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within the set of + inbound NAT rules used by the load balancer. This name can be used to + access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'backend_ip_configuration': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'backend_ip_configuration': {'key': 'properties.backendIPConfiguration', 'type': 'NetworkInterfaceIPConfiguration'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'frontend_port': {'key': 'properties.frontendPort', 'type': 'int'}, + 'backend_port': {'key': 'properties.backendPort', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'enable_floating_ip': {'key': 'properties.enableFloatingIP', 'type': 'bool'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, frontend_ip_configuration=None, protocol=None, frontend_port: int=None, backend_port: int=None, idle_timeout_in_minutes: int=None, enable_floating_ip: bool=None, enable_tcp_reset: bool=None, name: str=None, **kwargs) -> None: + super(InboundNatRule, self).__init__(id=id, **kwargs) + self.frontend_ip_configuration = frontend_ip_configuration + self.backend_ip_configuration = None + self.protocol = protocol + self.frontend_port = frontend_port + self.backend_port = backend_port + self.idle_timeout_in_minutes = idle_timeout_in_minutes + self.enable_floating_ip = enable_floating_ip + self.enable_tcp_reset = enable_tcp_reset + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class IPAddressAvailabilityResult(Model): + """Response for CheckIPAddressAvailability API service call. + + :param available: Private IP address availability. + :type available: bool + :param available_ip_addresses: Contains other available private IP + addresses if the asked for address is taken. + :type available_ip_addresses: list[str] + """ + + _attribute_map = { + 'available': {'key': 'available', 'type': 'bool'}, + 'available_ip_addresses': {'key': 'availableIPAddresses', 'type': '[str]'}, + } + + def __init__(self, *, available: bool=None, available_ip_addresses=None, **kwargs) -> None: + super(IPAddressAvailabilityResult, self).__init__(**kwargs) + self.available = available + self.available_ip_addresses = available_ip_addresses + + +class IPConfiguration(SubResource): + """IP configuration. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param private_ip_address: The private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: The private IP address allocation + method. Possible values include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2019_09_01.models.IPAllocationMethod + :param subnet: The reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.Subnet + :param public_ip_address: The reference of the public IP resource. + :type public_ip_address: + ~azure.mgmt.network.v2019_09_01.models.PublicIPAddress + :ivar provisioning_state: The provisioning state of the IP configuration + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'PublicIPAddress'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, private_ip_address: str=None, private_ip_allocation_method=None, subnet=None, public_ip_address=None, name: str=None, **kwargs) -> None: + super(IPConfiguration, self).__init__(id=id, **kwargs) + self.private_ip_address = private_ip_address + self.private_ip_allocation_method = private_ip_allocation_method + self.subnet = subnet + self.public_ip_address = public_ip_address + self.provisioning_state = None + self.name = name + self.etag = None + + +class IPConfigurationProfile(SubResource): + """IP configuration profile child resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param subnet: The reference of the subnet resource to create a container + network interface ip configuration. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.Subnet + :ivar provisioning_state: The provisioning state of the IP configuration + profile resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource. This name can be used to access the + resource. + :type name: str + :ivar type: Sub Resource type. + :vartype type: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, subnet=None, name: str=None, **kwargs) -> None: + super(IPConfigurationProfile, self).__init__(id=id, **kwargs) + self.subnet = subnet + self.provisioning_state = None + self.name = name + self.type = None + self.etag = None + + +class IpGroup(Resource): + """The IpGroups resource information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar provisioning_state: The provisioning state of the IpGroups resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param ip_addresses: IpAddresses/IpAddressPrefixes in the IpGroups + resource. + :type ip_addresses: list[str] + :ivar firewalls: List of references to Azure resources that this IpGroups + is associated with + :vartype firewalls: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'firewalls': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'ip_addresses': {'key': 'properties.ipAddresses', 'type': '[str]'}, + 'firewalls': {'key': 'properties.firewalls', 'type': '[SubResource]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, ip_addresses=None, **kwargs) -> None: + super(IpGroup, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.provisioning_state = None + self.ip_addresses = ip_addresses + self.firewalls = None + self.etag = None + + +class IpsecPolicy(Model): + """An IPSec Policy configuration for a virtual network gateway connection. + + All required parameters must be populated in order to send to Azure. + + :param sa_life_time_seconds: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to + site VPN tunnel. + :type sa_life_time_seconds: int + :param sa_data_size_kilobytes: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) payload size in KB for a site to + site VPN tunnel. + :type sa_data_size_kilobytes: int + :param ipsec_encryption: Required. The IPSec encryption algorithm (IKE + phase 1). Possible values include: 'None', 'DES', 'DES3', 'AES128', + 'AES192', 'AES256', 'GCMAES128', 'GCMAES192', 'GCMAES256' + :type ipsec_encryption: str or + ~azure.mgmt.network.v2019_09_01.models.IpsecEncryption + :param ipsec_integrity: Required. The IPSec integrity algorithm (IKE phase + 1). Possible values include: 'MD5', 'SHA1', 'SHA256', 'GCMAES128', + 'GCMAES192', 'GCMAES256' + :type ipsec_integrity: str or + ~azure.mgmt.network.v2019_09_01.models.IpsecIntegrity + :param ike_encryption: Required. The IKE encryption algorithm (IKE phase + 2). Possible values include: 'DES', 'DES3', 'AES128', 'AES192', 'AES256', + 'GCMAES256', 'GCMAES128' + :type ike_encryption: str or + ~azure.mgmt.network.v2019_09_01.models.IkeEncryption + :param ike_integrity: Required. The IKE integrity algorithm (IKE phase 2). + Possible values include: 'MD5', 'SHA1', 'SHA256', 'SHA384', 'GCMAES256', + 'GCMAES128' + :type ike_integrity: str or + ~azure.mgmt.network.v2019_09_01.models.IkeIntegrity + :param dh_group: Required. The DH Group used in IKE Phase 1 for initial + SA. Possible values include: 'None', 'DHGroup1', 'DHGroup2', 'DHGroup14', + 'DHGroup2048', 'ECP256', 'ECP384', 'DHGroup24' + :type dh_group: str or ~azure.mgmt.network.v2019_09_01.models.DhGroup + :param pfs_group: Required. The Pfs Group used in IKE Phase 2 for new + child SA. Possible values include: 'None', 'PFS1', 'PFS2', 'PFS2048', + 'ECP256', 'ECP384', 'PFS24', 'PFS14', 'PFSMM' + :type pfs_group: str or ~azure.mgmt.network.v2019_09_01.models.PfsGroup + """ + + _validation = { + 'sa_life_time_seconds': {'required': True}, + 'sa_data_size_kilobytes': {'required': True}, + 'ipsec_encryption': {'required': True}, + 'ipsec_integrity': {'required': True}, + 'ike_encryption': {'required': True}, + 'ike_integrity': {'required': True}, + 'dh_group': {'required': True}, + 'pfs_group': {'required': True}, + } + + _attribute_map = { + 'sa_life_time_seconds': {'key': 'saLifeTimeSeconds', 'type': 'int'}, + 'sa_data_size_kilobytes': {'key': 'saDataSizeKilobytes', 'type': 'int'}, + 'ipsec_encryption': {'key': 'ipsecEncryption', 'type': 'str'}, + 'ipsec_integrity': {'key': 'ipsecIntegrity', 'type': 'str'}, + 'ike_encryption': {'key': 'ikeEncryption', 'type': 'str'}, + 'ike_integrity': {'key': 'ikeIntegrity', 'type': 'str'}, + 'dh_group': {'key': 'dhGroup', 'type': 'str'}, + 'pfs_group': {'key': 'pfsGroup', 'type': 'str'}, + } + + def __init__(self, *, sa_life_time_seconds: int, sa_data_size_kilobytes: int, ipsec_encryption, ipsec_integrity, ike_encryption, ike_integrity, dh_group, pfs_group, **kwargs) -> None: + super(IpsecPolicy, self).__init__(**kwargs) + self.sa_life_time_seconds = sa_life_time_seconds + self.sa_data_size_kilobytes = sa_data_size_kilobytes + self.ipsec_encryption = ipsec_encryption + self.ipsec_integrity = ipsec_integrity + self.ike_encryption = ike_encryption + self.ike_integrity = ike_integrity + self.dh_group = dh_group + self.pfs_group = pfs_group + + +class IpTag(Model): + """Contains the IpTag associated with the object. + + :param ip_tag_type: The IP tag type. Example: FirstPartyUsage. + :type ip_tag_type: str + :param tag: The value of the IP tag associated with the public IP. + Example: SQL. + :type tag: str + """ + + _attribute_map = { + 'ip_tag_type': {'key': 'ipTagType', 'type': 'str'}, + 'tag': {'key': 'tag', 'type': 'str'}, + } + + def __init__(self, *, ip_tag_type: str=None, tag: str=None, **kwargs) -> None: + super(IpTag, self).__init__(**kwargs) + self.ip_tag_type = ip_tag_type + self.tag = tag + + +class Ipv6ExpressRouteCircuitPeeringConfig(Model): + """Contains IPv6 peering config. + + :param primary_peer_address_prefix: The primary address prefix. + :type primary_peer_address_prefix: str + :param secondary_peer_address_prefix: The secondary address prefix. + :type secondary_peer_address_prefix: str + :param microsoft_peering_config: The Microsoft peering configuration. + :type microsoft_peering_config: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeeringConfig + :param route_filter: The reference of the RouteFilter resource. + :type route_filter: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param state: The state of peering. Possible values include: 'Disabled', + 'Enabled' + :type state: str or + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeeringState + """ + + _attribute_map = { + 'primary_peer_address_prefix': {'key': 'primaryPeerAddressPrefix', 'type': 'str'}, + 'secondary_peer_address_prefix': {'key': 'secondaryPeerAddressPrefix', 'type': 'str'}, + 'microsoft_peering_config': {'key': 'microsoftPeeringConfig', 'type': 'ExpressRouteCircuitPeeringConfig'}, + 'route_filter': {'key': 'routeFilter', 'type': 'SubResource'}, + 'state': {'key': 'state', 'type': 'str'}, + } + + def __init__(self, *, primary_peer_address_prefix: str=None, secondary_peer_address_prefix: str=None, microsoft_peering_config=None, route_filter=None, state=None, **kwargs) -> None: + super(Ipv6ExpressRouteCircuitPeeringConfig, self).__init__(**kwargs) + self.primary_peer_address_prefix = primary_peer_address_prefix + self.secondary_peer_address_prefix = secondary_peer_address_prefix + self.microsoft_peering_config = microsoft_peering_config + self.route_filter = route_filter + self.state = state + + +class LoadBalancer(Resource): + """LoadBalancer resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The load balancer SKU. + :type sku: ~azure.mgmt.network.v2019_09_01.models.LoadBalancerSku + :param frontend_ip_configurations: Object representing the frontend IPs to + be used for the load balancer. + :type frontend_ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.FrontendIPConfiguration] + :param backend_address_pools: Collection of backend address pools used by + a load balancer. + :type backend_address_pools: + list[~azure.mgmt.network.v2019_09_01.models.BackendAddressPool] + :param load_balancing_rules: Object collection representing the load + balancing rules Gets the provisioning. + :type load_balancing_rules: + list[~azure.mgmt.network.v2019_09_01.models.LoadBalancingRule] + :param probes: Collection of probe objects used in the load balancer. + :type probes: list[~azure.mgmt.network.v2019_09_01.models.Probe] + :param inbound_nat_rules: Collection of inbound NAT Rules used by a load + balancer. Defining inbound NAT rules on your load balancer is mutually + exclusive with defining an inbound NAT pool. Inbound NAT pools are + referenced from virtual machine scale sets. NICs that are associated with + individual virtual machines cannot reference an Inbound NAT pool. They + have to reference individual inbound NAT rules. + :type inbound_nat_rules: + list[~azure.mgmt.network.v2019_09_01.models.InboundNatRule] + :param inbound_nat_pools: Defines an external port range for inbound NAT + to a single backend port on NICs associated with a load balancer. Inbound + NAT rules are created automatically for each NIC associated with the Load + Balancer using an external port from this range. Defining an Inbound NAT + pool on your Load Balancer is mutually exclusive with defining inbound Nat + rules. Inbound NAT pools are referenced from virtual machine scale sets. + NICs that are associated with individual virtual machines cannot reference + an inbound NAT pool. They have to reference individual inbound NAT rules. + :type inbound_nat_pools: + list[~azure.mgmt.network.v2019_09_01.models.InboundNatPool] + :param outbound_rules: The outbound rules. + :type outbound_rules: + list[~azure.mgmt.network.v2019_09_01.models.OutboundRule] + :ivar resource_guid: The resource GUID property of the load balancer + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the load balancer + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'LoadBalancerSku'}, + 'frontend_ip_configurations': {'key': 'properties.frontendIPConfigurations', 'type': '[FrontendIPConfiguration]'}, + 'backend_address_pools': {'key': 'properties.backendAddressPools', 'type': '[BackendAddressPool]'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[LoadBalancingRule]'}, + 'probes': {'key': 'properties.probes', 'type': '[Probe]'}, + 'inbound_nat_rules': {'key': 'properties.inboundNatRules', 'type': '[InboundNatRule]'}, + 'inbound_nat_pools': {'key': 'properties.inboundNatPools', 'type': '[InboundNatPool]'}, + 'outbound_rules': {'key': 'properties.outboundRules', 'type': '[OutboundRule]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, sku=None, frontend_ip_configurations=None, backend_address_pools=None, load_balancing_rules=None, probes=None, inbound_nat_rules=None, inbound_nat_pools=None, outbound_rules=None, **kwargs) -> None: + super(LoadBalancer, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.sku = sku + self.frontend_ip_configurations = frontend_ip_configurations + self.backend_address_pools = backend_address_pools + self.load_balancing_rules = load_balancing_rules + self.probes = probes + self.inbound_nat_rules = inbound_nat_rules + self.inbound_nat_pools = inbound_nat_pools + self.outbound_rules = outbound_rules + self.resource_guid = None + self.provisioning_state = None + self.etag = None + + +class LoadBalancerSku(Model): + """SKU of a load balancer. + + :param name: Name of a load balancer SKU. Possible values include: + 'Basic', 'Standard' + :type name: str or + ~azure.mgmt.network.v2019_09_01.models.LoadBalancerSkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name=None, **kwargs) -> None: + super(LoadBalancerSku, self).__init__(**kwargs) + self.name = name + + +class LoadBalancingRule(SubResource): + """A load balancing rule for a load balancer. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param frontend_ip_configuration: A reference to frontend IP addresses. + :type frontend_ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param backend_address_pool: A reference to a pool of DIPs. Inbound + traffic is randomly load balanced across IPs in the backend IPs. + :type backend_address_pool: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param probe: The reference of the load balancer probe used by the load + balancing rule. + :type probe: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param protocol: Required. The reference to the transport protocol used by + the load balancing rule. Possible values include: 'Udp', 'Tcp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.TransportProtocol + :param load_distribution: The load distribution policy for this rule. + Possible values include: 'Default', 'SourceIP', 'SourceIPProtocol' + :type load_distribution: str or + ~azure.mgmt.network.v2019_09_01.models.LoadDistribution + :param frontend_port: Required. The port for the external endpoint. Port + numbers for each rule must be unique within the Load Balancer. Acceptable + values are between 0 and 65534. Note that value 0 enables "Any Port". + :type frontend_port: int + :param backend_port: The port used for internal connections on the + endpoint. Acceptable values are between 0 and 65535. Note that value 0 + enables "Any Port". + :type backend_port: int + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + The value can be set between 4 and 30 minutes. The default value is 4 + minutes. This element is only used when the protocol is set to TCP. + :type idle_timeout_in_minutes: int + :param enable_floating_ip: Configures a virtual machine's endpoint for the + floating IP capability required to configure a SQL AlwaysOn Availability + Group. This setting is required when using the SQL AlwaysOn Availability + Groups in SQL server. This setting can't be changed after you create the + endpoint. + :type enable_floating_ip: bool + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param disable_outbound_snat: Configures SNAT for the VMs in the backend + pool to use the publicIP address specified in the frontend of the load + balancing rule. + :type disable_outbound_snat: bool + :ivar provisioning_state: The provisioning state of the load balancing + rule resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within the set of + load balancing rules used by the load balancer. This name can be used to + access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'protocol': {'required': True}, + 'frontend_port': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'frontend_ip_configuration': {'key': 'properties.frontendIPConfiguration', 'type': 'SubResource'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'probe': {'key': 'properties.probe', 'type': 'SubResource'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'load_distribution': {'key': 'properties.loadDistribution', 'type': 'str'}, + 'frontend_port': {'key': 'properties.frontendPort', 'type': 'int'}, + 'backend_port': {'key': 'properties.backendPort', 'type': 'int'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'enable_floating_ip': {'key': 'properties.enableFloatingIP', 'type': 'bool'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'disable_outbound_snat': {'key': 'properties.disableOutboundSnat', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, protocol, frontend_port: int, id: str=None, frontend_ip_configuration=None, backend_address_pool=None, probe=None, load_distribution=None, backend_port: int=None, idle_timeout_in_minutes: int=None, enable_floating_ip: bool=None, enable_tcp_reset: bool=None, disable_outbound_snat: bool=None, name: str=None, **kwargs) -> None: + super(LoadBalancingRule, self).__init__(id=id, **kwargs) + self.frontend_ip_configuration = frontend_ip_configuration + self.backend_address_pool = backend_address_pool + self.probe = probe + self.protocol = protocol + self.load_distribution = load_distribution + self.frontend_port = frontend_port + self.backend_port = backend_port + self.idle_timeout_in_minutes = idle_timeout_in_minutes + self.enable_floating_ip = enable_floating_ip + self.enable_tcp_reset = enable_tcp_reset + self.disable_outbound_snat = disable_outbound_snat + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class LocalNetworkGateway(Resource): + """A common class for general resource information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param local_network_address_space: Local network site address space. + :type local_network_address_space: + ~azure.mgmt.network.v2019_09_01.models.AddressSpace + :param gateway_ip_address: IP address of local network gateway. + :type gateway_ip_address: str + :param bgp_settings: Local network gateway's BGP speaker settings. + :type bgp_settings: ~azure.mgmt.network.v2019_09_01.models.BgpSettings + :ivar resource_guid: The resource GUID property of the local network + gateway resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the local network + gateway resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'local_network_address_space': {'key': 'properties.localNetworkAddressSpace', 'type': 'AddressSpace'}, + 'gateway_ip_address': {'key': 'properties.gatewayIpAddress', 'type': 'str'}, + 'bgp_settings': {'key': 'properties.bgpSettings', 'type': 'BgpSettings'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, local_network_address_space=None, gateway_ip_address: str=None, bgp_settings=None, **kwargs) -> None: + super(LocalNetworkGateway, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.local_network_address_space = local_network_address_space + self.gateway_ip_address = gateway_ip_address + self.bgp_settings = bgp_settings + self.resource_guid = None + self.provisioning_state = None + self.etag = None + + +class LogSpecification(Model): + """Description of logging specification. + + :param name: The name of the specification. + :type name: str + :param display_name: The display name of the specification. + :type display_name: str + :param blob_duration: Duration of the blob. + :type blob_duration: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'blob_duration': {'key': 'blobDuration', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, display_name: str=None, blob_duration: str=None, **kwargs) -> None: + super(LogSpecification, self).__init__(**kwargs) + self.name = name + self.display_name = display_name + self.blob_duration = blob_duration + + +class ManagedRuleGroupOverride(Model): + """Defines a managed rule group override setting. + + All required parameters must be populated in order to send to Azure. + + :param rule_group_name: Required. Describes the managed rule group to + override. + :type rule_group_name: str + :param rules: List of rules that will be disabled. If none specified, all + rules in the group will be disabled. + :type rules: + list[~azure.mgmt.network.v2019_09_01.models.ManagedRuleOverride] + """ + + _validation = { + 'rule_group_name': {'required': True}, + } + + _attribute_map = { + 'rule_group_name': {'key': 'ruleGroupName', 'type': 'str'}, + 'rules': {'key': 'rules', 'type': '[ManagedRuleOverride]'}, + } + + def __init__(self, *, rule_group_name: str, rules=None, **kwargs) -> None: + super(ManagedRuleGroupOverride, self).__init__(**kwargs) + self.rule_group_name = rule_group_name + self.rules = rules + + +class ManagedRuleOverride(Model): + """Defines a managed rule group override setting. + + All required parameters must be populated in order to send to Azure. + + :param rule_id: Required. Identifier for the managed rule. + :type rule_id: str + :param state: Describes the state of the managed rule. Defaults to + Disabled if not specified. Possible values include: 'Disabled' + :type state: str or + ~azure.mgmt.network.v2019_09_01.models.ManagedRuleEnabledState + """ + + _validation = { + 'rule_id': {'required': True}, + } + + _attribute_map = { + 'rule_id': {'key': 'ruleId', 'type': 'str'}, + 'state': {'key': 'state', 'type': 'str'}, + } + + def __init__(self, *, rule_id: str, state=None, **kwargs) -> None: + super(ManagedRuleOverride, self).__init__(**kwargs) + self.rule_id = rule_id + self.state = state + + +class ManagedRulesDefinition(Model): + """Allow to exclude some variable satisfy the condition for the WAF check. + + All required parameters must be populated in order to send to Azure. + + :param exclusions: Describes the Exclusions that are applied on the + policy. + :type exclusions: + list[~azure.mgmt.network.v2019_09_01.models.OwaspCrsExclusionEntry] + :param managed_rule_sets: Required. Describes the ruleSets that are + associated with the policy. + :type managed_rule_sets: + list[~azure.mgmt.network.v2019_09_01.models.ManagedRuleSet] + """ + + _validation = { + 'managed_rule_sets': {'required': True}, + } + + _attribute_map = { + 'exclusions': {'key': 'exclusions', 'type': '[OwaspCrsExclusionEntry]'}, + 'managed_rule_sets': {'key': 'managedRuleSets', 'type': '[ManagedRuleSet]'}, + } + + def __init__(self, *, managed_rule_sets, exclusions=None, **kwargs) -> None: + super(ManagedRulesDefinition, self).__init__(**kwargs) + self.exclusions = exclusions + self.managed_rule_sets = managed_rule_sets + + +class ManagedRuleSet(Model): + """Defines a managed rule set. + + All required parameters must be populated in order to send to Azure. + + :param rule_set_type: Required. Defines the rule set type to use. + :type rule_set_type: str + :param rule_set_version: Required. Defines the version of the rule set to + use. + :type rule_set_version: str + :param rule_group_overrides: Defines the rule group overrides to apply to + the rule set. + :type rule_group_overrides: + list[~azure.mgmt.network.v2019_09_01.models.ManagedRuleGroupOverride] + """ + + _validation = { + 'rule_set_type': {'required': True}, + 'rule_set_version': {'required': True}, + } + + _attribute_map = { + 'rule_set_type': {'key': 'ruleSetType', 'type': 'str'}, + 'rule_set_version': {'key': 'ruleSetVersion', 'type': 'str'}, + 'rule_group_overrides': {'key': 'ruleGroupOverrides', 'type': '[ManagedRuleGroupOverride]'}, + } + + def __init__(self, *, rule_set_type: str, rule_set_version: str, rule_group_overrides=None, **kwargs) -> None: + super(ManagedRuleSet, self).__init__(**kwargs) + self.rule_set_type = rule_set_type + self.rule_set_version = rule_set_version + self.rule_group_overrides = rule_group_overrides + + +class ManagedServiceIdentity(Model): + """Identity for the resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar principal_id: The principal id of the system assigned identity. This + property will only be provided for a system assigned identity. + :vartype principal_id: str + :ivar tenant_id: The tenant id of the system assigned identity. This + property will only be provided for a system assigned identity. + :vartype tenant_id: str + :param type: The type of identity used for the resource. The type + 'SystemAssigned, UserAssigned' includes both an implicitly created + identity and a set of user assigned identities. The type 'None' will + remove any identities from the virtual machine. Possible values include: + 'SystemAssigned', 'UserAssigned', 'SystemAssigned, UserAssigned', 'None' + :type type: str or + ~azure.mgmt.network.v2019_09_01.models.ResourceIdentityType + :param user_assigned_identities: The list of user identities associated + with resource. The user identity dictionary key references will be ARM + resource ids in the form: + '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. + :type user_assigned_identities: dict[str, + ~azure.mgmt.network.v2019_09_01.models.ManagedServiceIdentityUserAssignedIdentitiesValue] + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'tenant_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'ResourceIdentityType'}, + 'user_assigned_identities': {'key': 'userAssignedIdentities', 'type': '{ManagedServiceIdentityUserAssignedIdentitiesValue}'}, + } + + def __init__(self, *, type=None, user_assigned_identities=None, **kwargs) -> None: + super(ManagedServiceIdentity, self).__init__(**kwargs) + self.principal_id = None + self.tenant_id = None + self.type = type + self.user_assigned_identities = user_assigned_identities + + +class ManagedServiceIdentityUserAssignedIdentitiesValue(Model): + """ManagedServiceIdentityUserAssignedIdentitiesValue. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar principal_id: The principal id of user assigned identity. + :vartype principal_id: str + :ivar client_id: The client id of user assigned identity. + :vartype client_id: str + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'client_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'client_id': {'key': 'clientId', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(ManagedServiceIdentityUserAssignedIdentitiesValue, self).__init__(**kwargs) + self.principal_id = None + self.client_id = None + + +class MatchCondition(Model): + """Define match conditions. + + All required parameters must be populated in order to send to Azure. + + :param match_variables: Required. List of match variables. + :type match_variables: + list[~azure.mgmt.network.v2019_09_01.models.MatchVariable] + :param operator: Required. Describes operator to be matched. Possible + values include: 'IPMatch', 'Equal', 'Contains', 'LessThan', 'GreaterThan', + 'LessThanOrEqual', 'GreaterThanOrEqual', 'BeginsWith', 'EndsWith', + 'Regex', 'GeoMatch' + :type operator: str or + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallOperator + :param negation_conditon: Describes if this is negate condition or not. + :type negation_conditon: bool + :param match_values: Required. Match value. + :type match_values: list[str] + :param transforms: List of transforms. + :type transforms: list[str or + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallTransform] + """ + + _validation = { + 'match_variables': {'required': True}, + 'operator': {'required': True}, + 'match_values': {'required': True}, + } + + _attribute_map = { + 'match_variables': {'key': 'matchVariables', 'type': '[MatchVariable]'}, + 'operator': {'key': 'operator', 'type': 'str'}, + 'negation_conditon': {'key': 'negationConditon', 'type': 'bool'}, + 'match_values': {'key': 'matchValues', 'type': '[str]'}, + 'transforms': {'key': 'transforms', 'type': '[str]'}, + } + + def __init__(self, *, match_variables, operator, match_values, negation_conditon: bool=None, transforms=None, **kwargs) -> None: + super(MatchCondition, self).__init__(**kwargs) + self.match_variables = match_variables + self.operator = operator + self.negation_conditon = negation_conditon + self.match_values = match_values + self.transforms = transforms + + +class MatchedRule(Model): + """Matched rule. + + :param rule_name: Name of the matched network security rule. + :type rule_name: str + :param action: The network traffic is allowed or denied. Possible values + are 'Allow' and 'Deny'. + :type action: str + """ + + _attribute_map = { + 'rule_name': {'key': 'ruleName', 'type': 'str'}, + 'action': {'key': 'action', 'type': 'str'}, + } + + def __init__(self, *, rule_name: str=None, action: str=None, **kwargs) -> None: + super(MatchedRule, self).__init__(**kwargs) + self.rule_name = rule_name + self.action = action + + +class MatchVariable(Model): + """Define match variables. + + All required parameters must be populated in order to send to Azure. + + :param variable_name: Required. Match Variable. Possible values include: + 'RemoteAddr', 'RequestMethod', 'QueryString', 'PostArgs', 'RequestUri', + 'RequestHeaders', 'RequestBody', 'RequestCookies' + :type variable_name: str or + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallMatchVariable + :param selector: Describes field of the matchVariable collection. + :type selector: str + """ + + _validation = { + 'variable_name': {'required': True}, + } + + _attribute_map = { + 'variable_name': {'key': 'variableName', 'type': 'str'}, + 'selector': {'key': 'selector', 'type': 'str'}, + } + + def __init__(self, *, variable_name, selector: str=None, **kwargs) -> None: + super(MatchVariable, self).__init__(**kwargs) + self.variable_name = variable_name + self.selector = selector + + +class MetricSpecification(Model): + """Description of metrics specification. + + :param name: The name of the metric. + :type name: str + :param display_name: The display name of the metric. + :type display_name: str + :param display_description: The description of the metric. + :type display_description: str + :param unit: Units the metric to be displayed in. + :type unit: str + :param aggregation_type: The aggregation type. + :type aggregation_type: str + :param availabilities: List of availability. + :type availabilities: + list[~azure.mgmt.network.v2019_09_01.models.Availability] + :param enable_regional_mdm_account: Whether regional MDM account enabled. + :type enable_regional_mdm_account: bool + :param fill_gap_with_zero: Whether gaps would be filled with zeros. + :type fill_gap_with_zero: bool + :param metric_filter_pattern: Pattern for the filter of the metric. + :type metric_filter_pattern: str + :param dimensions: List of dimensions. + :type dimensions: list[~azure.mgmt.network.v2019_09_01.models.Dimension] + :param is_internal: Whether the metric is internal. + :type is_internal: bool + :param source_mdm_account: The source MDM account. + :type source_mdm_account: str + :param source_mdm_namespace: The source MDM namespace. + :type source_mdm_namespace: str + :param resource_id_dimension_name_override: The resource Id dimension name + override. + :type resource_id_dimension_name_override: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display_name': {'key': 'displayName', 'type': 'str'}, + 'display_description': {'key': 'displayDescription', 'type': 'str'}, + 'unit': {'key': 'unit', 'type': 'str'}, + 'aggregation_type': {'key': 'aggregationType', 'type': 'str'}, + 'availabilities': {'key': 'availabilities', 'type': '[Availability]'}, + 'enable_regional_mdm_account': {'key': 'enableRegionalMdmAccount', 'type': 'bool'}, + 'fill_gap_with_zero': {'key': 'fillGapWithZero', 'type': 'bool'}, + 'metric_filter_pattern': {'key': 'metricFilterPattern', 'type': 'str'}, + 'dimensions': {'key': 'dimensions', 'type': '[Dimension]'}, + 'is_internal': {'key': 'isInternal', 'type': 'bool'}, + 'source_mdm_account': {'key': 'sourceMdmAccount', 'type': 'str'}, + 'source_mdm_namespace': {'key': 'sourceMdmNamespace', 'type': 'str'}, + 'resource_id_dimension_name_override': {'key': 'resourceIdDimensionNameOverride', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, display_name: str=None, display_description: str=None, unit: str=None, aggregation_type: str=None, availabilities=None, enable_regional_mdm_account: bool=None, fill_gap_with_zero: bool=None, metric_filter_pattern: str=None, dimensions=None, is_internal: bool=None, source_mdm_account: str=None, source_mdm_namespace: str=None, resource_id_dimension_name_override: str=None, **kwargs) -> None: + super(MetricSpecification, self).__init__(**kwargs) + self.name = name + self.display_name = display_name + self.display_description = display_description + self.unit = unit + self.aggregation_type = aggregation_type + self.availabilities = availabilities + self.enable_regional_mdm_account = enable_regional_mdm_account + self.fill_gap_with_zero = fill_gap_with_zero + self.metric_filter_pattern = metric_filter_pattern + self.dimensions = dimensions + self.is_internal = is_internal + self.source_mdm_account = source_mdm_account + self.source_mdm_namespace = source_mdm_namespace + self.resource_id_dimension_name_override = resource_id_dimension_name_override + + +class NatGateway(Resource): + """Nat Gateway resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The nat gateway SKU. + :type sku: ~azure.mgmt.network.v2019_09_01.models.NatGatewaySku + :param idle_timeout_in_minutes: The idle timeout of the nat gateway. + :type idle_timeout_in_minutes: int + :param public_ip_addresses: An array of public ip addresses associated + with the nat gateway resource. + :type public_ip_addresses: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param public_ip_prefixes: An array of public ip prefixes associated with + the nat gateway resource. + :type public_ip_prefixes: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar subnets: An array of references to the subnets using this nat + gateway resource. + :vartype subnets: list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar resource_guid: The resource GUID property of the NAT gateway + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the NAT gateway + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param zones: A list of availability zones denoting the zone in which Nat + Gateway should be deployed. + :type zones: list[str] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'subnets': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'NatGatewaySku'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'public_ip_addresses': {'key': 'properties.publicIpAddresses', 'type': '[SubResource]'}, + 'public_ip_prefixes': {'key': 'properties.publicIpPrefixes', 'type': '[SubResource]'}, + 'subnets': {'key': 'properties.subnets', 'type': '[SubResource]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, sku=None, idle_timeout_in_minutes: int=None, public_ip_addresses=None, public_ip_prefixes=None, zones=None, **kwargs) -> None: + super(NatGateway, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.sku = sku + self.idle_timeout_in_minutes = idle_timeout_in_minutes + self.public_ip_addresses = public_ip_addresses + self.public_ip_prefixes = public_ip_prefixes + self.subnets = None + self.resource_guid = None + self.provisioning_state = None + self.zones = zones + self.etag = None + + +class NatGatewaySku(Model): + """SKU of nat gateway. + + :param name: Name of Nat Gateway SKU. Possible values include: 'Standard' + :type name: str or + ~azure.mgmt.network.v2019_09_01.models.NatGatewaySkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name=None, **kwargs) -> None: + super(NatGatewaySku, self).__init__(**kwargs) + self.name = name + + +class NetworkConfigurationDiagnosticParameters(Model): + """Parameters to get network configuration diagnostic. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the target resource to + perform network configuration diagnostic. Valid options are VM, + NetworkInterface, VMSS/NetworkInterface and Application Gateway. + :type target_resource_id: str + :param verbosity_level: Verbosity level. Possible values include: + 'Normal', 'Minimum', 'Full' + :type verbosity_level: str or + ~azure.mgmt.network.v2019_09_01.models.VerbosityLevel + :param profiles: Required. List of network configuration diagnostic + profiles. + :type profiles: + list[~azure.mgmt.network.v2019_09_01.models.NetworkConfigurationDiagnosticProfile] + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'profiles': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'verbosity_level': {'key': 'verbosityLevel', 'type': 'str'}, + 'profiles': {'key': 'profiles', 'type': '[NetworkConfigurationDiagnosticProfile]'}, + } + + def __init__(self, *, target_resource_id: str, profiles, verbosity_level=None, **kwargs) -> None: + super(NetworkConfigurationDiagnosticParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id + self.verbosity_level = verbosity_level + self.profiles = profiles + + +class NetworkConfigurationDiagnosticProfile(Model): + """Parameters to compare with network configuration. + + All required parameters must be populated in order to send to Azure. + + :param direction: Required. The direction of the traffic. Possible values + include: 'Inbound', 'Outbound' + :type direction: str or ~azure.mgmt.network.v2019_09_01.models.Direction + :param protocol: Required. Protocol to be verified on. Accepted values are + '*', TCP, UDP. + :type protocol: str + :param source: Required. Traffic source. Accepted values are '*', IP + Address/CIDR, Service Tag. + :type source: str + :param destination: Required. Traffic destination. Accepted values are: + '*', IP Address/CIDR, Service Tag. + :type destination: str + :param destination_port: Required. Traffic destination port. Accepted + values are '*' and a single port in the range (0 - 65535). + :type destination_port: str + """ + + _validation = { + 'direction': {'required': True}, + 'protocol': {'required': True}, + 'source': {'required': True}, + 'destination': {'required': True}, + 'destination_port': {'required': True}, + } + + _attribute_map = { + 'direction': {'key': 'direction', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'source': {'key': 'source', 'type': 'str'}, + 'destination': {'key': 'destination', 'type': 'str'}, + 'destination_port': {'key': 'destinationPort', 'type': 'str'}, + } + + def __init__(self, *, direction, protocol: str, source: str, destination: str, destination_port: str, **kwargs) -> None: + super(NetworkConfigurationDiagnosticProfile, self).__init__(**kwargs) + self.direction = direction + self.protocol = protocol + self.source = source + self.destination = destination + self.destination_port = destination_port + + +class NetworkConfigurationDiagnosticResponse(Model): + """Results of network configuration diagnostic on the target resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar results: List of network configuration diagnostic results. + :vartype results: + list[~azure.mgmt.network.v2019_09_01.models.NetworkConfigurationDiagnosticResult] + """ + + _validation = { + 'results': {'readonly': True}, + } + + _attribute_map = { + 'results': {'key': 'results', 'type': '[NetworkConfigurationDiagnosticResult]'}, + } + + def __init__(self, **kwargs) -> None: + super(NetworkConfigurationDiagnosticResponse, self).__init__(**kwargs) + self.results = None + + +class NetworkConfigurationDiagnosticResult(Model): + """Network configuration diagnostic result corresponded to provided traffic + query. + + :param profile: Network configuration diagnostic profile. + :type profile: + ~azure.mgmt.network.v2019_09_01.models.NetworkConfigurationDiagnosticProfile + :param network_security_group_result: Network security group result. + :type network_security_group_result: + ~azure.mgmt.network.v2019_09_01.models.NetworkSecurityGroupResult + """ + + _attribute_map = { + 'profile': {'key': 'profile', 'type': 'NetworkConfigurationDiagnosticProfile'}, + 'network_security_group_result': {'key': 'networkSecurityGroupResult', 'type': 'NetworkSecurityGroupResult'}, + } + + def __init__(self, *, profile=None, network_security_group_result=None, **kwargs) -> None: + super(NetworkConfigurationDiagnosticResult, self).__init__(**kwargs) + self.profile = profile + self.network_security_group_result = network_security_group_result + + +class NetworkIntentPolicy(Resource): + """Network Intent Policy resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, **kwargs) -> None: + super(NetworkIntentPolicy, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.etag = None + + +class NetworkIntentPolicyConfiguration(Model): + """Details of NetworkIntentPolicyConfiguration for + PrepareNetworkPoliciesRequest. + + :param network_intent_policy_name: The name of the Network Intent Policy + for storing in target subscription. + :type network_intent_policy_name: str + :param source_network_intent_policy: Source network intent policy. + :type source_network_intent_policy: + ~azure.mgmt.network.v2019_09_01.models.NetworkIntentPolicy + """ + + _attribute_map = { + 'network_intent_policy_name': {'key': 'networkIntentPolicyName', 'type': 'str'}, + 'source_network_intent_policy': {'key': 'sourceNetworkIntentPolicy', 'type': 'NetworkIntentPolicy'}, + } + + def __init__(self, *, network_intent_policy_name: str=None, source_network_intent_policy=None, **kwargs) -> None: + super(NetworkIntentPolicyConfiguration, self).__init__(**kwargs) + self.network_intent_policy_name = network_intent_policy_name + self.source_network_intent_policy = source_network_intent_policy + + +class NetworkInterface(Resource): + """A network interface in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar virtual_machine: The reference of a virtual machine. + :vartype virtual_machine: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param network_security_group: The reference of the NetworkSecurityGroup + resource. + :type network_security_group: + ~azure.mgmt.network.v2019_09_01.models.NetworkSecurityGroup + :ivar private_endpoint: A reference to the private endpoint to which the + network interface is linked. + :vartype private_endpoint: + ~azure.mgmt.network.v2019_09_01.models.PrivateEndpoint + :param ip_configurations: A list of IPConfigurations of the network + interface. + :type ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfiguration] + :ivar tap_configurations: A list of TapConfigurations of the network + interface. + :vartype tap_configurations: + list[~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceTapConfiguration] + :param dns_settings: The DNS settings in network interface. + :type dns_settings: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceDnsSettings + :ivar mac_address: The MAC address of the network interface. + :vartype mac_address: str + :ivar primary: Whether this is a primary network interface on a virtual + machine. + :vartype primary: bool + :param enable_accelerated_networking: If the network interface is + accelerated networking enabled. + :type enable_accelerated_networking: bool + :param enable_ip_forwarding: Indicates whether IP forwarding is enabled on + this network interface. + :type enable_ip_forwarding: bool + :ivar hosted_workloads: A list of references to linked BareMetal + resources. + :vartype hosted_workloads: list[str] + :ivar resource_guid: The resource GUID property of the network interface + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the network interface + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_machine': {'readonly': True}, + 'private_endpoint': {'readonly': True}, + 'tap_configurations': {'readonly': True}, + 'mac_address': {'readonly': True}, + 'primary': {'readonly': True}, + 'hosted_workloads': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_machine': {'key': 'properties.virtualMachine', 'type': 'SubResource'}, + 'network_security_group': {'key': 'properties.networkSecurityGroup', 'type': 'NetworkSecurityGroup'}, + 'private_endpoint': {'key': 'properties.privateEndpoint', 'type': 'PrivateEndpoint'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[NetworkInterfaceIPConfiguration]'}, + 'tap_configurations': {'key': 'properties.tapConfigurations', 'type': '[NetworkInterfaceTapConfiguration]'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'NetworkInterfaceDnsSettings'}, + 'mac_address': {'key': 'properties.macAddress', 'type': 'str'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'enable_accelerated_networking': {'key': 'properties.enableAcceleratedNetworking', 'type': 'bool'}, + 'enable_ip_forwarding': {'key': 'properties.enableIPForwarding', 'type': 'bool'}, + 'hosted_workloads': {'key': 'properties.hostedWorkloads', 'type': '[str]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, network_security_group=None, ip_configurations=None, dns_settings=None, enable_accelerated_networking: bool=None, enable_ip_forwarding: bool=None, **kwargs) -> None: + super(NetworkInterface, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.virtual_machine = None + self.network_security_group = network_security_group + self.private_endpoint = None + self.ip_configurations = ip_configurations + self.tap_configurations = None + self.dns_settings = dns_settings + self.mac_address = None + self.primary = None + self.enable_accelerated_networking = enable_accelerated_networking + self.enable_ip_forwarding = enable_ip_forwarding + self.hosted_workloads = None + self.resource_guid = None + self.provisioning_state = None + self.etag = None + + +class NetworkInterfaceAssociation(Model): + """Network interface and its custom security rules. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Network interface ID. + :vartype id: str + :param security_rules: Collection of custom security rules. + :type security_rules: + list[~azure.mgmt.network.v2019_09_01.models.SecurityRule] + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'security_rules': {'key': 'securityRules', 'type': '[SecurityRule]'}, + } + + def __init__(self, *, security_rules=None, **kwargs) -> None: + super(NetworkInterfaceAssociation, self).__init__(**kwargs) + self.id = None + self.security_rules = security_rules + + +class NetworkInterfaceDnsSettings(Model): + """DNS settings of a network interface. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param dns_servers: List of DNS servers IP addresses. Use + 'AzureProvidedDNS' to switch to azure provided DNS resolution. + 'AzureProvidedDNS' value cannot be combined with other IPs, it must be the + only value in dnsServers collection. + :type dns_servers: list[str] + :ivar applied_dns_servers: If the VM that uses this NIC is part of an + Availability Set, then this list will have the union of all DNS servers + from all NICs that are part of the Availability Set. This property is what + is configured on each of those VMs. + :vartype applied_dns_servers: list[str] + :param internal_dns_name_label: Relative DNS name for this NIC used for + internal communications between VMs in the same virtual network. + :type internal_dns_name_label: str + :ivar internal_fqdn: Fully qualified DNS name supporting internal + communications between VMs in the same virtual network. + :vartype internal_fqdn: str + :ivar internal_domain_name_suffix: Even if internalDnsNameLabel is not + specified, a DNS entry is created for the primary NIC of the VM. This DNS + name can be constructed by concatenating the VM name with the value of + internalDomainNameSuffix. + :vartype internal_domain_name_suffix: str + """ + + _validation = { + 'applied_dns_servers': {'readonly': True}, + 'internal_fqdn': {'readonly': True}, + 'internal_domain_name_suffix': {'readonly': True}, + } + + _attribute_map = { + 'dns_servers': {'key': 'dnsServers', 'type': '[str]'}, + 'applied_dns_servers': {'key': 'appliedDnsServers', 'type': '[str]'}, + 'internal_dns_name_label': {'key': 'internalDnsNameLabel', 'type': 'str'}, + 'internal_fqdn': {'key': 'internalFqdn', 'type': 'str'}, + 'internal_domain_name_suffix': {'key': 'internalDomainNameSuffix', 'type': 'str'}, + } + + def __init__(self, *, dns_servers=None, internal_dns_name_label: str=None, **kwargs) -> None: + super(NetworkInterfaceDnsSettings, self).__init__(**kwargs) + self.dns_servers = dns_servers + self.applied_dns_servers = None + self.internal_dns_name_label = internal_dns_name_label + self.internal_fqdn = None + self.internal_domain_name_suffix = None + + +class NetworkInterfaceIPConfiguration(SubResource): + """IPConfiguration in a network interface. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param virtual_network_taps: The reference to Virtual Network Taps. + :type virtual_network_taps: + list[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkTap] + :param application_gateway_backend_address_pools: The reference of + ApplicationGatewayBackendAddressPool resource. + :type application_gateway_backend_address_pools: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendAddressPool] + :param load_balancer_backend_address_pools: The reference of + LoadBalancerBackendAddressPool resource. + :type load_balancer_backend_address_pools: + list[~azure.mgmt.network.v2019_09_01.models.BackendAddressPool] + :param load_balancer_inbound_nat_rules: A list of references of + LoadBalancerInboundNatRules. + :type load_balancer_inbound_nat_rules: + list[~azure.mgmt.network.v2019_09_01.models.InboundNatRule] + :param private_ip_address: Private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: The private IP address allocation + method. Possible values include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2019_09_01.models.IPAllocationMethod + :param private_ip_address_version: Whether the specific IP configuration + is IPv4 or IPv6. Default is IPv4. Possible values include: 'IPv4', 'IPv6' + :type private_ip_address_version: str or + ~azure.mgmt.network.v2019_09_01.models.IPVersion + :param subnet: Subnet bound to the IP configuration. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.Subnet + :param primary: Whether this is a primary customer address on the network + interface. + :type primary: bool + :param public_ip_address: Public IP address bound to the IP configuration. + :type public_ip_address: + ~azure.mgmt.network.v2019_09_01.models.PublicIPAddress + :param application_security_groups: Application security groups in which + the IP configuration is included. + :type application_security_groups: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationSecurityGroup] + :ivar provisioning_state: The provisioning state of the network interface + IP configuration. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar private_link_connection_properties: PrivateLinkConnection properties + for the network interface. + :vartype private_link_connection_properties: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'private_link_connection_properties': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'virtual_network_taps': {'key': 'properties.virtualNetworkTaps', 'type': '[VirtualNetworkTap]'}, + 'application_gateway_backend_address_pools': {'key': 'properties.applicationGatewayBackendAddressPools', 'type': '[ApplicationGatewayBackendAddressPool]'}, + 'load_balancer_backend_address_pools': {'key': 'properties.loadBalancerBackendAddressPools', 'type': '[BackendAddressPool]'}, + 'load_balancer_inbound_nat_rules': {'key': 'properties.loadBalancerInboundNatRules', 'type': '[InboundNatRule]'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'private_ip_address_version': {'key': 'properties.privateIPAddressVersion', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'PublicIPAddress'}, + 'application_security_groups': {'key': 'properties.applicationSecurityGroups', 'type': '[ApplicationSecurityGroup]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'private_link_connection_properties': {'key': 'properties.privateLinkConnectionProperties', 'type': 'NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, virtual_network_taps=None, application_gateway_backend_address_pools=None, load_balancer_backend_address_pools=None, load_balancer_inbound_nat_rules=None, private_ip_address: str=None, private_ip_allocation_method=None, private_ip_address_version=None, subnet=None, primary: bool=None, public_ip_address=None, application_security_groups=None, name: str=None, **kwargs) -> None: + super(NetworkInterfaceIPConfiguration, self).__init__(id=id, **kwargs) + self.virtual_network_taps = virtual_network_taps + self.application_gateway_backend_address_pools = application_gateway_backend_address_pools + self.load_balancer_backend_address_pools = load_balancer_backend_address_pools + self.load_balancer_inbound_nat_rules = load_balancer_inbound_nat_rules + self.private_ip_address = private_ip_address + self.private_ip_allocation_method = private_ip_allocation_method + self.private_ip_address_version = private_ip_address_version + self.subnet = subnet + self.primary = primary + self.public_ip_address = public_ip_address + self.application_security_groups = application_security_groups + self.provisioning_state = None + self.private_link_connection_properties = None + self.name = name + self.etag = None + + +class NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties(Model): + """PrivateLinkConnection properties for the network interface. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar group_id: The group ID for current private link connection. + :vartype group_id: str + :ivar required_member_name: The required member name for current private + link connection. + :vartype required_member_name: str + :ivar fqdns: List of FQDNs for current private link connection. + :vartype fqdns: list[str] + """ + + _validation = { + 'group_id': {'readonly': True}, + 'required_member_name': {'readonly': True}, + 'fqdns': {'readonly': True}, + } + + _attribute_map = { + 'group_id': {'key': 'groupId', 'type': 'str'}, + 'required_member_name': {'key': 'requiredMemberName', 'type': 'str'}, + 'fqdns': {'key': 'fqdns', 'type': '[str]'}, + } + + def __init__(self, **kwargs) -> None: + super(NetworkInterfaceIPConfigurationPrivateLinkConnectionProperties, self).__init__(**kwargs) + self.group_id = None + self.required_member_name = None + self.fqdns = None + + +class NetworkInterfaceTapConfiguration(SubResource): + """Tap configuration in a Network Interface. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param virtual_network_tap: The reference of the Virtual Network Tap + resource. + :type virtual_network_tap: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkTap + :ivar provisioning_state: The provisioning state of the network interface + tap configuration resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Sub Resource type. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'virtual_network_tap': {'key': 'properties.virtualNetworkTap', 'type': 'VirtualNetworkTap'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, virtual_network_tap=None, name: str=None, **kwargs) -> None: + super(NetworkInterfaceTapConfiguration, self).__init__(id=id, **kwargs) + self.virtual_network_tap = virtual_network_tap + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class NetworkProfile(Resource): + """Network profile resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar container_network_interfaces: List of child container network + interfaces. + :vartype container_network_interfaces: + list[~azure.mgmt.network.v2019_09_01.models.ContainerNetworkInterface] + :param container_network_interface_configurations: List of chid container + network interface configurations. + :type container_network_interface_configurations: + list[~azure.mgmt.network.v2019_09_01.models.ContainerNetworkInterfaceConfiguration] + :ivar resource_guid: The resource GUID property of the network profile + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the network profile + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'container_network_interfaces': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'container_network_interfaces': {'key': 'properties.containerNetworkInterfaces', 'type': '[ContainerNetworkInterface]'}, + 'container_network_interface_configurations': {'key': 'properties.containerNetworkInterfaceConfigurations', 'type': '[ContainerNetworkInterfaceConfiguration]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, container_network_interface_configurations=None, **kwargs) -> None: + super(NetworkProfile, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.container_network_interfaces = None + self.container_network_interface_configurations = container_network_interface_configurations + self.resource_guid = None + self.provisioning_state = None + self.etag = None + + +class NetworkRuleCondition(FirewallPolicyRuleCondition): + """Rule condition of type network. + + All required parameters must be populated in order to send to Azure. + + :param name: Name of the rule condition. + :type name: str + :param description: Description of the rule condition. + :type description: str + :param rule_condition_type: Required. Constant filled by server. + :type rule_condition_type: str + :param ip_protocols: Array of FirewallPolicyRuleConditionNetworkProtocols. + :type ip_protocols: list[str or + ~azure.mgmt.network.v2019_09_01.models.FirewallPolicyRuleConditionNetworkProtocol] + :param source_addresses: List of source IP addresses for this rule. + :type source_addresses: list[str] + :param destination_addresses: List of destination IP addresses or Service + Tags. + :type destination_addresses: list[str] + :param destination_ports: List of destination ports. + :type destination_ports: list[str] + """ + + _validation = { + 'rule_condition_type': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'rule_condition_type': {'key': 'ruleConditionType', 'type': 'str'}, + 'ip_protocols': {'key': 'ipProtocols', 'type': '[str]'}, + 'source_addresses': {'key': 'sourceAddresses', 'type': '[str]'}, + 'destination_addresses': {'key': 'destinationAddresses', 'type': '[str]'}, + 'destination_ports': {'key': 'destinationPorts', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, description: str=None, ip_protocols=None, source_addresses=None, destination_addresses=None, destination_ports=None, **kwargs) -> None: + super(NetworkRuleCondition, self).__init__(name=name, description=description, **kwargs) + self.ip_protocols = ip_protocols + self.source_addresses = source_addresses + self.destination_addresses = destination_addresses + self.destination_ports = destination_ports + self.rule_condition_type = 'NetworkRuleCondition' + + +class NetworkSecurityGroup(Resource): + """NetworkSecurityGroup resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param security_rules: A collection of security rules of the network + security group. + :type security_rules: + list[~azure.mgmt.network.v2019_09_01.models.SecurityRule] + :ivar default_security_rules: The default security rules of network + security group. + :vartype default_security_rules: + list[~azure.mgmt.network.v2019_09_01.models.SecurityRule] + :ivar network_interfaces: A collection of references to network + interfaces. + :vartype network_interfaces: + list[~azure.mgmt.network.v2019_09_01.models.NetworkInterface] + :ivar subnets: A collection of references to subnets. + :vartype subnets: list[~azure.mgmt.network.v2019_09_01.models.Subnet] + :ivar resource_guid: The resource GUID property of the network security + group resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the network security + group resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'default_security_rules': {'readonly': True}, + 'network_interfaces': {'readonly': True}, + 'subnets': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'security_rules': {'key': 'properties.securityRules', 'type': '[SecurityRule]'}, + 'default_security_rules': {'key': 'properties.defaultSecurityRules', 'type': '[SecurityRule]'}, + 'network_interfaces': {'key': 'properties.networkInterfaces', 'type': '[NetworkInterface]'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, security_rules=None, **kwargs) -> None: + super(NetworkSecurityGroup, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.security_rules = security_rules + self.default_security_rules = None + self.network_interfaces = None + self.subnets = None + self.resource_guid = None + self.provisioning_state = None + self.etag = None + + +class NetworkSecurityGroupResult(Model): + """Network configuration diagnostic result corresponded provided traffic + query. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param security_rule_access_result: The network traffic is allowed or + denied. Possible values include: 'Allow', 'Deny' + :type security_rule_access_result: str or + ~azure.mgmt.network.v2019_09_01.models.SecurityRuleAccess + :ivar evaluated_network_security_groups: List of results network security + groups diagnostic. + :vartype evaluated_network_security_groups: + list[~azure.mgmt.network.v2019_09_01.models.EvaluatedNetworkSecurityGroup] + """ + + _validation = { + 'evaluated_network_security_groups': {'readonly': True}, + } + + _attribute_map = { + 'security_rule_access_result': {'key': 'securityRuleAccessResult', 'type': 'str'}, + 'evaluated_network_security_groups': {'key': 'evaluatedNetworkSecurityGroups', 'type': '[EvaluatedNetworkSecurityGroup]'}, + } + + def __init__(self, *, security_rule_access_result=None, **kwargs) -> None: + super(NetworkSecurityGroupResult, self).__init__(**kwargs) + self.security_rule_access_result = security_rule_access_result + self.evaluated_network_security_groups = None + + +class NetworkSecurityRulesEvaluationResult(Model): + """Network security rules evaluation result. + + :param name: Name of the network security rule. + :type name: str + :param protocol_matched: Value indicating whether protocol is matched. + :type protocol_matched: bool + :param source_matched: Value indicating whether source is matched. + :type source_matched: bool + :param source_port_matched: Value indicating whether source port is + matched. + :type source_port_matched: bool + :param destination_matched: Value indicating whether destination is + matched. + :type destination_matched: bool + :param destination_port_matched: Value indicating whether destination port + is matched. + :type destination_port_matched: bool + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'protocol_matched': {'key': 'protocolMatched', 'type': 'bool'}, + 'source_matched': {'key': 'sourceMatched', 'type': 'bool'}, + 'source_port_matched': {'key': 'sourcePortMatched', 'type': 'bool'}, + 'destination_matched': {'key': 'destinationMatched', 'type': 'bool'}, + 'destination_port_matched': {'key': 'destinationPortMatched', 'type': 'bool'}, + } + + def __init__(self, *, name: str=None, protocol_matched: bool=None, source_matched: bool=None, source_port_matched: bool=None, destination_matched: bool=None, destination_port_matched: bool=None, **kwargs) -> None: + super(NetworkSecurityRulesEvaluationResult, self).__init__(**kwargs) + self.name = name + self.protocol_matched = protocol_matched + self.source_matched = source_matched + self.source_port_matched = source_port_matched + self.destination_matched = destination_matched + self.destination_port_matched = destination_port_matched + + +class NetworkWatcher(Resource): + """Network watcher in a resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar provisioning_state: The provisioning state of the network watcher + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, **kwargs) -> None: + super(NetworkWatcher, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.etag = None + self.provisioning_state = None + + +class NextHopParameters(Model): + """Parameters that define the source and destination endpoint. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The resource identifier of the target + resource against which the action is to be performed. + :type target_resource_id: str + :param source_ip_address: Required. The source IP address. + :type source_ip_address: str + :param destination_ip_address: Required. The destination IP address. + :type destination_ip_address: str + :param target_nic_resource_id: The NIC ID. (If VM has multiple NICs and IP + forwarding is enabled on any of the nics, then this parameter must be + specified. Otherwise optional). + :type target_nic_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'source_ip_address': {'required': True}, + 'destination_ip_address': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'source_ip_address': {'key': 'sourceIPAddress', 'type': 'str'}, + 'destination_ip_address': {'key': 'destinationIPAddress', 'type': 'str'}, + 'target_nic_resource_id': {'key': 'targetNicResourceId', 'type': 'str'}, + } + + def __init__(self, *, target_resource_id: str, source_ip_address: str, destination_ip_address: str, target_nic_resource_id: str=None, **kwargs) -> None: + super(NextHopParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id + self.source_ip_address = source_ip_address + self.destination_ip_address = destination_ip_address + self.target_nic_resource_id = target_nic_resource_id + + +class NextHopResult(Model): + """The information about next hop from the specified VM. + + :param next_hop_type: Next hop type. Possible values include: 'Internet', + 'VirtualAppliance', 'VirtualNetworkGateway', 'VnetLocal', + 'HyperNetGateway', 'None' + :type next_hop_type: str or + ~azure.mgmt.network.v2019_09_01.models.NextHopType + :param next_hop_ip_address: Next hop IP Address. + :type next_hop_ip_address: str + :param route_table_id: The resource identifier for the route table + associated with the route being returned. If the route being returned does + not correspond to any user created routes then this field will be the + string 'System Route'. + :type route_table_id: str + """ + + _attribute_map = { + 'next_hop_type': {'key': 'nextHopType', 'type': 'str'}, + 'next_hop_ip_address': {'key': 'nextHopIpAddress', 'type': 'str'}, + 'route_table_id': {'key': 'routeTableId', 'type': 'str'}, + } + + def __init__(self, *, next_hop_type=None, next_hop_ip_address: str=None, route_table_id: str=None, **kwargs) -> None: + super(NextHopResult, self).__init__(**kwargs) + self.next_hop_type = next_hop_type + self.next_hop_ip_address = next_hop_ip_address + self.route_table_id = route_table_id + + +class Operation(Model): + """Network REST API operation definition. + + :param name: Operation name: {provider}/{resource}/{operation}. + :type name: str + :param display: Display metadata associated with the operation. + :type display: ~azure.mgmt.network.v2019_09_01.models.OperationDisplay + :param origin: Origin of the operation. + :type origin: str + :param service_specification: Specification of the service. + :type service_specification: + ~azure.mgmt.network.v2019_09_01.models.OperationPropertiesFormatServiceSpecification + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'display': {'key': 'display', 'type': 'OperationDisplay'}, + 'origin': {'key': 'origin', 'type': 'str'}, + 'service_specification': {'key': 'properties.serviceSpecification', 'type': 'OperationPropertiesFormatServiceSpecification'}, + } + + def __init__(self, *, name: str=None, display=None, origin: str=None, service_specification=None, **kwargs) -> None: + super(Operation, self).__init__(**kwargs) + self.name = name + self.display = display + self.origin = origin + self.service_specification = service_specification + + +class OperationDisplay(Model): + """Display metadata associated with the operation. + + :param provider: Service provider: Microsoft Network. + :type provider: str + :param resource: Resource on which the operation is performed. + :type resource: str + :param operation: Type of the operation: get, read, delete, etc. + :type operation: str + :param description: Description of the operation. + :type description: str + """ + + _attribute_map = { + 'provider': {'key': 'provider', 'type': 'str'}, + 'resource': {'key': 'resource', 'type': 'str'}, + 'operation': {'key': 'operation', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + } + + def __init__(self, *, provider: str=None, resource: str=None, operation: str=None, description: str=None, **kwargs) -> None: + super(OperationDisplay, self).__init__(**kwargs) + self.provider = provider + self.resource = resource + self.operation = operation + self.description = description + + +class OperationPropertiesFormatServiceSpecification(Model): + """Specification of the service. + + :param metric_specifications: Operation service specification. + :type metric_specifications: + list[~azure.mgmt.network.v2019_09_01.models.MetricSpecification] + :param log_specifications: Operation log specification. + :type log_specifications: + list[~azure.mgmt.network.v2019_09_01.models.LogSpecification] + """ + + _attribute_map = { + 'metric_specifications': {'key': 'metricSpecifications', 'type': '[MetricSpecification]'}, + 'log_specifications': {'key': 'logSpecifications', 'type': '[LogSpecification]'}, + } + + def __init__(self, *, metric_specifications=None, log_specifications=None, **kwargs) -> None: + super(OperationPropertiesFormatServiceSpecification, self).__init__(**kwargs) + self.metric_specifications = metric_specifications + self.log_specifications = log_specifications + + +class OutboundRule(SubResource): + """Outbound rule of the load balancer. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param allocated_outbound_ports: The number of outbound ports to be used + for NAT. + :type allocated_outbound_ports: int + :param frontend_ip_configurations: Required. The Frontend IP addresses of + the load balancer. + :type frontend_ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param backend_address_pool: Required. A reference to a pool of DIPs. + Outbound traffic is randomly load balanced across IPs in the backend IPs. + :type backend_address_pool: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar provisioning_state: The provisioning state of the outbound rule + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param protocol: Required. The protocol for the outbound rule in load + balancer. Possible values include: 'Tcp', 'Udp', 'All' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.LoadBalancerOutboundRuleProtocol + :param enable_tcp_reset: Receive bidirectional TCP Reset on TCP flow idle + timeout or unexpected connection termination. This element is only used + when the protocol is set to TCP. + :type enable_tcp_reset: bool + :param idle_timeout_in_minutes: The timeout for the TCP idle connection. + :type idle_timeout_in_minutes: int + :param name: The name of the resource that is unique within the set of + outbound rules used by the load balancer. This name can be used to access + the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'frontend_ip_configurations': {'required': True}, + 'backend_address_pool': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'protocol': {'required': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'allocated_outbound_ports': {'key': 'properties.allocatedOutboundPorts', 'type': 'int'}, + 'frontend_ip_configurations': {'key': 'properties.frontendIPConfigurations', 'type': '[SubResource]'}, + 'backend_address_pool': {'key': 'properties.backendAddressPool', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'enable_tcp_reset': {'key': 'properties.enableTcpReset', 'type': 'bool'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, frontend_ip_configurations, backend_address_pool, protocol, id: str=None, allocated_outbound_ports: int=None, enable_tcp_reset: bool=None, idle_timeout_in_minutes: int=None, name: str=None, **kwargs) -> None: + super(OutboundRule, self).__init__(id=id, **kwargs) + self.allocated_outbound_ports = allocated_outbound_ports + self.frontend_ip_configurations = frontend_ip_configurations + self.backend_address_pool = backend_address_pool + self.provisioning_state = None + self.protocol = protocol + self.enable_tcp_reset = enable_tcp_reset + self.idle_timeout_in_minutes = idle_timeout_in_minutes + self.name = name + self.etag = None + self.type = None + + +class OwaspCrsExclusionEntry(Model): + """Allow to exclude some variable satisfy the condition for the WAF check. + + All required parameters must be populated in order to send to Azure. + + :param match_variable: Required. The variable to be excluded. Possible + values include: 'RequestHeaderNames', 'RequestCookieNames', + 'RequestArgNames' + :type match_variable: str or + ~azure.mgmt.network.v2019_09_01.models.OwaspCrsExclusionEntryMatchVariable + :param selector_match_operator: Required. When matchVariable is a + collection, operate on the selector to specify which elements in the + collection this exclusion applies to. Possible values include: 'Equals', + 'Contains', 'StartsWith', 'EndsWith', 'EqualsAny' + :type selector_match_operator: str or + ~azure.mgmt.network.v2019_09_01.models.OwaspCrsExclusionEntrySelectorMatchOperator + :param selector: Required. When matchVariable is a collection, operator + used to specify which elements in the collection this exclusion applies + to. + :type selector: str + """ + + _validation = { + 'match_variable': {'required': True}, + 'selector_match_operator': {'required': True}, + 'selector': {'required': True}, + } + + _attribute_map = { + 'match_variable': {'key': 'matchVariable', 'type': 'str'}, + 'selector_match_operator': {'key': 'selectorMatchOperator', 'type': 'str'}, + 'selector': {'key': 'selector', 'type': 'str'}, + } + + def __init__(self, *, match_variable, selector_match_operator, selector: str, **kwargs) -> None: + super(OwaspCrsExclusionEntry, self).__init__(**kwargs) + self.match_variable = match_variable + self.selector_match_operator = selector_match_operator + self.selector = selector + + +class P2SConnectionConfiguration(SubResource): + """P2SConnectionConfiguration Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param vpn_client_address_pool: The reference of the address space + resource which represents Address space for P2S VpnClient. + :type vpn_client_address_pool: + ~azure.mgmt.network.v2019_09_01.models.AddressSpace + :ivar provisioning_state: The provisioning state of the + P2SConnectionConfiguration resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'vpn_client_address_pool': {'key': 'properties.vpnClientAddressPool', 'type': 'AddressSpace'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, vpn_client_address_pool=None, name: str=None, **kwargs) -> None: + super(P2SConnectionConfiguration, self).__init__(id=id, **kwargs) + self.vpn_client_address_pool = vpn_client_address_pool + self.provisioning_state = None + self.name = name + self.etag = None + + +class P2SVpnConnectionHealth(Model): + """P2S Vpn connection detailed health written to sas url. + + :param sas_url: Returned sas url of the blob to which the p2s vpn + connection detailed health will be written. + :type sas_url: str + """ + + _attribute_map = { + 'sas_url': {'key': 'sasUrl', 'type': 'str'}, + } + + def __init__(self, *, sas_url: str=None, **kwargs) -> None: + super(P2SVpnConnectionHealth, self).__init__(**kwargs) + self.sas_url = sas_url + + +class P2SVpnConnectionHealthRequest(Model): + """List of P2S Vpn connection health request. + + :param vpn_user_names_filter: The list of p2s vpn user names whose p2s vpn + connection detailed health to retrieve for. + :type vpn_user_names_filter: list[str] + :param output_blob_sas_url: The sas-url to download the P2S Vpn connection + health detail. + :type output_blob_sas_url: str + """ + + _attribute_map = { + 'vpn_user_names_filter': {'key': 'vpnUserNamesFilter', 'type': '[str]'}, + 'output_blob_sas_url': {'key': 'outputBlobSasUrl', 'type': 'str'}, + } + + def __init__(self, *, vpn_user_names_filter=None, output_blob_sas_url: str=None, **kwargs) -> None: + super(P2SVpnConnectionHealthRequest, self).__init__(**kwargs) + self.vpn_user_names_filter = vpn_user_names_filter + self.output_blob_sas_url = output_blob_sas_url + + +class P2SVpnGateway(Resource): + """P2SVpnGateway Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_hub: The VirtualHub to which the gateway belongs. + :type virtual_hub: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param p2_sconnection_configurations: List of all p2s connection + configurations of the gateway. + :type p2_sconnection_configurations: + list[~azure.mgmt.network.v2019_09_01.models.P2SConnectionConfiguration] + :ivar provisioning_state: The provisioning state of the P2S VPN gateway + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param vpn_gateway_scale_unit: The scale unit for this p2s vpn gateway. + :type vpn_gateway_scale_unit: int + :param vpn_server_configuration: The VpnServerConfiguration to which the + p2sVpnGateway is attached to. + :type vpn_server_configuration: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar vpn_client_connection_health: All P2S VPN clients' connection health + status. + :vartype vpn_client_connection_health: + ~azure.mgmt.network.v2019_09_01.models.VpnClientConnectionHealth + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'vpn_client_connection_health': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_hub': {'key': 'properties.virtualHub', 'type': 'SubResource'}, + 'p2_sconnection_configurations': {'key': 'properties.p2SConnectionConfigurations', 'type': '[P2SConnectionConfiguration]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'vpn_gateway_scale_unit': {'key': 'properties.vpnGatewayScaleUnit', 'type': 'int'}, + 'vpn_server_configuration': {'key': 'properties.vpnServerConfiguration', 'type': 'SubResource'}, + 'vpn_client_connection_health': {'key': 'properties.vpnClientConnectionHealth', 'type': 'VpnClientConnectionHealth'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, virtual_hub=None, p2_sconnection_configurations=None, vpn_gateway_scale_unit: int=None, vpn_server_configuration=None, **kwargs) -> None: + super(P2SVpnGateway, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.virtual_hub = virtual_hub + self.p2_sconnection_configurations = p2_sconnection_configurations + self.provisioning_state = None + self.vpn_gateway_scale_unit = vpn_gateway_scale_unit + self.vpn_server_configuration = vpn_server_configuration + self.vpn_client_connection_health = None + self.etag = None + + +class P2SVpnProfileParameters(Model): + """Vpn Client Parameters for package generation. + + :param authentication_method: VPN client authentication method. Possible + values include: 'EAPTLS', 'EAPMSCHAPv2' + :type authentication_method: str or + ~azure.mgmt.network.v2019_09_01.models.AuthenticationMethod + """ + + _attribute_map = { + 'authentication_method': {'key': 'authenticationMethod', 'type': 'str'}, + } + + def __init__(self, *, authentication_method=None, **kwargs) -> None: + super(P2SVpnProfileParameters, self).__init__(**kwargs) + self.authentication_method = authentication_method + + +class PacketCapture(Model): + """Parameters that define the create packet capture operation. + + All required parameters must be populated in order to send to Azure. + + :param target: Required. The ID of the targeted resource, only VM is + currently supported. + :type target: str + :param bytes_to_capture_per_packet: Number of bytes captured per packet, + the remaining bytes are truncated. Default value: 0 . + :type bytes_to_capture_per_packet: int + :param total_bytes_per_session: Maximum size of the capture output. + Default value: 1073741824 . + :type total_bytes_per_session: int + :param time_limit_in_seconds: Maximum duration of the capture session in + seconds. Default value: 18000 . + :type time_limit_in_seconds: int + :param storage_location: Required. Describes the storage location for a + packet capture session. + :type storage_location: + ~azure.mgmt.network.v2019_09_01.models.PacketCaptureStorageLocation + :param filters: A list of packet capture filters. + :type filters: + list[~azure.mgmt.network.v2019_09_01.models.PacketCaptureFilter] + """ + + _validation = { + 'target': {'required': True}, + 'storage_location': {'required': True}, + } + + _attribute_map = { + 'target': {'key': 'properties.target', 'type': 'str'}, + 'bytes_to_capture_per_packet': {'key': 'properties.bytesToCapturePerPacket', 'type': 'int'}, + 'total_bytes_per_session': {'key': 'properties.totalBytesPerSession', 'type': 'int'}, + 'time_limit_in_seconds': {'key': 'properties.timeLimitInSeconds', 'type': 'int'}, + 'storage_location': {'key': 'properties.storageLocation', 'type': 'PacketCaptureStorageLocation'}, + 'filters': {'key': 'properties.filters', 'type': '[PacketCaptureFilter]'}, + } + + def __init__(self, *, target: str, storage_location, bytes_to_capture_per_packet: int=0, total_bytes_per_session: int=1073741824, time_limit_in_seconds: int=18000, filters=None, **kwargs) -> None: + super(PacketCapture, self).__init__(**kwargs) + self.target = target + self.bytes_to_capture_per_packet = bytes_to_capture_per_packet + self.total_bytes_per_session = total_bytes_per_session + self.time_limit_in_seconds = time_limit_in_seconds + self.storage_location = storage_location + self.filters = filters + + +class PacketCaptureFilter(Model): + """Filter that is applied to packet capture request. Multiple filters can be + applied. + + :param protocol: Protocol to be filtered on. Possible values include: + 'TCP', 'UDP', 'Any'. Default value: "Any" . + :type protocol: str or ~azure.mgmt.network.v2019_09_01.models.PcProtocol + :param local_ip_address: Local IP Address to be filtered on. Notation: + "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" for range. + "127.0.0.1;127.0.0.5"? for multiple entries. Multiple ranges not currently + supported. Mixing ranges with multiple entries not currently supported. + Default = null. + :type local_ip_address: str + :param remote_ip_address: Local IP Address to be filtered on. Notation: + "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" for range. + "127.0.0.1;127.0.0.5;" for multiple entries. Multiple ranges not currently + supported. Mixing ranges with multiple entries not currently supported. + Default = null. + :type remote_ip_address: str + :param local_port: Local port to be filtered on. Notation: "80" for single + port entry."80-85" for range. "80;443;" for multiple entries. Multiple + ranges not currently supported. Mixing ranges with multiple entries not + currently supported. Default = null. + :type local_port: str + :param remote_port: Remote port to be filtered on. Notation: "80" for + single port entry."80-85" for range. "80;443;" for multiple entries. + Multiple ranges not currently supported. Mixing ranges with multiple + entries not currently supported. Default = null. + :type remote_port: str + """ + + _attribute_map = { + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'local_ip_address': {'key': 'localIPAddress', 'type': 'str'}, + 'remote_ip_address': {'key': 'remoteIPAddress', 'type': 'str'}, + 'local_port': {'key': 'localPort', 'type': 'str'}, + 'remote_port': {'key': 'remotePort', 'type': 'str'}, + } + + def __init__(self, *, protocol="Any", local_ip_address: str=None, remote_ip_address: str=None, local_port: str=None, remote_port: str=None, **kwargs) -> None: + super(PacketCaptureFilter, self).__init__(**kwargs) + self.protocol = protocol + self.local_ip_address = local_ip_address + self.remote_ip_address = remote_ip_address + self.local_port = local_port + self.remote_port = remote_port + + +class PacketCaptureParameters(Model): + """Parameters that define the create packet capture operation. + + All required parameters must be populated in order to send to Azure. + + :param target: Required. The ID of the targeted resource, only VM is + currently supported. + :type target: str + :param bytes_to_capture_per_packet: Number of bytes captured per packet, + the remaining bytes are truncated. Default value: 0 . + :type bytes_to_capture_per_packet: int + :param total_bytes_per_session: Maximum size of the capture output. + Default value: 1073741824 . + :type total_bytes_per_session: int + :param time_limit_in_seconds: Maximum duration of the capture session in + seconds. Default value: 18000 . + :type time_limit_in_seconds: int + :param storage_location: Required. Describes the storage location for a + packet capture session. + :type storage_location: + ~azure.mgmt.network.v2019_09_01.models.PacketCaptureStorageLocation + :param filters: A list of packet capture filters. + :type filters: + list[~azure.mgmt.network.v2019_09_01.models.PacketCaptureFilter] + """ + + _validation = { + 'target': {'required': True}, + 'storage_location': {'required': True}, + } + + _attribute_map = { + 'target': {'key': 'target', 'type': 'str'}, + 'bytes_to_capture_per_packet': {'key': 'bytesToCapturePerPacket', 'type': 'int'}, + 'total_bytes_per_session': {'key': 'totalBytesPerSession', 'type': 'int'}, + 'time_limit_in_seconds': {'key': 'timeLimitInSeconds', 'type': 'int'}, + 'storage_location': {'key': 'storageLocation', 'type': 'PacketCaptureStorageLocation'}, + 'filters': {'key': 'filters', 'type': '[PacketCaptureFilter]'}, + } + + def __init__(self, *, target: str, storage_location, bytes_to_capture_per_packet: int=0, total_bytes_per_session: int=1073741824, time_limit_in_seconds: int=18000, filters=None, **kwargs) -> None: + super(PacketCaptureParameters, self).__init__(**kwargs) + self.target = target + self.bytes_to_capture_per_packet = bytes_to_capture_per_packet + self.total_bytes_per_session = total_bytes_per_session + self.time_limit_in_seconds = time_limit_in_seconds + self.storage_location = storage_location + self.filters = filters + + +class PacketCaptureQueryStatusResult(Model): + """Status of packet capture session. + + :param name: The name of the packet capture resource. + :type name: str + :param id: The ID of the packet capture resource. + :type id: str + :param capture_start_time: The start time of the packet capture session. + :type capture_start_time: datetime + :param packet_capture_status: The status of the packet capture session. + Possible values include: 'NotStarted', 'Running', 'Stopped', 'Error', + 'Unknown' + :type packet_capture_status: str or + ~azure.mgmt.network.v2019_09_01.models.PcStatus + :param stop_reason: The reason the current packet capture session was + stopped. + :type stop_reason: str + :param packet_capture_error: List of errors of packet capture session. + :type packet_capture_error: list[str or + ~azure.mgmt.network.v2019_09_01.models.PcError] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'capture_start_time': {'key': 'captureStartTime', 'type': 'iso-8601'}, + 'packet_capture_status': {'key': 'packetCaptureStatus', 'type': 'str'}, + 'stop_reason': {'key': 'stopReason', 'type': 'str'}, + 'packet_capture_error': {'key': 'packetCaptureError', 'type': '[str]'}, + } + + def __init__(self, *, name: str=None, id: str=None, capture_start_time=None, packet_capture_status=None, stop_reason: str=None, packet_capture_error=None, **kwargs) -> None: + super(PacketCaptureQueryStatusResult, self).__init__(**kwargs) + self.name = name + self.id = id + self.capture_start_time = capture_start_time + self.packet_capture_status = packet_capture_status + self.stop_reason = stop_reason + self.packet_capture_error = packet_capture_error + + +class PacketCaptureResult(Model): + """Information about packet capture session. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar name: Name of the packet capture session. + :vartype name: str + :ivar id: ID of the packet capture operation. + :vartype id: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :param target: Required. The ID of the targeted resource, only VM is + currently supported. + :type target: str + :param bytes_to_capture_per_packet: Number of bytes captured per packet, + the remaining bytes are truncated. Default value: 0 . + :type bytes_to_capture_per_packet: int + :param total_bytes_per_session: Maximum size of the capture output. + Default value: 1073741824 . + :type total_bytes_per_session: int + :param time_limit_in_seconds: Maximum duration of the capture session in + seconds. Default value: 18000 . + :type time_limit_in_seconds: int + :param storage_location: Required. Describes the storage location for a + packet capture session. + :type storage_location: + ~azure.mgmt.network.v2019_09_01.models.PacketCaptureStorageLocation + :param filters: A list of packet capture filters. + :type filters: + list[~azure.mgmt.network.v2019_09_01.models.PacketCaptureFilter] + :ivar provisioning_state: The provisioning state of the packet capture + session. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + """ + + _validation = { + 'name': {'readonly': True}, + 'id': {'readonly': True}, + 'etag': {'readonly': True}, + 'target': {'required': True}, + 'storage_location': {'required': True}, + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'target': {'key': 'properties.target', 'type': 'str'}, + 'bytes_to_capture_per_packet': {'key': 'properties.bytesToCapturePerPacket', 'type': 'int'}, + 'total_bytes_per_session': {'key': 'properties.totalBytesPerSession', 'type': 'int'}, + 'time_limit_in_seconds': {'key': 'properties.timeLimitInSeconds', 'type': 'int'}, + 'storage_location': {'key': 'properties.storageLocation', 'type': 'PacketCaptureStorageLocation'}, + 'filters': {'key': 'properties.filters', 'type': '[PacketCaptureFilter]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + } + + def __init__(self, *, target: str, storage_location, bytes_to_capture_per_packet: int=0, total_bytes_per_session: int=1073741824, time_limit_in_seconds: int=18000, filters=None, **kwargs) -> None: + super(PacketCaptureResult, self).__init__(**kwargs) + self.name = None + self.id = None + self.etag = None + self.target = target + self.bytes_to_capture_per_packet = bytes_to_capture_per_packet + self.total_bytes_per_session = total_bytes_per_session + self.time_limit_in_seconds = time_limit_in_seconds + self.storage_location = storage_location + self.filters = filters + self.provisioning_state = None + + +class PacketCaptureStorageLocation(Model): + """Describes the storage location for a packet capture session. + + :param storage_id: The ID of the storage account to save the packet + capture session. Required if no local file path is provided. + :type storage_id: str + :param storage_path: The URI of the storage path to save the packet + capture. Must be a well-formed URI describing the location to save the + packet capture. + :type storage_path: str + :param file_path: A valid local path on the targeting VM. Must include the + name of the capture file (*.cap). For linux virtual machine it must start + with /var/captures. Required if no storage ID is provided, otherwise + optional. + :type file_path: str + """ + + _attribute_map = { + 'storage_id': {'key': 'storageId', 'type': 'str'}, + 'storage_path': {'key': 'storagePath', 'type': 'str'}, + 'file_path': {'key': 'filePath', 'type': 'str'}, + } + + def __init__(self, *, storage_id: str=None, storage_path: str=None, file_path: str=None, **kwargs) -> None: + super(PacketCaptureStorageLocation, self).__init__(**kwargs) + self.storage_id = storage_id + self.storage_path = storage_path + self.file_path = file_path + + +class PatchRouteFilter(SubResource): + """Route Filter Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param rules: Collection of RouteFilterRules contained within a route + filter. + :type rules: list[~azure.mgmt.network.v2019_09_01.models.RouteFilterRule] + :ivar peerings: A collection of references to express route circuit + peerings. + :vartype peerings: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeering] + :ivar ipv6_peerings: A collection of references to express route circuit + ipv6 peerings. + :vartype ipv6_peerings: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeering] + :ivar provisioning_state: The provisioning state of the route filter + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :vartype name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Resource type. + :vartype type: str + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _validation = { + 'peerings': {'readonly': True}, + 'ipv6_peerings': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'name': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'rules': {'key': 'properties.rules', 'type': '[RouteFilterRule]'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'ipv6_peerings': {'key': 'properties.ipv6Peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, id: str=None, rules=None, tags=None, **kwargs) -> None: + super(PatchRouteFilter, self).__init__(id=id, **kwargs) + self.rules = rules + self.peerings = None + self.ipv6_peerings = None + self.provisioning_state = None + self.name = None + self.etag = None + self.type = None + self.tags = tags + + +class PatchRouteFilterRule(SubResource): + """Route Filter Rule Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param access: Required. The access type of the rule. Possible values + include: 'Allow', 'Deny' + :type access: str or ~azure.mgmt.network.v2019_09_01.models.Access + :ivar route_filter_rule_type: Required. The rule type of the rule. Default + value: "Community" . + :vartype route_filter_rule_type: str + :param communities: Required. The collection for bgp community values to + filter on. e.g. ['12076:5010','12076:5020']. + :type communities: list[str] + :ivar provisioning_state: The provisioning state of the route filter rule + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :vartype name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'access': {'required': True}, + 'route_filter_rule_type': {'required': True, 'constant': True}, + 'communities': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'name': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'access': {'key': 'properties.access', 'type': 'str'}, + 'route_filter_rule_type': {'key': 'properties.routeFilterRuleType', 'type': 'str'}, + 'communities': {'key': 'properties.communities', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + route_filter_rule_type = "Community" + + def __init__(self, *, access, communities, id: str=None, **kwargs) -> None: + super(PatchRouteFilterRule, self).__init__(id=id, **kwargs) + self.access = access + self.communities = communities + self.provisioning_state = None + self.name = None + self.etag = None + + +class PeerExpressRouteCircuitConnection(SubResource): + """Peer Express Route Circuit Connection in an ExpressRouteCircuitPeering + resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param express_route_circuit_peering: Reference to Express Route Circuit + Private Peering Resource of the circuit. + :type express_route_circuit_peering: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param peer_express_route_circuit_peering: Reference to Express Route + Circuit Private Peering Resource of the peered circuit. + :type peer_express_route_circuit_peering: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param address_prefix: /29 IP address space to carve out Customer + addresses for tunnels. + :type address_prefix: str + :param circuit_connection_status: Express Route Circuit connection state. + Possible values include: 'Connected', 'Connecting', 'Disconnected' + :type circuit_connection_status: str or + ~azure.mgmt.network.v2019_09_01.models.CircuitConnectionStatus + :param connection_name: The name of the express route circuit connection + resource. + :type connection_name: str + :param auth_resource_guid: The resource guid of the authorization used for + the express route circuit connection. + :type auth_resource_guid: str + :ivar provisioning_state: The provisioning state of the peer express route + circuit connection resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'express_route_circuit_peering': {'key': 'properties.expressRouteCircuitPeering', 'type': 'SubResource'}, + 'peer_express_route_circuit_peering': {'key': 'properties.peerExpressRouteCircuitPeering', 'type': 'SubResource'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'circuit_connection_status': {'key': 'properties.circuitConnectionStatus', 'type': 'str'}, + 'connection_name': {'key': 'properties.connectionName', 'type': 'str'}, + 'auth_resource_guid': {'key': 'properties.authResourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, express_route_circuit_peering=None, peer_express_route_circuit_peering=None, address_prefix: str=None, circuit_connection_status=None, connection_name: str=None, auth_resource_guid: str=None, name: str=None, **kwargs) -> None: + super(PeerExpressRouteCircuitConnection, self).__init__(id=id, **kwargs) + self.express_route_circuit_peering = express_route_circuit_peering + self.peer_express_route_circuit_peering = peer_express_route_circuit_peering + self.address_prefix = address_prefix + self.circuit_connection_status = circuit_connection_status + self.connection_name = connection_name + self.auth_resource_guid = auth_resource_guid + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class PolicySettings(Model): + """Defines contents of a web application firewall global configuration. + + :param state: Describes if the policy is in enabled state or disabled + state. Possible values include: 'Disabled', 'Enabled' + :type state: str or + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallEnabledState + :param mode: Describes if it is in detection mode or prevention mode at + policy level. Possible values include: 'Prevention', 'Detection' + :type mode: str or + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallMode + :param request_body_check: Whether to allow WAF to check request Body. + :type request_body_check: bool + :param max_request_body_size_in_kb: Maximum request body size in Kb for + WAF. + :type max_request_body_size_in_kb: int + :param file_upload_limit_in_mb: Maximum file upload size in Mb for WAF. + :type file_upload_limit_in_mb: int + """ + + _validation = { + 'max_request_body_size_in_kb': {'maximum': 128, 'minimum': 8}, + 'file_upload_limit_in_mb': {'minimum': 0}, + } + + _attribute_map = { + 'state': {'key': 'state', 'type': 'str'}, + 'mode': {'key': 'mode', 'type': 'str'}, + 'request_body_check': {'key': 'requestBodyCheck', 'type': 'bool'}, + 'max_request_body_size_in_kb': {'key': 'maxRequestBodySizeInKb', 'type': 'int'}, + 'file_upload_limit_in_mb': {'key': 'fileUploadLimitInMb', 'type': 'int'}, + } + + def __init__(self, *, state=None, mode=None, request_body_check: bool=None, max_request_body_size_in_kb: int=None, file_upload_limit_in_mb: int=None, **kwargs) -> None: + super(PolicySettings, self).__init__(**kwargs) + self.state = state + self.mode = mode + self.request_body_check = request_body_check + self.max_request_body_size_in_kb = max_request_body_size_in_kb + self.file_upload_limit_in_mb = file_upload_limit_in_mb + + +class PrepareNetworkPoliciesRequest(Model): + """Details of PrepareNetworkPolicies for Subnet. + + :param service_name: The name of the service for which subnet is being + prepared for. + :type service_name: str + :param network_intent_policy_configurations: A list of + NetworkIntentPolicyConfiguration. + :type network_intent_policy_configurations: + list[~azure.mgmt.network.v2019_09_01.models.NetworkIntentPolicyConfiguration] + """ + + _attribute_map = { + 'service_name': {'key': 'serviceName', 'type': 'str'}, + 'network_intent_policy_configurations': {'key': 'networkIntentPolicyConfigurations', 'type': '[NetworkIntentPolicyConfiguration]'}, + } + + def __init__(self, *, service_name: str=None, network_intent_policy_configurations=None, **kwargs) -> None: + super(PrepareNetworkPoliciesRequest, self).__init__(**kwargs) + self.service_name = service_name + self.network_intent_policy_configurations = network_intent_policy_configurations + + +class PrivateEndpoint(Resource): + """Private endpoint resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param subnet: The ID of the subnet from which the private IP will be + allocated. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.Subnet + :ivar network_interfaces: An array of references to the network interfaces + created for this private endpoint. + :vartype network_interfaces: + list[~azure.mgmt.network.v2019_09_01.models.NetworkInterface] + :ivar provisioning_state: The provisioning state of the private endpoint + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param private_link_service_connections: A grouping of information about + the connection to the remote resource. + :type private_link_service_connections: + list[~azure.mgmt.network.v2019_09_01.models.PrivateLinkServiceConnection] + :param manual_private_link_service_connections: A grouping of information + about the connection to the remote resource. Used when the network admin + does not have access to approve connections to the remote resource. + :type manual_private_link_service_connections: + list[~azure.mgmt.network.v2019_09_01.models.PrivateLinkServiceConnection] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'network_interfaces': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'network_interfaces': {'key': 'properties.networkInterfaces', 'type': '[NetworkInterface]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'private_link_service_connections': {'key': 'properties.privateLinkServiceConnections', 'type': '[PrivateLinkServiceConnection]'}, + 'manual_private_link_service_connections': {'key': 'properties.manualPrivateLinkServiceConnections', 'type': '[PrivateLinkServiceConnection]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, subnet=None, private_link_service_connections=None, manual_private_link_service_connections=None, **kwargs) -> None: + super(PrivateEndpoint, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.subnet = subnet + self.network_interfaces = None + self.provisioning_state = None + self.private_link_service_connections = private_link_service_connections + self.manual_private_link_service_connections = manual_private_link_service_connections + self.etag = None + + +class PrivateEndpointConnection(SubResource): + """PrivateEndpointConnection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar private_endpoint: The resource of private end point. + :vartype private_endpoint: + ~azure.mgmt.network.v2019_09_01.models.PrivateEndpoint + :param private_link_service_connection_state: A collection of information + about the state of the connection between service consumer and provider. + :type private_link_service_connection_state: + ~azure.mgmt.network.v2019_09_01.models.PrivateLinkServiceConnectionState + :ivar provisioning_state: The provisioning state of the private endpoint + connection resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar link_identifier: The consumer link id. + :vartype link_identifier: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar type: The resource type. + :vartype type: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'private_endpoint': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'link_identifier': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_endpoint': {'key': 'properties.privateEndpoint', 'type': 'PrivateEndpoint'}, + 'private_link_service_connection_state': {'key': 'properties.privateLinkServiceConnectionState', 'type': 'PrivateLinkServiceConnectionState'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'link_identifier': {'key': 'properties.linkIdentifier', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, private_link_service_connection_state=None, name: str=None, **kwargs) -> None: + super(PrivateEndpointConnection, self).__init__(id=id, **kwargs) + self.private_endpoint = None + self.private_link_service_connection_state = private_link_service_connection_state + self.provisioning_state = None + self.link_identifier = None + self.name = name + self.type = None + self.etag = None + + +class PrivateLinkService(Resource): + """Private link service resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param load_balancer_frontend_ip_configurations: An array of references to + the load balancer IP configurations. + :type load_balancer_frontend_ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.FrontendIPConfiguration] + :param ip_configurations: An array of private link service IP + configurations. + :type ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.PrivateLinkServiceIpConfiguration] + :ivar network_interfaces: An array of references to the network interfaces + created for this private link service. + :vartype network_interfaces: + list[~azure.mgmt.network.v2019_09_01.models.NetworkInterface] + :ivar provisioning_state: The provisioning state of the private link + service resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar private_endpoint_connections: An array of list about connections to + the private endpoint. + :vartype private_endpoint_connections: + list[~azure.mgmt.network.v2019_09_01.models.PrivateEndpointConnection] + :param visibility: The visibility list of the private link service. + :type visibility: + ~azure.mgmt.network.v2019_09_01.models.PrivateLinkServicePropertiesVisibility + :param auto_approval: The auto-approval list of the private link service. + :type auto_approval: + ~azure.mgmt.network.v2019_09_01.models.PrivateLinkServicePropertiesAutoApproval + :param fqdns: The list of Fqdn. + :type fqdns: list[str] + :ivar alias: The alias of the private link service. + :vartype alias: str + :param enable_proxy_protocol: Whether the private link service is enabled + for proxy protocol or not. + :type enable_proxy_protocol: bool + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'network_interfaces': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'private_endpoint_connections': {'readonly': True}, + 'alias': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'load_balancer_frontend_ip_configurations': {'key': 'properties.loadBalancerFrontendIpConfigurations', 'type': '[FrontendIPConfiguration]'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[PrivateLinkServiceIpConfiguration]'}, + 'network_interfaces': {'key': 'properties.networkInterfaces', 'type': '[NetworkInterface]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'private_endpoint_connections': {'key': 'properties.privateEndpointConnections', 'type': '[PrivateEndpointConnection]'}, + 'visibility': {'key': 'properties.visibility', 'type': 'PrivateLinkServicePropertiesVisibility'}, + 'auto_approval': {'key': 'properties.autoApproval', 'type': 'PrivateLinkServicePropertiesAutoApproval'}, + 'fqdns': {'key': 'properties.fqdns', 'type': '[str]'}, + 'alias': {'key': 'properties.alias', 'type': 'str'}, + 'enable_proxy_protocol': {'key': 'properties.enableProxyProtocol', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, load_balancer_frontend_ip_configurations=None, ip_configurations=None, visibility=None, auto_approval=None, fqdns=None, enable_proxy_protocol: bool=None, **kwargs) -> None: + super(PrivateLinkService, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.load_balancer_frontend_ip_configurations = load_balancer_frontend_ip_configurations + self.ip_configurations = ip_configurations + self.network_interfaces = None + self.provisioning_state = None + self.private_endpoint_connections = None + self.visibility = visibility + self.auto_approval = auto_approval + self.fqdns = fqdns + self.alias = None + self.enable_proxy_protocol = enable_proxy_protocol + self.etag = None + + +class PrivateLinkServiceConnection(SubResource): + """PrivateLinkServiceConnection resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar provisioning_state: The provisioning state of the private link + service connection resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param private_link_service_id: The resource id of private link service. + :type private_link_service_id: str + :param group_ids: The ID(s) of the group(s) obtained from the remote + resource that this private endpoint should connect to. + :type group_ids: list[str] + :param request_message: A message passed to the owner of the remote + resource with this connection request. Restricted to 140 chars. + :type request_message: str + :param private_link_service_connection_state: A collection of read-only + information about the state of the connection to the remote resource. + :type private_link_service_connection_state: + ~azure.mgmt.network.v2019_09_01.models.PrivateLinkServiceConnectionState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar type: The resource type. + :vartype type: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'type': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'private_link_service_id': {'key': 'properties.privateLinkServiceId', 'type': 'str'}, + 'group_ids': {'key': 'properties.groupIds', 'type': '[str]'}, + 'request_message': {'key': 'properties.requestMessage', 'type': 'str'}, + 'private_link_service_connection_state': {'key': 'properties.privateLinkServiceConnectionState', 'type': 'PrivateLinkServiceConnectionState'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, private_link_service_id: str=None, group_ids=None, request_message: str=None, private_link_service_connection_state=None, name: str=None, **kwargs) -> None: + super(PrivateLinkServiceConnection, self).__init__(id=id, **kwargs) + self.provisioning_state = None + self.private_link_service_id = private_link_service_id + self.group_ids = group_ids + self.request_message = request_message + self.private_link_service_connection_state = private_link_service_connection_state + self.name = name + self.type = None + self.etag = None + + +class PrivateLinkServiceConnectionState(Model): + """A collection of information about the state of the connection between + service consumer and provider. + + :param status: Indicates whether the connection has been + Approved/Rejected/Removed by the owner of the service. + :type status: str + :param description: The reason for approval/rejection of the connection. + :type description: str + :param action_required: A message indicating if changes on the service + provider require any updates on the consumer. + :type action_required: str + """ + + _attribute_map = { + 'status': {'key': 'status', 'type': 'str'}, + 'description': {'key': 'description', 'type': 'str'}, + 'action_required': {'key': 'actionRequired', 'type': 'str'}, + } + + def __init__(self, *, status: str=None, description: str=None, action_required: str=None, **kwargs) -> None: + super(PrivateLinkServiceConnectionState, self).__init__(**kwargs) + self.status = status + self.description = description + self.action_required = action_required + + +class PrivateLinkServiceIpConfiguration(SubResource): + """The private link service ip configuration. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param private_ip_address: The private IP address of the IP configuration. + :type private_ip_address: str + :param private_ip_allocation_method: The private IP address allocation + method. Possible values include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2019_09_01.models.IPAllocationMethod + :param subnet: The reference to the subnet resource. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.Subnet + :param primary: Whether the ip configuration is primary or not. + :type primary: bool + :ivar provisioning_state: The provisioning state of the private link + service IP configuration resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param private_ip_address_version: Whether the specific IP configuration + is IPv4 or IPv6. Default is IPv4. Possible values include: 'IPv4', 'IPv6' + :type private_ip_address_version: str or + ~azure.mgmt.network.v2019_09_01.models.IPVersion + :param name: The name of private link service ip configuration. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: The resource type. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_address': {'key': 'properties.privateIPAddress', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'Subnet'}, + 'primary': {'key': 'properties.primary', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'private_ip_address_version': {'key': 'properties.privateIPAddressVersion', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, private_ip_address: str=None, private_ip_allocation_method=None, subnet=None, primary: bool=None, private_ip_address_version=None, name: str=None, **kwargs) -> None: + super(PrivateLinkServiceIpConfiguration, self).__init__(id=id, **kwargs) + self.private_ip_address = private_ip_address + self.private_ip_allocation_method = private_ip_allocation_method + self.subnet = subnet + self.primary = primary + self.provisioning_state = None + self.private_ip_address_version = private_ip_address_version + self.name = name + self.etag = None + self.type = None + + +class ResourceSet(Model): + """The base resource set for visibility and auto-approval. + + :param subscriptions: The list of subscriptions. + :type subscriptions: list[str] + """ + + _attribute_map = { + 'subscriptions': {'key': 'subscriptions', 'type': '[str]'}, + } + + def __init__(self, *, subscriptions=None, **kwargs) -> None: + super(ResourceSet, self).__init__(**kwargs) + self.subscriptions = subscriptions + + +class PrivateLinkServicePropertiesAutoApproval(ResourceSet): + """The auto-approval list of the private link service. + + :param subscriptions: The list of subscriptions. + :type subscriptions: list[str] + """ + + _attribute_map = { + 'subscriptions': {'key': 'subscriptions', 'type': '[str]'}, + } + + def __init__(self, *, subscriptions=None, **kwargs) -> None: + super(PrivateLinkServicePropertiesAutoApproval, self).__init__(subscriptions=subscriptions, **kwargs) + + +class PrivateLinkServicePropertiesVisibility(ResourceSet): + """The visibility list of the private link service. + + :param subscriptions: The list of subscriptions. + :type subscriptions: list[str] + """ + + _attribute_map = { + 'subscriptions': {'key': 'subscriptions', 'type': '[str]'}, + } + + def __init__(self, *, subscriptions=None, **kwargs) -> None: + super(PrivateLinkServicePropertiesVisibility, self).__init__(subscriptions=subscriptions, **kwargs) + + +class PrivateLinkServiceVisibility(Model): + """Response for the CheckPrivateLinkServiceVisibility API service call. + + :param visible: Private Link Service Visibility (True/False). + :type visible: bool + """ + + _attribute_map = { + 'visible': {'key': 'visible', 'type': 'bool'}, + } + + def __init__(self, *, visible: bool=None, **kwargs) -> None: + super(PrivateLinkServiceVisibility, self).__init__(**kwargs) + self.visible = visible + + +class Probe(SubResource): + """A load balancer probe. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :ivar load_balancing_rules: The load balancer rules that use this probe. + :vartype load_balancing_rules: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param protocol: Required. The protocol of the end point. If 'Tcp' is + specified, a received ACK is required for the probe to be successful. If + 'Http' or 'Https' is specified, a 200 OK response from the specifies URI + is required for the probe to be successful. Possible values include: + 'Http', 'Tcp', 'Https' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.ProbeProtocol + :param port: Required. The port for communicating the probe. Possible + values range from 1 to 65535, inclusive. + :type port: int + :param interval_in_seconds: The interval, in seconds, for how frequently + to probe the endpoint for health status. Typically, the interval is + slightly less than half the allocated timeout period (in seconds) which + allows two full probes before taking the instance out of rotation. The + default value is 15, the minimum value is 5. + :type interval_in_seconds: int + :param number_of_probes: The number of probes where if no response, will + result in stopping further traffic from being delivered to the endpoint. + This values allows endpoints to be taken out of rotation faster or slower + than the typical times used in Azure. + :type number_of_probes: int + :param request_path: The URI used for requesting health status from the + VM. Path is required if a protocol is set to http. Otherwise, it is not + allowed. There is no default value. + :type request_path: str + :ivar provisioning_state: The provisioning state of the probe resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within the set of + probes used by the load balancer. This name can be used to access the + resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Type of the resource. + :vartype type: str + """ + + _validation = { + 'load_balancing_rules': {'readonly': True}, + 'protocol': {'required': True}, + 'port': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'load_balancing_rules': {'key': 'properties.loadBalancingRules', 'type': '[SubResource]'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'port': {'key': 'properties.port', 'type': 'int'}, + 'interval_in_seconds': {'key': 'properties.intervalInSeconds', 'type': 'int'}, + 'number_of_probes': {'key': 'properties.numberOfProbes', 'type': 'int'}, + 'request_path': {'key': 'properties.requestPath', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, protocol, port: int, id: str=None, interval_in_seconds: int=None, number_of_probes: int=None, request_path: str=None, name: str=None, **kwargs) -> None: + super(Probe, self).__init__(id=id, **kwargs) + self.load_balancing_rules = None + self.protocol = protocol + self.port = port + self.interval_in_seconds = interval_in_seconds + self.number_of_probes = number_of_probes + self.request_path = request_path + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class ProtocolConfiguration(Model): + """Configuration of the protocol. + + :param http_configuration: HTTP configuration of the connectivity check. + :type http_configuration: + ~azure.mgmt.network.v2019_09_01.models.HTTPConfiguration + """ + + _attribute_map = { + 'http_configuration': {'key': 'HTTPConfiguration', 'type': 'HTTPConfiguration'}, + } + + def __init__(self, *, http_configuration=None, **kwargs) -> None: + super(ProtocolConfiguration, self).__init__(**kwargs) + self.http_configuration = http_configuration + + +class ProtocolCustomSettingsFormat(Model): + """DDoS custom policy properties. + + :param protocol: The protocol for which the DDoS protection policy is + being customized. Possible values include: 'Tcp', 'Udp', 'Syn' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.DdosCustomPolicyProtocol + :param trigger_rate_override: The customized DDoS protection trigger rate. + :type trigger_rate_override: str + :param source_rate_override: The customized DDoS protection source rate. + :type source_rate_override: str + :param trigger_sensitivity_override: The customized DDoS protection + trigger rate sensitivity degrees. High: Trigger rate set with most + sensitivity w.r.t. normal traffic. Default: Trigger rate set with moderate + sensitivity w.r.t. normal traffic. Low: Trigger rate set with less + sensitivity w.r.t. normal traffic. Relaxed: Trigger rate set with least + sensitivity w.r.t. normal traffic. Possible values include: 'Relaxed', + 'Low', 'Default', 'High' + :type trigger_sensitivity_override: str or + ~azure.mgmt.network.v2019_09_01.models.DdosCustomPolicyTriggerSensitivityOverride + """ + + _attribute_map = { + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'trigger_rate_override': {'key': 'triggerRateOverride', 'type': 'str'}, + 'source_rate_override': {'key': 'sourceRateOverride', 'type': 'str'}, + 'trigger_sensitivity_override': {'key': 'triggerSensitivityOverride', 'type': 'str'}, + } + + def __init__(self, *, protocol=None, trigger_rate_override: str=None, source_rate_override: str=None, trigger_sensitivity_override=None, **kwargs) -> None: + super(ProtocolCustomSettingsFormat, self).__init__(**kwargs) + self.protocol = protocol + self.trigger_rate_override = trigger_rate_override + self.source_rate_override = source_rate_override + self.trigger_sensitivity_override = trigger_sensitivity_override + + +class PublicIPAddress(Resource): + """Public IP address resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The public IP address SKU. + :type sku: ~azure.mgmt.network.v2019_09_01.models.PublicIPAddressSku + :param public_ip_allocation_method: The public IP address allocation + method. Possible values include: 'Static', 'Dynamic' + :type public_ip_allocation_method: str or + ~azure.mgmt.network.v2019_09_01.models.IPAllocationMethod + :param public_ip_address_version: The public IP address version. Possible + values include: 'IPv4', 'IPv6' + :type public_ip_address_version: str or + ~azure.mgmt.network.v2019_09_01.models.IPVersion + :ivar ip_configuration: The IP configuration associated with the public IP + address. + :vartype ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.IPConfiguration + :param dns_settings: The FQDN of the DNS record associated with the public + IP address. + :type dns_settings: + ~azure.mgmt.network.v2019_09_01.models.PublicIPAddressDnsSettings + :param ddos_settings: The DDoS protection custom policy associated with + the public IP address. + :type ddos_settings: ~azure.mgmt.network.v2019_09_01.models.DdosSettings + :param ip_tags: The list of tags associated with the public IP address. + :type ip_tags: list[~azure.mgmt.network.v2019_09_01.models.IpTag] + :param ip_address: The IP address associated with the public IP address + resource. + :type ip_address: str + :param public_ip_prefix: The Public IP Prefix this Public IP Address + should be allocated from. + :type public_ip_prefix: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param idle_timeout_in_minutes: The idle timeout of the public IP address. + :type idle_timeout_in_minutes: int + :ivar resource_guid: The resource GUID property of the public IP address + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the public IP address + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :param zones: A list of availability zones denoting the IP allocated for + the resource needs to come from. + :type zones: list[str] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'ip_configuration': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'PublicIPAddressSku'}, + 'public_ip_allocation_method': {'key': 'properties.publicIPAllocationMethod', 'type': 'str'}, + 'public_ip_address_version': {'key': 'properties.publicIPAddressVersion', 'type': 'str'}, + 'ip_configuration': {'key': 'properties.ipConfiguration', 'type': 'IPConfiguration'}, + 'dns_settings': {'key': 'properties.dnsSettings', 'type': 'PublicIPAddressDnsSettings'}, + 'ddos_settings': {'key': 'properties.ddosSettings', 'type': 'DdosSettings'}, + 'ip_tags': {'key': 'properties.ipTags', 'type': '[IpTag]'}, + 'ip_address': {'key': 'properties.ipAddress', 'type': 'str'}, + 'public_ip_prefix': {'key': 'properties.publicIPPrefix', 'type': 'SubResource'}, + 'idle_timeout_in_minutes': {'key': 'properties.idleTimeoutInMinutes', 'type': 'int'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, sku=None, public_ip_allocation_method=None, public_ip_address_version=None, dns_settings=None, ddos_settings=None, ip_tags=None, ip_address: str=None, public_ip_prefix=None, idle_timeout_in_minutes: int=None, zones=None, **kwargs) -> None: + super(PublicIPAddress, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.sku = sku + self.public_ip_allocation_method = public_ip_allocation_method + self.public_ip_address_version = public_ip_address_version + self.ip_configuration = None + self.dns_settings = dns_settings + self.ddos_settings = ddos_settings + self.ip_tags = ip_tags + self.ip_address = ip_address + self.public_ip_prefix = public_ip_prefix + self.idle_timeout_in_minutes = idle_timeout_in_minutes + self.resource_guid = None + self.provisioning_state = None + self.etag = None + self.zones = zones + + +class PublicIPAddressDnsSettings(Model): + """Contains FQDN of the DNS record associated with the public IP address. + + :param domain_name_label: The domain name label. The concatenation of the + domain name label and the regionalized DNS zone make up the fully + qualified domain name associated with the public IP address. If a domain + name label is specified, an A DNS record is created for the public IP in + the Microsoft Azure DNS system. + :type domain_name_label: str + :param fqdn: The Fully Qualified Domain Name of the A DNS record + associated with the public IP. This is the concatenation of the + domainNameLabel and the regionalized DNS zone. + :type fqdn: str + :param reverse_fqdn: The reverse FQDN. A user-visible, fully qualified + domain name that resolves to this public IP address. If the reverseFqdn is + specified, then a PTR DNS record is created pointing from the IP address + in the in-addr.arpa domain to the reverse FQDN. + :type reverse_fqdn: str + """ + + _attribute_map = { + 'domain_name_label': {'key': 'domainNameLabel', 'type': 'str'}, + 'fqdn': {'key': 'fqdn', 'type': 'str'}, + 'reverse_fqdn': {'key': 'reverseFqdn', 'type': 'str'}, + } + + def __init__(self, *, domain_name_label: str=None, fqdn: str=None, reverse_fqdn: str=None, **kwargs) -> None: + super(PublicIPAddressDnsSettings, self).__init__(**kwargs) + self.domain_name_label = domain_name_label + self.fqdn = fqdn + self.reverse_fqdn = reverse_fqdn + + +class PublicIPAddressSku(Model): + """SKU of a public IP address. + + :param name: Name of a public IP address SKU. Possible values include: + 'Basic', 'Standard' + :type name: str or + ~azure.mgmt.network.v2019_09_01.models.PublicIPAddressSkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name=None, **kwargs) -> None: + super(PublicIPAddressSku, self).__init__(**kwargs) + self.name = name + + +class PublicIPPrefix(Resource): + """Public IP prefix resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param sku: The public IP prefix SKU. + :type sku: ~azure.mgmt.network.v2019_09_01.models.PublicIPPrefixSku + :param public_ip_address_version: The public IP address version. Possible + values include: 'IPv4', 'IPv6' + :type public_ip_address_version: str or + ~azure.mgmt.network.v2019_09_01.models.IPVersion + :param ip_tags: The list of tags associated with the public IP prefix. + :type ip_tags: list[~azure.mgmt.network.v2019_09_01.models.IpTag] + :param prefix_length: The Length of the Public IP Prefix. + :type prefix_length: int + :ivar ip_prefix: The allocated Prefix. + :vartype ip_prefix: str + :ivar public_ip_addresses: The list of all referenced PublicIPAddresses. + :vartype public_ip_addresses: + list[~azure.mgmt.network.v2019_09_01.models.ReferencedPublicIpAddress] + :ivar load_balancer_frontend_ip_configuration: The reference to load + balancer frontend IP configuration associated with the public IP prefix. + :vartype load_balancer_frontend_ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar resource_guid: The resource GUID property of the public IP prefix + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the public IP prefix + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :param zones: A list of availability zones denoting the IP allocated for + the resource needs to come from. + :type zones: list[str] + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'ip_prefix': {'readonly': True}, + 'public_ip_addresses': {'readonly': True}, + 'load_balancer_frontend_ip_configuration': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'sku': {'key': 'sku', 'type': 'PublicIPPrefixSku'}, + 'public_ip_address_version': {'key': 'properties.publicIPAddressVersion', 'type': 'str'}, + 'ip_tags': {'key': 'properties.ipTags', 'type': '[IpTag]'}, + 'prefix_length': {'key': 'properties.prefixLength', 'type': 'int'}, + 'ip_prefix': {'key': 'properties.ipPrefix', 'type': 'str'}, + 'public_ip_addresses': {'key': 'properties.publicIPAddresses', 'type': '[ReferencedPublicIpAddress]'}, + 'load_balancer_frontend_ip_configuration': {'key': 'properties.loadBalancerFrontendIpConfiguration', 'type': 'SubResource'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'zones': {'key': 'zones', 'type': '[str]'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, sku=None, public_ip_address_version=None, ip_tags=None, prefix_length: int=None, zones=None, **kwargs) -> None: + super(PublicIPPrefix, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.sku = sku + self.public_ip_address_version = public_ip_address_version + self.ip_tags = ip_tags + self.prefix_length = prefix_length + self.ip_prefix = None + self.public_ip_addresses = None + self.load_balancer_frontend_ip_configuration = None + self.resource_guid = None + self.provisioning_state = None + self.etag = None + self.zones = zones + + +class PublicIPPrefixSku(Model): + """SKU of a public IP prefix. + + :param name: Name of a public IP prefix SKU. Possible values include: + 'Standard' + :type name: str or + ~azure.mgmt.network.v2019_09_01.models.PublicIPPrefixSkuName + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + } + + def __init__(self, *, name=None, **kwargs) -> None: + super(PublicIPPrefixSku, self).__init__(**kwargs) + self.name = name + + +class QueryTroubleshootingParameters(Model): + """Parameters that define the resource to query the troubleshooting result. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The target resource ID to query the + troubleshooting result. + :type target_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + } + + def __init__(self, *, target_resource_id: str, **kwargs) -> None: + super(QueryTroubleshootingParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id + + +class ReferencedPublicIpAddress(Model): + """Reference to a public IP address. + + :param id: The PublicIPAddress Reference. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(ReferencedPublicIpAddress, self).__init__(**kwargs) + self.id = id + + +class ResourceNavigationLink(SubResource): + """ResourceNavigationLink resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param linked_resource_type: Resource type of the linked resource. + :type linked_resource_type: str + :param link: Link to the external resource. + :type link: str + :ivar provisioning_state: The provisioning state of the resource + navigation link resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Name of the resource that is unique within a resource group. + This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Resource type. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'linked_resource_type': {'key': 'properties.linkedResourceType', 'type': 'str'}, + 'link': {'key': 'properties.link', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, linked_resource_type: str=None, link: str=None, name: str=None, **kwargs) -> None: + super(ResourceNavigationLink, self).__init__(id=id, **kwargs) + self.linked_resource_type = linked_resource_type + self.link = link + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class ResourceNavigationLinksListResult(Model): + """Response for ResourceNavigationLinks_List operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: The resource navigation links in a subnet. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.ResourceNavigationLink] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ResourceNavigationLink]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(ResourceNavigationLinksListResult, self).__init__(**kwargs) + self.value = value + self.next_link = None + + +class RetentionPolicyParameters(Model): + """Parameters that define the retention policy for flow log. + + :param days: Number of days to retain flow log records. Default value: 0 . + :type days: int + :param enabled: Flag to enable/disable retention. Default value: False . + :type enabled: bool + """ + + _attribute_map = { + 'days': {'key': 'days', 'type': 'int'}, + 'enabled': {'key': 'enabled', 'type': 'bool'}, + } + + def __init__(self, *, days: int=0, enabled: bool=False, **kwargs) -> None: + super(RetentionPolicyParameters, self).__init__(**kwargs) + self.days = days + self.enabled = enabled + + +class Route(SubResource): + """Route resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param address_prefix: The destination CIDR to which the route applies. + :type address_prefix: str + :param next_hop_type: Required. The type of Azure hop the packet should be + sent to. Possible values include: 'VirtualNetworkGateway', 'VnetLocal', + 'Internet', 'VirtualAppliance', 'None' + :type next_hop_type: str or + ~azure.mgmt.network.v2019_09_01.models.RouteNextHopType + :param next_hop_ip_address: The IP address packets should be forwarded to. + Next hop values are only allowed in routes where the next hop type is + VirtualAppliance. + :type next_hop_ip_address: str + :ivar provisioning_state: The provisioning state of the route resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'next_hop_type': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'next_hop_type': {'key': 'properties.nextHopType', 'type': 'str'}, + 'next_hop_ip_address': {'key': 'properties.nextHopIpAddress', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, next_hop_type, id: str=None, address_prefix: str=None, next_hop_ip_address: str=None, name: str=None, **kwargs) -> None: + super(Route, self).__init__(id=id, **kwargs) + self.address_prefix = address_prefix + self.next_hop_type = next_hop_type + self.next_hop_ip_address = next_hop_ip_address + self.provisioning_state = None + self.name = name + self.etag = None + + +class RouteFilter(Resource): + """Route Filter Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param rules: Collection of RouteFilterRules contained within a route + filter. + :type rules: list[~azure.mgmt.network.v2019_09_01.models.RouteFilterRule] + :ivar peerings: A collection of references to express route circuit + peerings. + :vartype peerings: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeering] + :ivar ipv6_peerings: A collection of references to express route circuit + ipv6 peerings. + :vartype ipv6_peerings: + list[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeering] + :ivar provisioning_state: The provisioning state of the route filter + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'peerings': {'readonly': True}, + 'ipv6_peerings': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'rules': {'key': 'properties.rules', 'type': '[RouteFilterRule]'}, + 'peerings': {'key': 'properties.peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'ipv6_peerings': {'key': 'properties.ipv6Peerings', 'type': '[ExpressRouteCircuitPeering]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, rules=None, **kwargs) -> None: + super(RouteFilter, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.rules = rules + self.peerings = None + self.ipv6_peerings = None + self.provisioning_state = None + self.etag = None + + +class RouteFilterRule(SubResource): + """Route Filter Rule Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param access: Required. The access type of the rule. Possible values + include: 'Allow', 'Deny' + :type access: str or ~azure.mgmt.network.v2019_09_01.models.Access + :ivar route_filter_rule_type: Required. The rule type of the rule. Default + value: "Community" . + :vartype route_filter_rule_type: str + :param communities: Required. The collection for bgp community values to + filter on. e.g. ['12076:5010','12076:5020']. + :type communities: list[str] + :ivar provisioning_state: The provisioning state of the route filter rule + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param location: Resource location. + :type location: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'access': {'required': True}, + 'route_filter_rule_type': {'required': True, 'constant': True}, + 'communities': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'access': {'key': 'properties.access', 'type': 'str'}, + 'route_filter_rule_type': {'key': 'properties.routeFilterRuleType', 'type': 'str'}, + 'communities': {'key': 'properties.communities', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + route_filter_rule_type = "Community" + + def __init__(self, *, access, communities, id: str=None, name: str=None, location: str=None, **kwargs) -> None: + super(RouteFilterRule, self).__init__(id=id, **kwargs) + self.access = access + self.communities = communities + self.provisioning_state = None + self.name = name + self.location = location + self.etag = None + + +class RouteTable(Resource): + """Route table resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param routes: Collection of routes contained within a route table. + :type routes: list[~azure.mgmt.network.v2019_09_01.models.Route] + :ivar subnets: A collection of references to subnets. + :vartype subnets: list[~azure.mgmt.network.v2019_09_01.models.Subnet] + :param disable_bgp_route_propagation: Whether to disable the routes + learned by BGP on that route table. True means disable. + :type disable_bgp_route_propagation: bool + :ivar provisioning_state: The provisioning state of the route table + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'subnets': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'routes': {'key': 'properties.routes', 'type': '[Route]'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'disable_bgp_route_propagation': {'key': 'properties.disableBgpRoutePropagation', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, routes=None, disable_bgp_route_propagation: bool=None, **kwargs) -> None: + super(RouteTable, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.routes = routes + self.subnets = None + self.disable_bgp_route_propagation = disable_bgp_route_propagation + self.provisioning_state = None + self.etag = None + + +class SecurityGroupNetworkInterface(Model): + """Network interface and all its associated security rules. + + :param id: ID of the network interface. + :type id: str + :param security_rule_associations: All security rules associated with the + network interface. + :type security_rule_associations: + ~azure.mgmt.network.v2019_09_01.models.SecurityRuleAssociations + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'security_rule_associations': {'key': 'securityRuleAssociations', 'type': 'SecurityRuleAssociations'}, + } + + def __init__(self, *, id: str=None, security_rule_associations=None, **kwargs) -> None: + super(SecurityGroupNetworkInterface, self).__init__(**kwargs) + self.id = id + self.security_rule_associations = security_rule_associations + + +class SecurityGroupViewParameters(Model): + """Parameters that define the VM to check security groups for. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. ID of the target VM. + :type target_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + } + + def __init__(self, *, target_resource_id: str, **kwargs) -> None: + super(SecurityGroupViewParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id + + +class SecurityGroupViewResult(Model): + """The information about security rules applied to the specified VM. + + :param network_interfaces: List of network interfaces on the specified VM. + :type network_interfaces: + list[~azure.mgmt.network.v2019_09_01.models.SecurityGroupNetworkInterface] + """ + + _attribute_map = { + 'network_interfaces': {'key': 'networkInterfaces', 'type': '[SecurityGroupNetworkInterface]'}, + } + + def __init__(self, *, network_interfaces=None, **kwargs) -> None: + super(SecurityGroupViewResult, self).__init__(**kwargs) + self.network_interfaces = network_interfaces + + +class SecurityRule(SubResource): + """Network security rule. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param description: A description for this rule. Restricted to 140 chars. + :type description: str + :param protocol: Required. Network protocol this rule applies to. Possible + values include: 'Tcp', 'Udp', 'Icmp', 'Esp', '*', 'Ah' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.SecurityRuleProtocol + :param source_port_range: The source port or range. Integer or range + between 0 and 65535. Asterisk '*' can also be used to match all ports. + :type source_port_range: str + :param destination_port_range: The destination port or range. Integer or + range between 0 and 65535. Asterisk '*' can also be used to match all + ports. + :type destination_port_range: str + :param source_address_prefix: The CIDR or source IP range. Asterisk '*' + can also be used to match all source IPs. Default tags such as + 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If + this is an ingress rule, specifies where network traffic originates from. + :type source_address_prefix: str + :param source_address_prefixes: The CIDR or source IP ranges. + :type source_address_prefixes: list[str] + :param source_application_security_groups: The application security group + specified as source. + :type source_application_security_groups: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationSecurityGroup] + :param destination_address_prefix: The destination address prefix. CIDR or + destination IP range. Asterisk '*' can also be used to match all source + IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and + 'Internet' can also be used. + :type destination_address_prefix: str + :param destination_address_prefixes: The destination address prefixes. + CIDR or destination IP ranges. + :type destination_address_prefixes: list[str] + :param destination_application_security_groups: The application security + group specified as destination. + :type destination_application_security_groups: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationSecurityGroup] + :param source_port_ranges: The source port ranges. + :type source_port_ranges: list[str] + :param destination_port_ranges: The destination port ranges. + :type destination_port_ranges: list[str] + :param access: Required. The network traffic is allowed or denied. + Possible values include: 'Allow', 'Deny' + :type access: str or + ~azure.mgmt.network.v2019_09_01.models.SecurityRuleAccess + :param priority: The priority of the rule. The value can be between 100 + and 4096. The priority number must be unique for each rule in the + collection. The lower the priority number, the higher the priority of the + rule. + :type priority: int + :param direction: Required. The direction of the rule. The direction + specifies if rule will be evaluated on incoming or outgoing traffic. + Possible values include: 'Inbound', 'Outbound' + :type direction: str or + ~azure.mgmt.network.v2019_09_01.models.SecurityRuleDirection + :ivar provisioning_state: The provisioning state of the security rule + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'protocol': {'required': True}, + 'access': {'required': True}, + 'direction': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'protocol': {'key': 'properties.protocol', 'type': 'str'}, + 'source_port_range': {'key': 'properties.sourcePortRange', 'type': 'str'}, + 'destination_port_range': {'key': 'properties.destinationPortRange', 'type': 'str'}, + 'source_address_prefix': {'key': 'properties.sourceAddressPrefix', 'type': 'str'}, + 'source_address_prefixes': {'key': 'properties.sourceAddressPrefixes', 'type': '[str]'}, + 'source_application_security_groups': {'key': 'properties.sourceApplicationSecurityGroups', 'type': '[ApplicationSecurityGroup]'}, + 'destination_address_prefix': {'key': 'properties.destinationAddressPrefix', 'type': 'str'}, + 'destination_address_prefixes': {'key': 'properties.destinationAddressPrefixes', 'type': '[str]'}, + 'destination_application_security_groups': {'key': 'properties.destinationApplicationSecurityGroups', 'type': '[ApplicationSecurityGroup]'}, + 'source_port_ranges': {'key': 'properties.sourcePortRanges', 'type': '[str]'}, + 'destination_port_ranges': {'key': 'properties.destinationPortRanges', 'type': '[str]'}, + 'access': {'key': 'properties.access', 'type': 'str'}, + 'priority': {'key': 'properties.priority', 'type': 'int'}, + 'direction': {'key': 'properties.direction', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, protocol, access, direction, id: str=None, description: str=None, source_port_range: str=None, destination_port_range: str=None, source_address_prefix: str=None, source_address_prefixes=None, source_application_security_groups=None, destination_address_prefix: str=None, destination_address_prefixes=None, destination_application_security_groups=None, source_port_ranges=None, destination_port_ranges=None, priority: int=None, name: str=None, **kwargs) -> None: + super(SecurityRule, self).__init__(id=id, **kwargs) + self.description = description + self.protocol = protocol + self.source_port_range = source_port_range + self.destination_port_range = destination_port_range + self.source_address_prefix = source_address_prefix + self.source_address_prefixes = source_address_prefixes + self.source_application_security_groups = source_application_security_groups + self.destination_address_prefix = destination_address_prefix + self.destination_address_prefixes = destination_address_prefixes + self.destination_application_security_groups = destination_application_security_groups + self.source_port_ranges = source_port_ranges + self.destination_port_ranges = destination_port_ranges + self.access = access + self.priority = priority + self.direction = direction + self.provisioning_state = None + self.name = name + self.etag = None + + +class SecurityRuleAssociations(Model): + """All security rules associated with the network interface. + + :param network_interface_association: Network interface and it's custom + security rules. + :type network_interface_association: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceAssociation + :param subnet_association: Subnet and it's custom security rules. + :type subnet_association: + ~azure.mgmt.network.v2019_09_01.models.SubnetAssociation + :param default_security_rules: Collection of default security rules of the + network security group. + :type default_security_rules: + list[~azure.mgmt.network.v2019_09_01.models.SecurityRule] + :param effective_security_rules: Collection of effective security rules. + :type effective_security_rules: + list[~azure.mgmt.network.v2019_09_01.models.EffectiveNetworkSecurityRule] + """ + + _attribute_map = { + 'network_interface_association': {'key': 'networkInterfaceAssociation', 'type': 'NetworkInterfaceAssociation'}, + 'subnet_association': {'key': 'subnetAssociation', 'type': 'SubnetAssociation'}, + 'default_security_rules': {'key': 'defaultSecurityRules', 'type': '[SecurityRule]'}, + 'effective_security_rules': {'key': 'effectiveSecurityRules', 'type': '[EffectiveNetworkSecurityRule]'}, + } + + def __init__(self, *, network_interface_association=None, subnet_association=None, default_security_rules=None, effective_security_rules=None, **kwargs) -> None: + super(SecurityRuleAssociations, self).__init__(**kwargs) + self.network_interface_association = network_interface_association + self.subnet_association = subnet_association + self.default_security_rules = default_security_rules + self.effective_security_rules = effective_security_rules + + +class ServiceAssociationLink(SubResource): + """ServiceAssociationLink resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param linked_resource_type: Resource type of the linked resource. + :type linked_resource_type: str + :param link: Link to the external resource. + :type link: str + :ivar provisioning_state: The provisioning state of the service + association link resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param allow_delete: If true, the resource can be deleted. + :type allow_delete: bool + :param locations: A list of locations. + :type locations: list[str] + :param name: Name of the resource that is unique within a resource group. + This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Resource type. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'linked_resource_type': {'key': 'properties.linkedResourceType', 'type': 'str'}, + 'link': {'key': 'properties.link', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'allow_delete': {'key': 'properties.allowDelete', 'type': 'bool'}, + 'locations': {'key': 'properties.locations', 'type': '[str]'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, linked_resource_type: str=None, link: str=None, allow_delete: bool=None, locations=None, name: str=None, **kwargs) -> None: + super(ServiceAssociationLink, self).__init__(id=id, **kwargs) + self.linked_resource_type = linked_resource_type + self.link = link + self.provisioning_state = None + self.allow_delete = allow_delete + self.locations = locations + self.name = name + self.etag = None + self.type = None + + +class ServiceAssociationLinksListResult(Model): + """Response for ServiceAssociationLinks_List operation. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param value: The service association links in a subnet. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.ServiceAssociationLink] + :ivar next_link: The URL to get the next set of results. + :vartype next_link: str + """ + + _validation = { + 'next_link': {'readonly': True}, + } + + _attribute_map = { + 'value': {'key': 'value', 'type': '[ServiceAssociationLink]'}, + 'next_link': {'key': 'nextLink', 'type': 'str'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(ServiceAssociationLinksListResult, self).__init__(**kwargs) + self.value = value + self.next_link = None + + +class ServiceEndpointPolicy(Resource): + """Service End point policy resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param service_endpoint_policy_definitions: A collection of service + endpoint policy definitions of the service endpoint policy. + :type service_endpoint_policy_definitions: + list[~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPolicyDefinition] + :ivar subnets: A collection of references to subnets. + :vartype subnets: list[~azure.mgmt.network.v2019_09_01.models.Subnet] + :ivar resource_guid: The resource GUID property of the service endpoint + policy resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the service endpoint + policy resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'subnets': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'service_endpoint_policy_definitions': {'key': 'properties.serviceEndpointPolicyDefinitions', 'type': '[ServiceEndpointPolicyDefinition]'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, service_endpoint_policy_definitions=None, **kwargs) -> None: + super(ServiceEndpointPolicy, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.service_endpoint_policy_definitions = service_endpoint_policy_definitions + self.subnets = None + self.resource_guid = None + self.provisioning_state = None + self.etag = None + + +class ServiceEndpointPolicyDefinition(SubResource): + """Service Endpoint policy definitions. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param description: A description for this rule. Restricted to 140 chars. + :type description: str + :param service: Service endpoint name. + :type service: str + :param service_resources: A list of service resources. + :type service_resources: list[str] + :ivar provisioning_state: The provisioning state of the service endpoint + policy definition resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'description': {'key': 'properties.description', 'type': 'str'}, + 'service': {'key': 'properties.service', 'type': 'str'}, + 'service_resources': {'key': 'properties.serviceResources', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, description: str=None, service: str=None, service_resources=None, name: str=None, **kwargs) -> None: + super(ServiceEndpointPolicyDefinition, self).__init__(id=id, **kwargs) + self.description = description + self.service = service + self.service_resources = service_resources + self.provisioning_state = None + self.name = name + self.etag = None + + +class ServiceEndpointPropertiesFormat(Model): + """The service endpoint properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param service: The type of the endpoint service. + :type service: str + :param locations: A list of locations. + :type locations: list[str] + :ivar provisioning_state: The provisioning state of the service endpoint + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + } + + _attribute_map = { + 'service': {'key': 'service', 'type': 'str'}, + 'locations': {'key': 'locations', 'type': '[str]'}, + 'provisioning_state': {'key': 'provisioningState', 'type': 'str'}, + } + + def __init__(self, *, service: str=None, locations=None, **kwargs) -> None: + super(ServiceEndpointPropertiesFormat, self).__init__(**kwargs) + self.service = service + self.locations = locations + self.provisioning_state = None + + +class ServiceTagInformation(Model): + """The service tag information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar properties: Properties of the service tag information. + :vartype properties: + ~azure.mgmt.network.v2019_09_01.models.ServiceTagInformationPropertiesFormat + :ivar name: The name of service tag. + :vartype name: str + :ivar id: The ID of service tag. + :vartype id: str + """ + + _validation = { + 'properties': {'readonly': True}, + 'name': {'readonly': True}, + 'id': {'readonly': True}, + } + + _attribute_map = { + 'properties': {'key': 'properties', 'type': 'ServiceTagInformationPropertiesFormat'}, + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(ServiceTagInformation, self).__init__(**kwargs) + self.properties = None + self.name = None + self.id = None + + +class ServiceTagInformationPropertiesFormat(Model): + """Properties of the service tag information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar change_number: The iteration number of service tag. + :vartype change_number: str + :ivar region: The region of service tag. + :vartype region: str + :ivar system_service: The name of system service. + :vartype system_service: str + :ivar address_prefixes: The list of IP address prefixes. + :vartype address_prefixes: list[str] + """ + + _validation = { + 'change_number': {'readonly': True}, + 'region': {'readonly': True}, + 'system_service': {'readonly': True}, + 'address_prefixes': {'readonly': True}, + } + + _attribute_map = { + 'change_number': {'key': 'changeNumber', 'type': 'str'}, + 'region': {'key': 'region', 'type': 'str'}, + 'system_service': {'key': 'systemService', 'type': 'str'}, + 'address_prefixes': {'key': 'addressPrefixes', 'type': '[str]'}, + } + + def __init__(self, **kwargs) -> None: + super(ServiceTagInformationPropertiesFormat, self).__init__(**kwargs) + self.change_number = None + self.region = None + self.system_service = None + self.address_prefixes = None + + +class ServiceTagsListResult(Model): + """Response for the ListServiceTags API service call. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar name: The name of the cloud. + :vartype name: str + :ivar id: The ID of the cloud. + :vartype id: str + :ivar type: The azure resource type. + :vartype type: str + :ivar change_number: The iteration number. + :vartype change_number: str + :ivar cloud: The name of the cloud. + :vartype cloud: str + :ivar values: The list of service tag information resources. + :vartype values: + list[~azure.mgmt.network.v2019_09_01.models.ServiceTagInformation] + """ + + _validation = { + 'name': {'readonly': True}, + 'id': {'readonly': True}, + 'type': {'readonly': True}, + 'change_number': {'readonly': True}, + 'cloud': {'readonly': True}, + 'values': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'change_number': {'key': 'changeNumber', 'type': 'str'}, + 'cloud': {'key': 'cloud', 'type': 'str'}, + 'values': {'key': 'values', 'type': '[ServiceTagInformation]'}, + } + + def __init__(self, **kwargs) -> None: + super(ServiceTagsListResult, self).__init__(**kwargs) + self.name = None + self.id = None + self.type = None + self.change_number = None + self.cloud = None + self.values = None + + +class Subnet(SubResource): + """Subnet in a virtual network resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param address_prefix: The address prefix for the subnet. + :type address_prefix: str + :param address_prefixes: List of address prefixes for the subnet. + :type address_prefixes: list[str] + :param network_security_group: The reference of the NetworkSecurityGroup + resource. + :type network_security_group: + ~azure.mgmt.network.v2019_09_01.models.NetworkSecurityGroup + :param route_table: The reference of the RouteTable resource. + :type route_table: ~azure.mgmt.network.v2019_09_01.models.RouteTable + :param nat_gateway: Nat gateway associated with this subnet. + :type nat_gateway: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param service_endpoints: An array of service endpoints. + :type service_endpoints: + list[~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPropertiesFormat] + :param service_endpoint_policies: An array of service endpoint policies. + :type service_endpoint_policies: + list[~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPolicy] + :ivar private_endpoints: An array of references to private endpoints. + :vartype private_endpoints: + list[~azure.mgmt.network.v2019_09_01.models.PrivateEndpoint] + :ivar ip_configurations: An array of references to the network interface + IP configurations using subnet. + :vartype ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.IPConfiguration] + :ivar ip_configuration_profiles: Array of IP configuration profiles which + reference this subnet. + :vartype ip_configuration_profiles: + list[~azure.mgmt.network.v2019_09_01.models.IPConfigurationProfile] + :ivar resource_navigation_links: An array of references to the external + resources using subnet. + :vartype resource_navigation_links: + list[~azure.mgmt.network.v2019_09_01.models.ResourceNavigationLink] + :ivar service_association_links: An array of references to services + injecting into this subnet. + :vartype service_association_links: + list[~azure.mgmt.network.v2019_09_01.models.ServiceAssociationLink] + :param delegations: An array of references to the delegations on the + subnet. + :type delegations: list[~azure.mgmt.network.v2019_09_01.models.Delegation] + :ivar purpose: A read-only string identifying the intention of use for + this subnet based on delegations and other user-defined properties. + :vartype purpose: str + :ivar provisioning_state: The provisioning state of the subnet resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param private_endpoint_network_policies: Enable or Disable apply network + policies on private end point in the subnet. + :type private_endpoint_network_policies: str + :param private_link_service_network_policies: Enable or Disable apply + network policies on private link service in the subnet. + :type private_link_service_network_policies: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'private_endpoints': {'readonly': True}, + 'ip_configurations': {'readonly': True}, + 'ip_configuration_profiles': {'readonly': True}, + 'resource_navigation_links': {'readonly': True}, + 'service_association_links': {'readonly': True}, + 'purpose': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'address_prefixes': {'key': 'properties.addressPrefixes', 'type': '[str]'}, + 'network_security_group': {'key': 'properties.networkSecurityGroup', 'type': 'NetworkSecurityGroup'}, + 'route_table': {'key': 'properties.routeTable', 'type': 'RouteTable'}, + 'nat_gateway': {'key': 'properties.natGateway', 'type': 'SubResource'}, + 'service_endpoints': {'key': 'properties.serviceEndpoints', 'type': '[ServiceEndpointPropertiesFormat]'}, + 'service_endpoint_policies': {'key': 'properties.serviceEndpointPolicies', 'type': '[ServiceEndpointPolicy]'}, + 'private_endpoints': {'key': 'properties.privateEndpoints', 'type': '[PrivateEndpoint]'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[IPConfiguration]'}, + 'ip_configuration_profiles': {'key': 'properties.ipConfigurationProfiles', 'type': '[IPConfigurationProfile]'}, + 'resource_navigation_links': {'key': 'properties.resourceNavigationLinks', 'type': '[ResourceNavigationLink]'}, + 'service_association_links': {'key': 'properties.serviceAssociationLinks', 'type': '[ServiceAssociationLink]'}, + 'delegations': {'key': 'properties.delegations', 'type': '[Delegation]'}, + 'purpose': {'key': 'properties.purpose', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'private_endpoint_network_policies': {'key': 'properties.privateEndpointNetworkPolicies', 'type': 'str'}, + 'private_link_service_network_policies': {'key': 'properties.privateLinkServiceNetworkPolicies', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, address_prefix: str=None, address_prefixes=None, network_security_group=None, route_table=None, nat_gateway=None, service_endpoints=None, service_endpoint_policies=None, delegations=None, private_endpoint_network_policies: str=None, private_link_service_network_policies: str=None, name: str=None, **kwargs) -> None: + super(Subnet, self).__init__(id=id, **kwargs) + self.address_prefix = address_prefix + self.address_prefixes = address_prefixes + self.network_security_group = network_security_group + self.route_table = route_table + self.nat_gateway = nat_gateway + self.service_endpoints = service_endpoints + self.service_endpoint_policies = service_endpoint_policies + self.private_endpoints = None + self.ip_configurations = None + self.ip_configuration_profiles = None + self.resource_navigation_links = None + self.service_association_links = None + self.delegations = delegations + self.purpose = None + self.provisioning_state = None + self.private_endpoint_network_policies = private_endpoint_network_policies + self.private_link_service_network_policies = private_link_service_network_policies + self.name = name + self.etag = None + + +class SubnetAssociation(Model): + """Subnet and it's custom security rules. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: Subnet ID. + :vartype id: str + :param security_rules: Collection of custom security rules. + :type security_rules: + list[~azure.mgmt.network.v2019_09_01.models.SecurityRule] + """ + + _validation = { + 'id': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'security_rules': {'key': 'securityRules', 'type': '[SecurityRule]'}, + } + + def __init__(self, *, security_rules=None, **kwargs) -> None: + super(SubnetAssociation, self).__init__(**kwargs) + self.id = None + self.security_rules = security_rules + + +class TagsObject(Model): + """Tags object for patch operations. + + :param tags: Resource tags. + :type tags: dict[str, str] + """ + + _attribute_map = { + 'tags': {'key': 'tags', 'type': '{str}'}, + } + + def __init__(self, *, tags=None, **kwargs) -> None: + super(TagsObject, self).__init__(**kwargs) + self.tags = tags + + +class Topology(Model): + """Topology of the specified resource group. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar id: GUID representing the operation id. + :vartype id: str + :ivar created_date_time: The datetime when the topology was initially + created for the resource group. + :vartype created_date_time: datetime + :ivar last_modified: The datetime when the topology was last modified. + :vartype last_modified: datetime + :param resources: A list of topology resources. + :type resources: + list[~azure.mgmt.network.v2019_09_01.models.TopologyResource] + """ + + _validation = { + 'id': {'readonly': True}, + 'created_date_time': {'readonly': True}, + 'last_modified': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'created_date_time': {'key': 'createdDateTime', 'type': 'iso-8601'}, + 'last_modified': {'key': 'lastModified', 'type': 'iso-8601'}, + 'resources': {'key': 'resources', 'type': '[TopologyResource]'}, + } + + def __init__(self, *, resources=None, **kwargs) -> None: + super(Topology, self).__init__(**kwargs) + self.id = None + self.created_date_time = None + self.last_modified = None + self.resources = resources + + +class TopologyAssociation(Model): + """Resources that have an association with the parent resource. + + :param name: The name of the resource that is associated with the parent + resource. + :type name: str + :param resource_id: The ID of the resource that is associated with the + parent resource. + :type resource_id: str + :param association_type: The association type of the child resource to the + parent resource. Possible values include: 'Associated', 'Contains' + :type association_type: str or + ~azure.mgmt.network.v2019_09_01.models.AssociationType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'resource_id': {'key': 'resourceId', 'type': 'str'}, + 'association_type': {'key': 'associationType', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, resource_id: str=None, association_type=None, **kwargs) -> None: + super(TopologyAssociation, self).__init__(**kwargs) + self.name = name + self.resource_id = resource_id + self.association_type = association_type + + +class TopologyParameters(Model): + """Parameters that define the representation of topology. + + :param target_resource_group_name: The name of the target resource group + to perform topology on. + :type target_resource_group_name: str + :param target_virtual_network: The reference of the Virtual Network + resource. + :type target_virtual_network: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param target_subnet: The reference of the Subnet resource. + :type target_subnet: ~azure.mgmt.network.v2019_09_01.models.SubResource + """ + + _attribute_map = { + 'target_resource_group_name': {'key': 'targetResourceGroupName', 'type': 'str'}, + 'target_virtual_network': {'key': 'targetVirtualNetwork', 'type': 'SubResource'}, + 'target_subnet': {'key': 'targetSubnet', 'type': 'SubResource'}, + } + + def __init__(self, *, target_resource_group_name: str=None, target_virtual_network=None, target_subnet=None, **kwargs) -> None: + super(TopologyParameters, self).__init__(**kwargs) + self.target_resource_group_name = target_resource_group_name + self.target_virtual_network = target_virtual_network + self.target_subnet = target_subnet + + +class TopologyResource(Model): + """The network resource topology information for the given resource group. + + :param name: Name of the resource. + :type name: str + :param id: ID of the resource. + :type id: str + :param location: Resource location. + :type location: str + :param associations: Holds the associations the resource has with other + resources in the resource group. + :type associations: + list[~azure.mgmt.network.v2019_09_01.models.TopologyAssociation] + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'id': {'key': 'id', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'associations': {'key': 'associations', 'type': '[TopologyAssociation]'}, + } + + def __init__(self, *, name: str=None, id: str=None, location: str=None, associations=None, **kwargs) -> None: + super(TopologyResource, self).__init__(**kwargs) + self.name = name + self.id = id + self.location = location + self.associations = associations + + +class TrafficAnalyticsConfigurationProperties(Model): + """Parameters that define the configuration of traffic analytics. + + All required parameters must be populated in order to send to Azure. + + :param enabled: Required. Flag to enable/disable traffic analytics. + :type enabled: bool + :param workspace_id: The resource guid of the attached workspace. + :type workspace_id: str + :param workspace_region: The location of the attached workspace. + :type workspace_region: str + :param workspace_resource_id: Resource Id of the attached workspace. + :type workspace_resource_id: str + :param traffic_analytics_interval: The interval in minutes which would + decide how frequently TA service should do flow analytics. + :type traffic_analytics_interval: int + """ + + _validation = { + 'enabled': {'required': True}, + } + + _attribute_map = { + 'enabled': {'key': 'enabled', 'type': 'bool'}, + 'workspace_id': {'key': 'workspaceId', 'type': 'str'}, + 'workspace_region': {'key': 'workspaceRegion', 'type': 'str'}, + 'workspace_resource_id': {'key': 'workspaceResourceId', 'type': 'str'}, + 'traffic_analytics_interval': {'key': 'trafficAnalyticsInterval', 'type': 'int'}, + } + + def __init__(self, *, enabled: bool, workspace_id: str=None, workspace_region: str=None, workspace_resource_id: str=None, traffic_analytics_interval: int=None, **kwargs) -> None: + super(TrafficAnalyticsConfigurationProperties, self).__init__(**kwargs) + self.enabled = enabled + self.workspace_id = workspace_id + self.workspace_region = workspace_region + self.workspace_resource_id = workspace_resource_id + self.traffic_analytics_interval = traffic_analytics_interval + + +class TrafficAnalyticsProperties(Model): + """Parameters that define the configuration of traffic analytics. + + All required parameters must be populated in order to send to Azure. + + :param network_watcher_flow_analytics_configuration: Required. Parameters + that define the configuration of traffic analytics. + :type network_watcher_flow_analytics_configuration: + ~azure.mgmt.network.v2019_09_01.models.TrafficAnalyticsConfigurationProperties + """ + + _validation = { + 'network_watcher_flow_analytics_configuration': {'required': True}, + } + + _attribute_map = { + 'network_watcher_flow_analytics_configuration': {'key': 'networkWatcherFlowAnalyticsConfiguration', 'type': 'TrafficAnalyticsConfigurationProperties'}, + } + + def __init__(self, *, network_watcher_flow_analytics_configuration, **kwargs) -> None: + super(TrafficAnalyticsProperties, self).__init__(**kwargs) + self.network_watcher_flow_analytics_configuration = network_watcher_flow_analytics_configuration + + +class TrafficSelectorPolicy(Model): + """An traffic selector policy for a virtual network gateway connection. + + All required parameters must be populated in order to send to Azure. + + :param local_address_ranges: Required. A collection of local address + spaces in CIDR format + :type local_address_ranges: list[str] + :param remote_address_ranges: Required. A collection of remote address + spaces in CIDR format + :type remote_address_ranges: list[str] + """ + + _validation = { + 'local_address_ranges': {'required': True}, + 'remote_address_ranges': {'required': True}, + } + + _attribute_map = { + 'local_address_ranges': {'key': 'localAddressRanges', 'type': '[str]'}, + 'remote_address_ranges': {'key': 'remoteAddressRanges', 'type': '[str]'}, + } + + def __init__(self, *, local_address_ranges, remote_address_ranges, **kwargs) -> None: + super(TrafficSelectorPolicy, self).__init__(**kwargs) + self.local_address_ranges = local_address_ranges + self.remote_address_ranges = remote_address_ranges + + +class TroubleshootingDetails(Model): + """Information gained from troubleshooting of specified resource. + + :param id: The id of the get troubleshoot operation. + :type id: str + :param reason_type: Reason type of failure. + :type reason_type: str + :param summary: A summary of troubleshooting. + :type summary: str + :param detail: Details on troubleshooting results. + :type detail: str + :param recommended_actions: List of recommended actions. + :type recommended_actions: + list[~azure.mgmt.network.v2019_09_01.models.TroubleshootingRecommendedActions] + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'reason_type': {'key': 'reasonType', 'type': 'str'}, + 'summary': {'key': 'summary', 'type': 'str'}, + 'detail': {'key': 'detail', 'type': 'str'}, + 'recommended_actions': {'key': 'recommendedActions', 'type': '[TroubleshootingRecommendedActions]'}, + } + + def __init__(self, *, id: str=None, reason_type: str=None, summary: str=None, detail: str=None, recommended_actions=None, **kwargs) -> None: + super(TroubleshootingDetails, self).__init__(**kwargs) + self.id = id + self.reason_type = reason_type + self.summary = summary + self.detail = detail + self.recommended_actions = recommended_actions + + +class TroubleshootingParameters(Model): + """Parameters that define the resource to troubleshoot. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The target resource to troubleshoot. + :type target_resource_id: str + :param storage_id: Required. The ID for the storage account to save the + troubleshoot result. + :type storage_id: str + :param storage_path: Required. The path to the blob to save the + troubleshoot result in. + :type storage_path: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'storage_id': {'required': True}, + 'storage_path': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'storage_id': {'key': 'properties.storageId', 'type': 'str'}, + 'storage_path': {'key': 'properties.storagePath', 'type': 'str'}, + } + + def __init__(self, *, target_resource_id: str, storage_id: str, storage_path: str, **kwargs) -> None: + super(TroubleshootingParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id + self.storage_id = storage_id + self.storage_path = storage_path + + +class TroubleshootingRecommendedActions(Model): + """Recommended actions based on discovered issues. + + :param action_id: ID of the recommended action. + :type action_id: str + :param action_text: Description of recommended actions. + :type action_text: str + :param action_uri: The uri linking to a documentation for the recommended + troubleshooting actions. + :type action_uri: str + :param action_uri_text: The information from the URI for the recommended + troubleshooting actions. + :type action_uri_text: str + """ + + _attribute_map = { + 'action_id': {'key': 'actionId', 'type': 'str'}, + 'action_text': {'key': 'actionText', 'type': 'str'}, + 'action_uri': {'key': 'actionUri', 'type': 'str'}, + 'action_uri_text': {'key': 'actionUriText', 'type': 'str'}, + } + + def __init__(self, *, action_id: str=None, action_text: str=None, action_uri: str=None, action_uri_text: str=None, **kwargs) -> None: + super(TroubleshootingRecommendedActions, self).__init__(**kwargs) + self.action_id = action_id + self.action_text = action_text + self.action_uri = action_uri + self.action_uri_text = action_uri_text + + +class TroubleshootingResult(Model): + """Troubleshooting information gained from specified resource. + + :param start_time: The start time of the troubleshooting. + :type start_time: datetime + :param end_time: The end time of the troubleshooting. + :type end_time: datetime + :param code: The result code of the troubleshooting. + :type code: str + :param results: Information from troubleshooting. + :type results: + list[~azure.mgmt.network.v2019_09_01.models.TroubleshootingDetails] + """ + + _attribute_map = { + 'start_time': {'key': 'startTime', 'type': 'iso-8601'}, + 'end_time': {'key': 'endTime', 'type': 'iso-8601'}, + 'code': {'key': 'code', 'type': 'str'}, + 'results': {'key': 'results', 'type': '[TroubleshootingDetails]'}, + } + + def __init__(self, *, start_time=None, end_time=None, code: str=None, results=None, **kwargs) -> None: + super(TroubleshootingResult, self).__init__(**kwargs) + self.start_time = start_time + self.end_time = end_time + self.code = code + self.results = results + + +class TunnelConnectionHealth(Model): + """VirtualNetworkGatewayConnection properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar tunnel: Tunnel name. + :vartype tunnel: str + :ivar connection_status: Virtual Network Gateway connection status. + Possible values include: 'Unknown', 'Connecting', 'Connected', + 'NotConnected' + :vartype connection_status: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionStatus + :ivar ingress_bytes_transferred: The Ingress Bytes Transferred in this + connection. + :vartype ingress_bytes_transferred: long + :ivar egress_bytes_transferred: The Egress Bytes Transferred in this + connection. + :vartype egress_bytes_transferred: long + :ivar last_connection_established_utc_time: The time at which connection + was established in Utc format. + :vartype last_connection_established_utc_time: str + """ + + _validation = { + 'tunnel': {'readonly': True}, + 'connection_status': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'last_connection_established_utc_time': {'readonly': True}, + } + + _attribute_map = { + 'tunnel': {'key': 'tunnel', 'type': 'str'}, + 'connection_status': {'key': 'connectionStatus', 'type': 'str'}, + 'ingress_bytes_transferred': {'key': 'ingressBytesTransferred', 'type': 'long'}, + 'egress_bytes_transferred': {'key': 'egressBytesTransferred', 'type': 'long'}, + 'last_connection_established_utc_time': {'key': 'lastConnectionEstablishedUtcTime', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(TunnelConnectionHealth, self).__init__(**kwargs) + self.tunnel = None + self.connection_status = None + self.ingress_bytes_transferred = None + self.egress_bytes_transferred = None + self.last_connection_established_utc_time = None + + +class UnprepareNetworkPoliciesRequest(Model): + """Details of UnprepareNetworkPolicies for Subnet. + + :param service_name: The name of the service for which subnet is being + unprepared for. + :type service_name: str + """ + + _attribute_map = { + 'service_name': {'key': 'serviceName', 'type': 'str'}, + } + + def __init__(self, *, service_name: str=None, **kwargs) -> None: + super(UnprepareNetworkPoliciesRequest, self).__init__(**kwargs) + self.service_name = service_name + + +class Usage(Model): + """Describes network resource usage. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :ivar id: Resource identifier. + :vartype id: str + :ivar unit: Required. An enum describing the unit of measurement. Default + value: "Count" . + :vartype unit: str + :param current_value: Required. The current value of the usage. + :type current_value: long + :param limit: Required. The limit of usage. + :type limit: long + :param name: Required. The name of the type of usage. + :type name: ~azure.mgmt.network.v2019_09_01.models.UsageName + """ + + _validation = { + 'id': {'readonly': True}, + 'unit': {'required': True, 'constant': True}, + 'current_value': {'required': True}, + 'limit': {'required': True}, + 'name': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'unit': {'key': 'unit', 'type': 'str'}, + 'current_value': {'key': 'currentValue', 'type': 'long'}, + 'limit': {'key': 'limit', 'type': 'long'}, + 'name': {'key': 'name', 'type': 'UsageName'}, + } + + unit = "Count" + + def __init__(self, *, current_value: int, limit: int, name, **kwargs) -> None: + super(Usage, self).__init__(**kwargs) + self.id = None + self.current_value = current_value + self.limit = limit + self.name = name + + +class UsageName(Model): + """The usage names. + + :param value: A string describing the resource name. + :type value: str + :param localized_value: A localized string describing the resource name. + :type localized_value: str + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': 'str'}, + 'localized_value': {'key': 'localizedValue', 'type': 'str'}, + } + + def __init__(self, *, value: str=None, localized_value: str=None, **kwargs) -> None: + super(UsageName, self).__init__(**kwargs) + self.value = value + self.localized_value = localized_value + + +class VerificationIPFlowParameters(Model): + """Parameters that define the IP flow to be verified. + + All required parameters must be populated in order to send to Azure. + + :param target_resource_id: Required. The ID of the target resource to + perform next-hop on. + :type target_resource_id: str + :param direction: Required. The direction of the packet represented as a + 5-tuple. Possible values include: 'Inbound', 'Outbound' + :type direction: str or ~azure.mgmt.network.v2019_09_01.models.Direction + :param protocol: Required. Protocol to be verified on. Possible values + include: 'TCP', 'UDP' + :type protocol: str or + ~azure.mgmt.network.v2019_09_01.models.IpFlowProtocol + :param local_port: Required. The local port. Acceptable values are a + single integer in the range (0-65535). Support for * for the source port, + which depends on the direction. + :type local_port: str + :param remote_port: Required. The remote port. Acceptable values are a + single integer in the range (0-65535). Support for * for the source port, + which depends on the direction. + :type remote_port: str + :param local_ip_address: Required. The local IP address. Acceptable values + are valid IPv4 addresses. + :type local_ip_address: str + :param remote_ip_address: Required. The remote IP address. Acceptable + values are valid IPv4 addresses. + :type remote_ip_address: str + :param target_nic_resource_id: The NIC ID. (If VM has multiple NICs and IP + forwarding is enabled on any of them, then this parameter must be + specified. Otherwise optional). + :type target_nic_resource_id: str + """ + + _validation = { + 'target_resource_id': {'required': True}, + 'direction': {'required': True}, + 'protocol': {'required': True}, + 'local_port': {'required': True}, + 'remote_port': {'required': True}, + 'local_ip_address': {'required': True}, + 'remote_ip_address': {'required': True}, + } + + _attribute_map = { + 'target_resource_id': {'key': 'targetResourceId', 'type': 'str'}, + 'direction': {'key': 'direction', 'type': 'str'}, + 'protocol': {'key': 'protocol', 'type': 'str'}, + 'local_port': {'key': 'localPort', 'type': 'str'}, + 'remote_port': {'key': 'remotePort', 'type': 'str'}, + 'local_ip_address': {'key': 'localIPAddress', 'type': 'str'}, + 'remote_ip_address': {'key': 'remoteIPAddress', 'type': 'str'}, + 'target_nic_resource_id': {'key': 'targetNicResourceId', 'type': 'str'}, + } + + def __init__(self, *, target_resource_id: str, direction, protocol, local_port: str, remote_port: str, local_ip_address: str, remote_ip_address: str, target_nic_resource_id: str=None, **kwargs) -> None: + super(VerificationIPFlowParameters, self).__init__(**kwargs) + self.target_resource_id = target_resource_id + self.direction = direction + self.protocol = protocol + self.local_port = local_port + self.remote_port = remote_port + self.local_ip_address = local_ip_address + self.remote_ip_address = remote_ip_address + self.target_nic_resource_id = target_nic_resource_id + + +class VerificationIPFlowResult(Model): + """Results of IP flow verification on the target resource. + + :param access: Indicates whether the traffic is allowed or denied. + Possible values include: 'Allow', 'Deny' + :type access: str or ~azure.mgmt.network.v2019_09_01.models.Access + :param rule_name: Name of the rule. If input is not matched against any + security rule, it is not displayed. + :type rule_name: str + """ + + _attribute_map = { + 'access': {'key': 'access', 'type': 'str'}, + 'rule_name': {'key': 'ruleName', 'type': 'str'}, + } + + def __init__(self, *, access=None, rule_name: str=None, **kwargs) -> None: + super(VerificationIPFlowResult, self).__init__(**kwargs) + self.access = access + self.rule_name = rule_name + + +class VirtualHub(Resource): + """VirtualHub Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_wan: The VirtualWAN to which the VirtualHub belongs. + :type virtual_wan: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param vpn_gateway: The VpnGateway associated with this VirtualHub. + :type vpn_gateway: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param p2_svpn_gateway: The P2SVpnGateway associated with this VirtualHub. + :type p2_svpn_gateway: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param express_route_gateway: The expressRouteGateway associated with this + VirtualHub. + :type express_route_gateway: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param azure_firewall: The azureFirewall associated with this VirtualHub. + :type azure_firewall: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param virtual_network_connections: List of all vnet connections with this + VirtualHub. + :type virtual_network_connections: + list[~azure.mgmt.network.v2019_09_01.models.HubVirtualNetworkConnection] + :param address_prefix: Address-prefix for this VirtualHub. + :type address_prefix: str + :param route_table: The routeTable associated with this virtual hub. + :type route_table: + ~azure.mgmt.network.v2019_09_01.models.VirtualHubRouteTable + :ivar provisioning_state: The provisioning state of the virtual hub + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param security_provider_name: The Security Provider name. + :type security_provider_name: str + :param virtual_hub_route_table_v2s: List of all virtual hub route table + v2s associated with this VirtualHub. + :type virtual_hub_route_table_v2s: + list[~azure.mgmt.network.v2019_09_01.models.VirtualHubRouteTableV2] + :param sku: The sku of this VirtualHub. + :type sku: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_wan': {'key': 'properties.virtualWan', 'type': 'SubResource'}, + 'vpn_gateway': {'key': 'properties.vpnGateway', 'type': 'SubResource'}, + 'p2_svpn_gateway': {'key': 'properties.p2SVpnGateway', 'type': 'SubResource'}, + 'express_route_gateway': {'key': 'properties.expressRouteGateway', 'type': 'SubResource'}, + 'azure_firewall': {'key': 'properties.azureFirewall', 'type': 'SubResource'}, + 'virtual_network_connections': {'key': 'properties.virtualNetworkConnections', 'type': '[HubVirtualNetworkConnection]'}, + 'address_prefix': {'key': 'properties.addressPrefix', 'type': 'str'}, + 'route_table': {'key': 'properties.routeTable', 'type': 'VirtualHubRouteTable'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'security_provider_name': {'key': 'properties.securityProviderName', 'type': 'str'}, + 'virtual_hub_route_table_v2s': {'key': 'properties.virtualHubRouteTableV2s', 'type': '[VirtualHubRouteTableV2]'}, + 'sku': {'key': 'properties.sku', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, virtual_wan=None, vpn_gateway=None, p2_svpn_gateway=None, express_route_gateway=None, azure_firewall=None, virtual_network_connections=None, address_prefix: str=None, route_table=None, security_provider_name: str=None, virtual_hub_route_table_v2s=None, sku: str=None, **kwargs) -> None: + super(VirtualHub, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.virtual_wan = virtual_wan + self.vpn_gateway = vpn_gateway + self.p2_svpn_gateway = p2_svpn_gateway + self.express_route_gateway = express_route_gateway + self.azure_firewall = azure_firewall + self.virtual_network_connections = virtual_network_connections + self.address_prefix = address_prefix + self.route_table = route_table + self.provisioning_state = None + self.security_provider_name = security_provider_name + self.virtual_hub_route_table_v2s = virtual_hub_route_table_v2s + self.sku = sku + self.etag = None + + +class VirtualHubId(Model): + """Virtual Hub identifier. + + :param id: The resource URI for the Virtual Hub where the ExpressRoute + gateway is or will be deployed. The Virtual Hub resource and the + ExpressRoute gateway resource reside in the same subscription. + :type id: str + """ + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, **kwargs) -> None: + super(VirtualHubId, self).__init__(**kwargs) + self.id = id + + +class VirtualHubRoute(Model): + """VirtualHub route. + + :param address_prefixes: List of all addressPrefixes. + :type address_prefixes: list[str] + :param next_hop_ip_address: NextHop ip address. + :type next_hop_ip_address: str + """ + + _attribute_map = { + 'address_prefixes': {'key': 'addressPrefixes', 'type': '[str]'}, + 'next_hop_ip_address': {'key': 'nextHopIpAddress', 'type': 'str'}, + } + + def __init__(self, *, address_prefixes=None, next_hop_ip_address: str=None, **kwargs) -> None: + super(VirtualHubRoute, self).__init__(**kwargs) + self.address_prefixes = address_prefixes + self.next_hop_ip_address = next_hop_ip_address + + +class VirtualHubRouteTable(Model): + """VirtualHub route table. + + :param routes: List of all routes. + :type routes: list[~azure.mgmt.network.v2019_09_01.models.VirtualHubRoute] + """ + + _attribute_map = { + 'routes': {'key': 'routes', 'type': '[VirtualHubRoute]'}, + } + + def __init__(self, *, routes=None, **kwargs) -> None: + super(VirtualHubRouteTable, self).__init__(**kwargs) + self.routes = routes + + +class VirtualHubRouteTableV2(SubResource): + """VirtualHubRouteTableV2 Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param routes: List of all routes. + :type routes: + list[~azure.mgmt.network.v2019_09_01.models.VirtualHubRouteV2] + :param attached_connections: List of all connections attached to this + route table v2. + :type attached_connections: list[str] + :ivar provisioning_state: The provisioning state of the virtual hub route + table v2 resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'routes': {'key': 'properties.routes', 'type': '[VirtualHubRouteV2]'}, + 'attached_connections': {'key': 'properties.attachedConnections', 'type': '[str]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, routes=None, attached_connections=None, name: str=None, **kwargs) -> None: + super(VirtualHubRouteTableV2, self).__init__(id=id, **kwargs) + self.routes = routes + self.attached_connections = attached_connections + self.provisioning_state = None + self.name = name + self.etag = None + + +class VirtualHubRouteV2(Model): + """VirtualHubRouteTableV2 route. + + :param destination_type: The type of destinations + :type destination_type: str + :param destinations: List of all destinations. + :type destinations: list[str] + :param next_hop_type: The type of next hops + :type next_hop_type: str + :param next_hops: NextHops ip address. + :type next_hops: list[str] + """ + + _attribute_map = { + 'destination_type': {'key': 'destinationType', 'type': 'str'}, + 'destinations': {'key': 'destinations', 'type': '[str]'}, + 'next_hop_type': {'key': 'nextHopType', 'type': 'str'}, + 'next_hops': {'key': 'nextHops', 'type': '[str]'}, + } + + def __init__(self, *, destination_type: str=None, destinations=None, next_hop_type: str=None, next_hops=None, **kwargs) -> None: + super(VirtualHubRouteV2, self).__init__(**kwargs) + self.destination_type = destination_type + self.destinations = destinations + self.next_hop_type = next_hop_type + self.next_hops = next_hops + + +class VirtualNetwork(Resource): + """Virtual Network resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param address_space: The AddressSpace that contains an array of IP + address ranges that can be used by subnets. + :type address_space: ~azure.mgmt.network.v2019_09_01.models.AddressSpace + :param dhcp_options: The dhcpOptions that contains an array of DNS servers + available to VMs deployed in the virtual network. + :type dhcp_options: ~azure.mgmt.network.v2019_09_01.models.DhcpOptions + :param subnets: A list of subnets in a Virtual Network. + :type subnets: list[~azure.mgmt.network.v2019_09_01.models.Subnet] + :param virtual_network_peerings: A list of peerings in a Virtual Network. + :type virtual_network_peerings: + list[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkPeering] + :ivar resource_guid: The resourceGuid property of the Virtual Network + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the virtual network + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param enable_ddos_protection: 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. Default value: False . + :type enable_ddos_protection: bool + :param enable_vm_protection: Indicates if VM protection is enabled for all + the subnets in the virtual network. Default value: False . + :type enable_vm_protection: bool + :param ddos_protection_plan: The DDoS protection plan associated with the + virtual network. + :type ddos_protection_plan: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param bgp_communities: Bgp Communities sent over ExpressRoute with each + route corresponding to a prefix in this VNET. + :type bgp_communities: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkBgpCommunities + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'address_space': {'key': 'properties.addressSpace', 'type': 'AddressSpace'}, + 'dhcp_options': {'key': 'properties.dhcpOptions', 'type': 'DhcpOptions'}, + 'subnets': {'key': 'properties.subnets', 'type': '[Subnet]'}, + 'virtual_network_peerings': {'key': 'properties.virtualNetworkPeerings', 'type': '[VirtualNetworkPeering]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'enable_ddos_protection': {'key': 'properties.enableDdosProtection', 'type': 'bool'}, + 'enable_vm_protection': {'key': 'properties.enableVmProtection', 'type': 'bool'}, + 'ddos_protection_plan': {'key': 'properties.ddosProtectionPlan', 'type': 'SubResource'}, + 'bgp_communities': {'key': 'properties.bgpCommunities', 'type': 'VirtualNetworkBgpCommunities'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, address_space=None, dhcp_options=None, subnets=None, virtual_network_peerings=None, enable_ddos_protection: bool=False, enable_vm_protection: bool=False, ddos_protection_plan=None, bgp_communities=None, **kwargs) -> None: + super(VirtualNetwork, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.address_space = address_space + self.dhcp_options = dhcp_options + self.subnets = subnets + self.virtual_network_peerings = virtual_network_peerings + self.resource_guid = None + self.provisioning_state = None + self.enable_ddos_protection = enable_ddos_protection + self.enable_vm_protection = enable_vm_protection + self.ddos_protection_plan = ddos_protection_plan + self.bgp_communities = bgp_communities + self.etag = None + + +class VirtualNetworkBgpCommunities(Model): + """Bgp Communities sent over ExpressRoute with each route corresponding to a + prefix in this VNET. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param virtual_network_community: Required. The BGP community associated + with the virtual network + :type virtual_network_community: str + :ivar regional_community: The BGP community associated with the region of + the virtual network + :vartype regional_community: str + """ + + _validation = { + 'virtual_network_community': {'required': True}, + 'regional_community': {'readonly': True}, + } + + _attribute_map = { + 'virtual_network_community': {'key': 'virtualNetworkCommunity', 'type': 'str'}, + 'regional_community': {'key': 'regionalCommunity', 'type': 'str'}, + } + + def __init__(self, *, virtual_network_community: str, **kwargs) -> None: + super(VirtualNetworkBgpCommunities, self).__init__(**kwargs) + self.virtual_network_community = virtual_network_community + self.regional_community = None + + +class VirtualNetworkConnectionGatewayReference(Model): + """A reference to VirtualNetworkGateway or LocalNetworkGateway resource. + + All required parameters must be populated in order to send to Azure. + + :param id: Required. The ID of VirtualNetworkGateway or + LocalNetworkGateway resource. + :type id: str + """ + + _validation = { + 'id': {'required': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + } + + def __init__(self, *, id: str, **kwargs) -> None: + super(VirtualNetworkConnectionGatewayReference, self).__init__(**kwargs) + self.id = id + + +class VirtualNetworkGateway(Resource): + """A common class for general resource information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param ip_configurations: IP configurations for virtual network gateway. + :type ip_configurations: + list[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayIPConfiguration] + :param gateway_type: The type of this virtual network gateway. Possible + values include: 'Vpn', 'ExpressRoute' + :type gateway_type: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayType + :param vpn_type: The type of this virtual network gateway. Possible values + include: 'PolicyBased', 'RouteBased' + :type vpn_type: str or ~azure.mgmt.network.v2019_09_01.models.VpnType + :param vpn_gateway_generation: The generation for this + VirtualNetworkGateway. Must be None if gatewayType is not VPN. Possible + values include: 'None', 'Generation1', 'Generation2' + :type vpn_gateway_generation: str or + ~azure.mgmt.network.v2019_09_01.models.VpnGatewayGeneration + :param enable_bgp: Whether BGP is enabled for this virtual network gateway + or not. + :type enable_bgp: bool + :param active_active: ActiveActive flag. + :type active_active: bool + :param gateway_default_site: The reference of the LocalNetworkGateway + resource which represents local network site having default routes. Assign + Null value in case of removing existing default site setting. + :type gateway_default_site: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param sku: The reference of the VirtualNetworkGatewaySku resource which + represents the SKU selected for Virtual network gateway. + :type sku: ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewaySku + :param vpn_client_configuration: The reference of the + VpnClientConfiguration resource which represents the P2S VpnClient + configurations. + :type vpn_client_configuration: + ~azure.mgmt.network.v2019_09_01.models.VpnClientConfiguration + :param bgp_settings: Virtual network gateway's BGP speaker settings. + :type bgp_settings: ~azure.mgmt.network.v2019_09_01.models.BgpSettings + :param custom_routes: The reference of the address space resource which + represents the custom routes address space specified by the customer for + virtual network gateway and VpnClient. + :type custom_routes: ~azure.mgmt.network.v2019_09_01.models.AddressSpace + :ivar resource_guid: The resource GUID property of the virtual network + gateway resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the virtual network + gateway resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param enable_dns_forwarding: Whether dns forwarding is enabled or not. + :type enable_dns_forwarding: bool + :ivar inbound_dns_forwarding_endpoint: The IP address allocated by the + gateway to which dns requests can be sent. + :vartype inbound_dns_forwarding_endpoint: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'inbound_dns_forwarding_endpoint': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'ip_configurations': {'key': 'properties.ipConfigurations', 'type': '[VirtualNetworkGatewayIPConfiguration]'}, + 'gateway_type': {'key': 'properties.gatewayType', 'type': 'str'}, + 'vpn_type': {'key': 'properties.vpnType', 'type': 'str'}, + 'vpn_gateway_generation': {'key': 'properties.vpnGatewayGeneration', 'type': 'str'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'active_active': {'key': 'properties.activeActive', 'type': 'bool'}, + 'gateway_default_site': {'key': 'properties.gatewayDefaultSite', 'type': 'SubResource'}, + 'sku': {'key': 'properties.sku', 'type': 'VirtualNetworkGatewaySku'}, + 'vpn_client_configuration': {'key': 'properties.vpnClientConfiguration', 'type': 'VpnClientConfiguration'}, + 'bgp_settings': {'key': 'properties.bgpSettings', 'type': 'BgpSettings'}, + 'custom_routes': {'key': 'properties.customRoutes', 'type': 'AddressSpace'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'enable_dns_forwarding': {'key': 'properties.enableDnsForwarding', 'type': 'bool'}, + 'inbound_dns_forwarding_endpoint': {'key': 'properties.inboundDnsForwardingEndpoint', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, ip_configurations=None, gateway_type=None, vpn_type=None, vpn_gateway_generation=None, enable_bgp: bool=None, active_active: bool=None, gateway_default_site=None, sku=None, vpn_client_configuration=None, bgp_settings=None, custom_routes=None, enable_dns_forwarding: bool=None, **kwargs) -> None: + super(VirtualNetworkGateway, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.ip_configurations = ip_configurations + self.gateway_type = gateway_type + self.vpn_type = vpn_type + self.vpn_gateway_generation = vpn_gateway_generation + self.enable_bgp = enable_bgp + self.active_active = active_active + self.gateway_default_site = gateway_default_site + self.sku = sku + self.vpn_client_configuration = vpn_client_configuration + self.bgp_settings = bgp_settings + self.custom_routes = custom_routes + self.resource_guid = None + self.provisioning_state = None + self.enable_dns_forwarding = enable_dns_forwarding + self.inbound_dns_forwarding_endpoint = None + self.etag = None + + +class VirtualNetworkGatewayConnection(Resource): + """A common class for general resource information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param authorization_key: The authorizationKey. + :type authorization_key: str + :param virtual_network_gateway1: Required. The reference to virtual + network gateway resource. + :type virtual_network_gateway1: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGateway + :param virtual_network_gateway2: The reference to virtual network gateway + resource. + :type virtual_network_gateway2: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGateway + :param local_network_gateway2: The reference to local network gateway + resource. + :type local_network_gateway2: + ~azure.mgmt.network.v2019_09_01.models.LocalNetworkGateway + :param connection_type: Required. Gateway connection type. Possible values + include: 'IPsec', 'Vnet2Vnet', 'ExpressRoute', 'VPNClient' + :type connection_type: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionType + :param connection_protocol: Connection protocol used for this connection. + Possible values include: 'IKEv2', 'IKEv1' + :type connection_protocol: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionProtocol + :param routing_weight: The routing weight. + :type routing_weight: int + :param shared_key: The IPSec shared key. + :type shared_key: str + :ivar connection_status: Virtual Network Gateway connection status. + Possible values include: 'Unknown', 'Connecting', 'Connected', + 'NotConnected' + :vartype connection_status: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionStatus + :ivar tunnel_connection_status: Collection of all tunnels' connection + health status. + :vartype tunnel_connection_status: + list[~azure.mgmt.network.v2019_09_01.models.TunnelConnectionHealth] + :ivar egress_bytes_transferred: The egress bytes transferred in this + connection. + :vartype egress_bytes_transferred: long + :ivar ingress_bytes_transferred: The ingress bytes transferred in this + connection. + :vartype ingress_bytes_transferred: long + :param peer: The reference to peerings resource. + :type peer: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param enable_bgp: EnableBgp flag. + :type enable_bgp: bool + :param use_policy_based_traffic_selectors: Enable policy-based traffic + selectors. + :type use_policy_based_traffic_selectors: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2019_09_01.models.IpsecPolicy] + :param traffic_selector_policies: The Traffic Selector Policies to be + considered by this connection. + :type traffic_selector_policies: + list[~azure.mgmt.network.v2019_09_01.models.TrafficSelectorPolicy] + :ivar resource_guid: The resource GUID property of the virtual network + gateway connection resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the virtual network + gateway connection resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param express_route_gateway_bypass: Bypass ExpressRoute Gateway for data + forwarding. + :type express_route_gateway_bypass: bool + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_network_gateway1': {'required': True}, + 'connection_type': {'required': True}, + 'connection_status': {'readonly': True}, + 'tunnel_connection_status': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'virtual_network_gateway1': {'key': 'properties.virtualNetworkGateway1', 'type': 'VirtualNetworkGateway'}, + 'virtual_network_gateway2': {'key': 'properties.virtualNetworkGateway2', 'type': 'VirtualNetworkGateway'}, + 'local_network_gateway2': {'key': 'properties.localNetworkGateway2', 'type': 'LocalNetworkGateway'}, + 'connection_type': {'key': 'properties.connectionType', 'type': 'str'}, + 'connection_protocol': {'key': 'properties.connectionProtocol', 'type': 'str'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'tunnel_connection_status': {'key': 'properties.tunnelConnectionStatus', 'type': '[TunnelConnectionHealth]'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'peer': {'key': 'properties.peer', 'type': 'SubResource'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'use_policy_based_traffic_selectors': {'key': 'properties.usePolicyBasedTrafficSelectors', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'traffic_selector_policies': {'key': 'properties.trafficSelectorPolicies', 'type': '[TrafficSelectorPolicy]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'express_route_gateway_bypass': {'key': 'properties.expressRouteGatewayBypass', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, virtual_network_gateway1, connection_type, id: str=None, location: str=None, tags=None, authorization_key: str=None, virtual_network_gateway2=None, local_network_gateway2=None, connection_protocol=None, routing_weight: int=None, shared_key: str=None, peer=None, enable_bgp: bool=None, use_policy_based_traffic_selectors: bool=None, ipsec_policies=None, traffic_selector_policies=None, express_route_gateway_bypass: bool=None, **kwargs) -> None: + super(VirtualNetworkGatewayConnection, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.authorization_key = authorization_key + self.virtual_network_gateway1 = virtual_network_gateway1 + self.virtual_network_gateway2 = virtual_network_gateway2 + self.local_network_gateway2 = local_network_gateway2 + self.connection_type = connection_type + self.connection_protocol = connection_protocol + self.routing_weight = routing_weight + self.shared_key = shared_key + self.connection_status = None + self.tunnel_connection_status = None + self.egress_bytes_transferred = None + self.ingress_bytes_transferred = None + self.peer = peer + self.enable_bgp = enable_bgp + self.use_policy_based_traffic_selectors = use_policy_based_traffic_selectors + self.ipsec_policies = ipsec_policies + self.traffic_selector_policies = traffic_selector_policies + self.resource_guid = None + self.provisioning_state = None + self.express_route_gateway_bypass = express_route_gateway_bypass + self.etag = None + + +class VirtualNetworkGatewayConnectionListEntity(Resource): + """A common class for general resource information. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param authorization_key: The authorizationKey. + :type authorization_key: str + :param virtual_network_gateway1: Required. The reference to virtual + network gateway resource. + :type virtual_network_gateway1: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkConnectionGatewayReference + :param virtual_network_gateway2: The reference to virtual network gateway + resource. + :type virtual_network_gateway2: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkConnectionGatewayReference + :param local_network_gateway2: The reference to local network gateway + resource. + :type local_network_gateway2: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkConnectionGatewayReference + :param connection_type: Required. Gateway connection type. Possible values + include: 'IPsec', 'Vnet2Vnet', 'ExpressRoute', 'VPNClient' + :type connection_type: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionType + :param connection_protocol: Connection protocol used for this connection. + Possible values include: 'IKEv2', 'IKEv1' + :type connection_protocol: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionProtocol + :param routing_weight: The routing weight. + :type routing_weight: int + :param shared_key: The IPSec shared key. + :type shared_key: str + :ivar connection_status: Virtual Network Gateway connection status. + Possible values include: 'Unknown', 'Connecting', 'Connected', + 'NotConnected' + :vartype connection_status: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionStatus + :ivar tunnel_connection_status: Collection of all tunnels' connection + health status. + :vartype tunnel_connection_status: + list[~azure.mgmt.network.v2019_09_01.models.TunnelConnectionHealth] + :ivar egress_bytes_transferred: The egress bytes transferred in this + connection. + :vartype egress_bytes_transferred: long + :ivar ingress_bytes_transferred: The ingress bytes transferred in this + connection. + :vartype ingress_bytes_transferred: long + :param peer: The reference to peerings resource. + :type peer: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param enable_bgp: EnableBgp flag. + :type enable_bgp: bool + :param use_policy_based_traffic_selectors: Enable policy-based traffic + selectors. + :type use_policy_based_traffic_selectors: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2019_09_01.models.IpsecPolicy] + :param traffic_selector_policies: The Traffic Selector Policies to be + considered by this connection. + :type traffic_selector_policies: + list[~azure.mgmt.network.v2019_09_01.models.TrafficSelectorPolicy] + :ivar resource_guid: The resource GUID property of the virtual network + gateway connection resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the virtual network + gateway connection resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param express_route_gateway_bypass: Bypass ExpressRoute Gateway for data + forwarding. + :type express_route_gateway_bypass: bool + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_network_gateway1': {'required': True}, + 'connection_type': {'required': True}, + 'connection_status': {'readonly': True}, + 'tunnel_connection_status': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'authorization_key': {'key': 'properties.authorizationKey', 'type': 'str'}, + 'virtual_network_gateway1': {'key': 'properties.virtualNetworkGateway1', 'type': 'VirtualNetworkConnectionGatewayReference'}, + 'virtual_network_gateway2': {'key': 'properties.virtualNetworkGateway2', 'type': 'VirtualNetworkConnectionGatewayReference'}, + 'local_network_gateway2': {'key': 'properties.localNetworkGateway2', 'type': 'VirtualNetworkConnectionGatewayReference'}, + 'connection_type': {'key': 'properties.connectionType', 'type': 'str'}, + 'connection_protocol': {'key': 'properties.connectionProtocol', 'type': 'str'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'tunnel_connection_status': {'key': 'properties.tunnelConnectionStatus', 'type': '[TunnelConnectionHealth]'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'peer': {'key': 'properties.peer', 'type': 'SubResource'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'use_policy_based_traffic_selectors': {'key': 'properties.usePolicyBasedTrafficSelectors', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'traffic_selector_policies': {'key': 'properties.trafficSelectorPolicies', 'type': '[TrafficSelectorPolicy]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'express_route_gateway_bypass': {'key': 'properties.expressRouteGatewayBypass', 'type': 'bool'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, virtual_network_gateway1, connection_type, id: str=None, location: str=None, tags=None, authorization_key: str=None, virtual_network_gateway2=None, local_network_gateway2=None, connection_protocol=None, routing_weight: int=None, shared_key: str=None, peer=None, enable_bgp: bool=None, use_policy_based_traffic_selectors: bool=None, ipsec_policies=None, traffic_selector_policies=None, express_route_gateway_bypass: bool=None, **kwargs) -> None: + super(VirtualNetworkGatewayConnectionListEntity, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.authorization_key = authorization_key + self.virtual_network_gateway1 = virtual_network_gateway1 + self.virtual_network_gateway2 = virtual_network_gateway2 + self.local_network_gateway2 = local_network_gateway2 + self.connection_type = connection_type + self.connection_protocol = connection_protocol + self.routing_weight = routing_weight + self.shared_key = shared_key + self.connection_status = None + self.tunnel_connection_status = None + self.egress_bytes_transferred = None + self.ingress_bytes_transferred = None + self.peer = peer + self.enable_bgp = enable_bgp + self.use_policy_based_traffic_selectors = use_policy_based_traffic_selectors + self.ipsec_policies = ipsec_policies + self.traffic_selector_policies = traffic_selector_policies + self.resource_guid = None + self.provisioning_state = None + self.express_route_gateway_bypass = express_route_gateway_bypass + self.etag = None + + +class VirtualNetworkGatewayIPConfiguration(SubResource): + """IP configuration for virtual network gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param private_ip_allocation_method: The private IP address allocation + method. Possible values include: 'Static', 'Dynamic' + :type private_ip_allocation_method: str or + ~azure.mgmt.network.v2019_09_01.models.IPAllocationMethod + :param subnet: The reference of the subnet resource. + :type subnet: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param public_ip_address: The reference of the public IP resource. + :type public_ip_address: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar provisioning_state: The provisioning state of the virtual network + gateway IP configuration resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'private_ip_allocation_method': {'key': 'properties.privateIPAllocationMethod', 'type': 'str'}, + 'subnet': {'key': 'properties.subnet', 'type': 'SubResource'}, + 'public_ip_address': {'key': 'properties.publicIPAddress', 'type': 'SubResource'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, private_ip_allocation_method=None, subnet=None, public_ip_address=None, name: str=None, **kwargs) -> None: + super(VirtualNetworkGatewayIPConfiguration, self).__init__(id=id, **kwargs) + self.private_ip_allocation_method = private_ip_allocation_method + self.subnet = subnet + self.public_ip_address = public_ip_address + self.provisioning_state = None + self.name = name + self.etag = None + + +class VirtualNetworkGatewaySku(Model): + """VirtualNetworkGatewaySku details. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param name: Gateway SKU name. Possible values include: 'Basic', + 'HighPerformance', 'Standard', 'UltraPerformance', 'VpnGw1', 'VpnGw2', + 'VpnGw3', 'VpnGw4', 'VpnGw5', 'VpnGw1AZ', 'VpnGw2AZ', 'VpnGw3AZ', + 'VpnGw4AZ', 'VpnGw5AZ', 'ErGw1AZ', 'ErGw2AZ', 'ErGw3AZ' + :type name: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewaySkuName + :param tier: Gateway SKU tier. Possible values include: 'Basic', + 'HighPerformance', 'Standard', 'UltraPerformance', 'VpnGw1', 'VpnGw2', + 'VpnGw3', 'VpnGw4', 'VpnGw5', 'VpnGw1AZ', 'VpnGw2AZ', 'VpnGw3AZ', + 'VpnGw4AZ', 'VpnGw5AZ', 'ErGw1AZ', 'ErGw2AZ', 'ErGw3AZ' + :type tier: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewaySkuTier + :ivar capacity: The capacity. + :vartype capacity: int + """ + + _validation = { + 'capacity': {'readonly': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'tier': {'key': 'tier', 'type': 'str'}, + 'capacity': {'key': 'capacity', 'type': 'int'}, + } + + def __init__(self, *, name=None, tier=None, **kwargs) -> None: + super(VirtualNetworkGatewaySku, self).__init__(**kwargs) + self.name = name + self.tier = tier + self.capacity = None + + +class VirtualNetworkPeering(SubResource): + """Peerings in a virtual network resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param allow_virtual_network_access: Whether the VMs in the local virtual + network space would be able to access the VMs in remote virtual network + space. + :type allow_virtual_network_access: bool + :param allow_forwarded_traffic: Whether the forwarded traffic from the VMs + in the local virtual network will be allowed/disallowed in remote virtual + network. + :type allow_forwarded_traffic: bool + :param allow_gateway_transit: If gateway links can be used in remote + virtual networking to link to this virtual network. + :type allow_gateway_transit: bool + :param use_remote_gateways: If remote gateways can be used on this virtual + network. If the flag is set to true, and allowGatewayTransit on remote + peering is also true, virtual network will use gateways of remote virtual + network for transit. Only one peering can have this flag set to true. This + flag cannot be set if virtual network already has a gateway. + :type use_remote_gateways: bool + :param remote_virtual_network: The reference of the remote virtual + network. The remote virtual network can be in the same or different region + (preview). See here to register for the preview and learn more + (https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-create-peering). + :type remote_virtual_network: + ~azure.mgmt.network.v2019_09_01.models.SubResource + :param remote_address_space: The reference of the remote virtual network + address space. + :type remote_address_space: + ~azure.mgmt.network.v2019_09_01.models.AddressSpace + :param peering_state: The status of the virtual network peering. Possible + values include: 'Initiated', 'Connected', 'Disconnected' + :type peering_state: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkPeeringState + :ivar provisioning_state: The provisioning state of the virtual network + peering resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'allow_virtual_network_access': {'key': 'properties.allowVirtualNetworkAccess', 'type': 'bool'}, + 'allow_forwarded_traffic': {'key': 'properties.allowForwardedTraffic', 'type': 'bool'}, + 'allow_gateway_transit': {'key': 'properties.allowGatewayTransit', 'type': 'bool'}, + 'use_remote_gateways': {'key': 'properties.useRemoteGateways', 'type': 'bool'}, + 'remote_virtual_network': {'key': 'properties.remoteVirtualNetwork', 'type': 'SubResource'}, + 'remote_address_space': {'key': 'properties.remoteAddressSpace', 'type': 'AddressSpace'}, + 'peering_state': {'key': 'properties.peeringState', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, allow_virtual_network_access: bool=None, allow_forwarded_traffic: bool=None, allow_gateway_transit: bool=None, use_remote_gateways: bool=None, remote_virtual_network=None, remote_address_space=None, peering_state=None, name: str=None, **kwargs) -> None: + super(VirtualNetworkPeering, self).__init__(id=id, **kwargs) + self.allow_virtual_network_access = allow_virtual_network_access + self.allow_forwarded_traffic = allow_forwarded_traffic + self.allow_gateway_transit = allow_gateway_transit + self.use_remote_gateways = use_remote_gateways + self.remote_virtual_network = remote_virtual_network + self.remote_address_space = remote_address_space + self.peering_state = peering_state + self.provisioning_state = None + self.name = name + self.etag = None + + +class VirtualNetworkTap(Resource): + """Virtual Network Tap resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :ivar network_interface_tap_configurations: Specifies the list of resource + IDs for the network interface IP configuration that needs to be tapped. + :vartype network_interface_tap_configurations: + list[~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceTapConfiguration] + :ivar resource_guid: The resource GUID property of the virtual network tap + resource. + :vartype resource_guid: str + :ivar provisioning_state: The provisioning state of the virtual network + tap resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param destination_network_interface_ip_configuration: The reference to + the private IP Address of the collector nic that will receive the tap. + :type destination_network_interface_ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfiguration + :param destination_load_balancer_front_end_ip_configuration: The reference + to the private IP address on the internal Load Balancer that will receive + the tap. + :type destination_load_balancer_front_end_ip_configuration: + ~azure.mgmt.network.v2019_09_01.models.FrontendIPConfiguration + :param destination_port: The VXLAN destination port that will receive the + tapped traffic. + :type destination_port: int + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'network_interface_tap_configurations': {'readonly': True}, + 'resource_guid': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'network_interface_tap_configurations': {'key': 'properties.networkInterfaceTapConfigurations', 'type': '[NetworkInterfaceTapConfiguration]'}, + 'resource_guid': {'key': 'properties.resourceGuid', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'destination_network_interface_ip_configuration': {'key': 'properties.destinationNetworkInterfaceIPConfiguration', 'type': 'NetworkInterfaceIPConfiguration'}, + 'destination_load_balancer_front_end_ip_configuration': {'key': 'properties.destinationLoadBalancerFrontEndIPConfiguration', 'type': 'FrontendIPConfiguration'}, + 'destination_port': {'key': 'properties.destinationPort', 'type': 'int'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, destination_network_interface_ip_configuration=None, destination_load_balancer_front_end_ip_configuration=None, destination_port: int=None, **kwargs) -> None: + super(VirtualNetworkTap, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.network_interface_tap_configurations = None + self.resource_guid = None + self.provisioning_state = None + self.destination_network_interface_ip_configuration = destination_network_interface_ip_configuration + self.destination_load_balancer_front_end_ip_configuration = destination_load_balancer_front_end_ip_configuration + self.destination_port = destination_port + self.etag = None + + +class VirtualNetworkUsage(Model): + """Usage details for subnet. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar current_value: Indicates number of IPs used from the Subnet. + :vartype current_value: float + :ivar id: Subnet identifier. + :vartype id: str + :ivar limit: Indicates the size of the subnet. + :vartype limit: float + :ivar name: The name containing common and localized value for usage. + :vartype name: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkUsageName + :ivar unit: Usage units. Returns 'Count'. + :vartype unit: str + """ + + _validation = { + 'current_value': {'readonly': True}, + 'id': {'readonly': True}, + 'limit': {'readonly': True}, + 'name': {'readonly': True}, + 'unit': {'readonly': True}, + } + + _attribute_map = { + 'current_value': {'key': 'currentValue', 'type': 'float'}, + 'id': {'key': 'id', 'type': 'str'}, + 'limit': {'key': 'limit', 'type': 'float'}, + 'name': {'key': 'name', 'type': 'VirtualNetworkUsageName'}, + 'unit': {'key': 'unit', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(VirtualNetworkUsage, self).__init__(**kwargs) + self.current_value = None + self.id = None + self.limit = None + self.name = None + self.unit = None + + +class VirtualNetworkUsageName(Model): + """Usage strings container. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar localized_value: Localized subnet size and usage string. + :vartype localized_value: str + :ivar value: Subnet size and usage string. + :vartype value: str + """ + + _validation = { + 'localized_value': {'readonly': True}, + 'value': {'readonly': True}, + } + + _attribute_map = { + 'localized_value': {'key': 'localizedValue', 'type': 'str'}, + 'value': {'key': 'value', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(VirtualNetworkUsageName, self).__init__(**kwargs) + self.localized_value = None + self.value = None + + +class VirtualRouter(Resource): + """VirtualRouter Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_router_asn: VirtualRouter ASN. + :type virtual_router_asn: long + :param virtual_router_ips: VirtualRouter IPs + :type virtual_router_ips: list[str] + :param hosted_subnet: The Subnet on which VirtualRouter is hosted. + :type hosted_subnet: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param hosted_gateway: The Gateway on which VirtualRouter is hosted. + :type hosted_gateway: ~azure.mgmt.network.v2019_09_01.models.SubResource + :ivar peerings: List of references to VirtualRouterPeerings + :vartype peerings: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar provisioning_state: The provisioning state of the resource. Possible + values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_router_asn': {'maximum': 4294967295, 'minimum': 0}, + 'peerings': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_router_asn': {'key': 'properties.virtualRouterAsn', 'type': 'long'}, + 'virtual_router_ips': {'key': 'properties.virtualRouterIps', 'type': '[str]'}, + 'hosted_subnet': {'key': 'properties.hostedSubnet', 'type': 'SubResource'}, + 'hosted_gateway': {'key': 'properties.hostedGateway', 'type': 'SubResource'}, + 'peerings': {'key': 'properties.peerings', 'type': '[SubResource]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, virtual_router_asn: int=None, virtual_router_ips=None, hosted_subnet=None, hosted_gateway=None, **kwargs) -> None: + super(VirtualRouter, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.virtual_router_asn = virtual_router_asn + self.virtual_router_ips = virtual_router_ips + self.hosted_subnet = hosted_subnet + self.hosted_gateway = hosted_gateway + self.peerings = None + self.provisioning_state = None + self.etag = None + + +class VirtualRouterPeering(SubResource): + """Virtual Router Peering resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param peer_asn: Peer ASN. + :type peer_asn: long + :param peer_ip: Peer IP. + :type peer_ip: str + :ivar provisioning_state: The provisioning state of the resource. Possible + values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: Gets name of the peering unique to VirtualRouter. This name + can be used to access the resource. + :type name: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + :ivar type: Peering type. + :vartype type: str + """ + + _validation = { + 'peer_asn': {'maximum': 4294967295, 'minimum': 0}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'peer_asn': {'key': 'properties.peerAsn', 'type': 'long'}, + 'peer_ip': {'key': 'properties.peerIp', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, peer_asn: int=None, peer_ip: str=None, name: str=None, **kwargs) -> None: + super(VirtualRouterPeering, self).__init__(id=id, **kwargs) + self.peer_asn = peer_asn + self.peer_ip = peer_ip + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class VirtualWAN(Resource): + """VirtualWAN Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param disable_vpn_encryption: Vpn encryption to be disabled or not. + :type disable_vpn_encryption: bool + :ivar virtual_hubs: List of VirtualHubs in the VirtualWAN. + :vartype virtual_hubs: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar vpn_sites: List of VpnSites in the VirtualWAN. + :vartype vpn_sites: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :param allow_branch_to_branch_traffic: True if branch to branch traffic is + allowed. + :type allow_branch_to_branch_traffic: bool + :param allow_vnet_to_vnet_traffic: True if Vnet to Vnet traffic is + allowed. + :type allow_vnet_to_vnet_traffic: bool + :param office365_local_breakout_category: The office local breakout + category. Possible values include: 'Optimize', 'OptimizeAndAllow', 'All', + 'None' + :type office365_local_breakout_category: str or + ~azure.mgmt.network.v2019_09_01.models.OfficeTrafficCategory + :ivar provisioning_state: The provisioning state of the virtual WAN + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param virtual_wan_type: The type of the VirtualWAN. + :type virtual_wan_type: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'virtual_hubs': {'readonly': True}, + 'vpn_sites': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'disable_vpn_encryption': {'key': 'properties.disableVpnEncryption', 'type': 'bool'}, + 'virtual_hubs': {'key': 'properties.virtualHubs', 'type': '[SubResource]'}, + 'vpn_sites': {'key': 'properties.vpnSites', 'type': '[SubResource]'}, + 'allow_branch_to_branch_traffic': {'key': 'properties.allowBranchToBranchTraffic', 'type': 'bool'}, + 'allow_vnet_to_vnet_traffic': {'key': 'properties.allowVnetToVnetTraffic', 'type': 'bool'}, + 'office365_local_breakout_category': {'key': 'properties.office365LocalBreakoutCategory', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'virtual_wan_type': {'key': 'properties.type', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, disable_vpn_encryption: bool=None, allow_branch_to_branch_traffic: bool=None, allow_vnet_to_vnet_traffic: bool=None, office365_local_breakout_category=None, virtual_wan_type: str=None, **kwargs) -> None: + super(VirtualWAN, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.disable_vpn_encryption = disable_vpn_encryption + self.virtual_hubs = None + self.vpn_sites = None + self.allow_branch_to_branch_traffic = allow_branch_to_branch_traffic + self.allow_vnet_to_vnet_traffic = allow_vnet_to_vnet_traffic + self.office365_local_breakout_category = office365_local_breakout_category + self.provisioning_state = None + self.virtual_wan_type = virtual_wan_type + self.etag = None + + +class VirtualWanSecurityProvider(Model): + """Collection of SecurityProviders. + + :param name: Name of the security provider. + :type name: str + :param url: Url of the security provider. + :type url: str + :param type: Name of the security provider. Possible values include: + 'External', 'Native' + :type type: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualWanSecurityProviderType + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'url': {'key': 'url', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, url: str=None, type=None, **kwargs) -> None: + super(VirtualWanSecurityProvider, self).__init__(**kwargs) + self.name = name + self.url = url + self.type = type + + +class VirtualWanSecurityProviders(Model): + """Collection of SecurityProviders. + + :param supported_providers: List of VirtualWAN security providers. + :type supported_providers: + list[~azure.mgmt.network.v2019_09_01.models.VirtualWanSecurityProvider] + """ + + _attribute_map = { + 'supported_providers': {'key': 'supportedProviders', 'type': '[VirtualWanSecurityProvider]'}, + } + + def __init__(self, *, supported_providers=None, **kwargs) -> None: + super(VirtualWanSecurityProviders, self).__init__(**kwargs) + self.supported_providers = supported_providers + + +class VirtualWanVpnProfileParameters(Model): + """Virtual Wan Vpn profile parameters Vpn profile generation. + + :param vpn_server_configuration_resource_id: VpnServerConfiguration + partial resource uri with which VirtualWan is associated to. + :type vpn_server_configuration_resource_id: str + :param authentication_method: VPN client authentication method. Possible + values include: 'EAPTLS', 'EAPMSCHAPv2' + :type authentication_method: str or + ~azure.mgmt.network.v2019_09_01.models.AuthenticationMethod + """ + + _attribute_map = { + 'vpn_server_configuration_resource_id': {'key': 'vpnServerConfigurationResourceId', 'type': 'str'}, + 'authentication_method': {'key': 'authenticationMethod', 'type': 'str'}, + } + + def __init__(self, *, vpn_server_configuration_resource_id: str=None, authentication_method=None, **kwargs) -> None: + super(VirtualWanVpnProfileParameters, self).__init__(**kwargs) + self.vpn_server_configuration_resource_id = vpn_server_configuration_resource_id + self.authentication_method = authentication_method + + +class VpnClientConfiguration(Model): + """VpnClientConfiguration for P2S client. + + :param vpn_client_address_pool: The reference of the address space + resource which represents Address space for P2S VpnClient. + :type vpn_client_address_pool: + ~azure.mgmt.network.v2019_09_01.models.AddressSpace + :param vpn_client_root_certificates: VpnClientRootCertificate for virtual + network gateway. + :type vpn_client_root_certificates: + list[~azure.mgmt.network.v2019_09_01.models.VpnClientRootCertificate] + :param vpn_client_revoked_certificates: VpnClientRevokedCertificate for + Virtual network gateway. + :type vpn_client_revoked_certificates: + list[~azure.mgmt.network.v2019_09_01.models.VpnClientRevokedCertificate] + :param vpn_client_protocols: VpnClientProtocols for Virtual network + gateway. + :type vpn_client_protocols: list[str or + ~azure.mgmt.network.v2019_09_01.models.VpnClientProtocol] + :param vpn_client_ipsec_policies: VpnClientIpsecPolicies for virtual + network gateway P2S client. + :type vpn_client_ipsec_policies: + list[~azure.mgmt.network.v2019_09_01.models.IpsecPolicy] + :param radius_server_address: The radius server address property of the + VirtualNetworkGateway resource for vpn client connection. + :type radius_server_address: str + :param radius_server_secret: The radius secret property of the + VirtualNetworkGateway resource for vpn client connection. + :type radius_server_secret: str + :param aad_tenant: The AADTenant property of the VirtualNetworkGateway + resource for vpn client connection used for AAD authentication. + :type aad_tenant: str + :param aad_audience: The AADAudience property of the VirtualNetworkGateway + resource for vpn client connection used for AAD authentication. + :type aad_audience: str + :param aad_issuer: The AADIssuer property of the VirtualNetworkGateway + resource for vpn client connection used for AAD authentication. + :type aad_issuer: str + """ + + _attribute_map = { + 'vpn_client_address_pool': {'key': 'vpnClientAddressPool', 'type': 'AddressSpace'}, + 'vpn_client_root_certificates': {'key': 'vpnClientRootCertificates', 'type': '[VpnClientRootCertificate]'}, + 'vpn_client_revoked_certificates': {'key': 'vpnClientRevokedCertificates', 'type': '[VpnClientRevokedCertificate]'}, + 'vpn_client_protocols': {'key': 'vpnClientProtocols', 'type': '[str]'}, + 'vpn_client_ipsec_policies': {'key': 'vpnClientIpsecPolicies', 'type': '[IpsecPolicy]'}, + 'radius_server_address': {'key': 'radiusServerAddress', 'type': 'str'}, + 'radius_server_secret': {'key': 'radiusServerSecret', 'type': 'str'}, + 'aad_tenant': {'key': 'aadTenant', 'type': 'str'}, + 'aad_audience': {'key': 'aadAudience', 'type': 'str'}, + 'aad_issuer': {'key': 'aadIssuer', 'type': 'str'}, + } + + def __init__(self, *, vpn_client_address_pool=None, vpn_client_root_certificates=None, vpn_client_revoked_certificates=None, vpn_client_protocols=None, vpn_client_ipsec_policies=None, radius_server_address: str=None, radius_server_secret: str=None, aad_tenant: str=None, aad_audience: str=None, aad_issuer: str=None, **kwargs) -> None: + super(VpnClientConfiguration, self).__init__(**kwargs) + self.vpn_client_address_pool = vpn_client_address_pool + self.vpn_client_root_certificates = vpn_client_root_certificates + self.vpn_client_revoked_certificates = vpn_client_revoked_certificates + self.vpn_client_protocols = vpn_client_protocols + self.vpn_client_ipsec_policies = vpn_client_ipsec_policies + self.radius_server_address = radius_server_address + self.radius_server_secret = radius_server_secret + self.aad_tenant = aad_tenant + self.aad_audience = aad_audience + self.aad_issuer = aad_issuer + + +class VpnClientConnectionHealth(Model): + """VpnClientConnectionHealth properties. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar total_ingress_bytes_transferred: Total of the Ingress Bytes + Transferred in this P2S Vpn connection. + :vartype total_ingress_bytes_transferred: long + :ivar total_egress_bytes_transferred: Total of the Egress Bytes + Transferred in this connection. + :vartype total_egress_bytes_transferred: long + :param vpn_client_connections_count: The total of p2s vpn clients + connected at this time to this P2SVpnGateway. + :type vpn_client_connections_count: int + :param allocated_ip_addresses: List of allocated ip addresses to the + connected p2s vpn clients. + :type allocated_ip_addresses: list[str] + """ + + _validation = { + 'total_ingress_bytes_transferred': {'readonly': True}, + 'total_egress_bytes_transferred': {'readonly': True}, + } + + _attribute_map = { + 'total_ingress_bytes_transferred': {'key': 'totalIngressBytesTransferred', 'type': 'long'}, + 'total_egress_bytes_transferred': {'key': 'totalEgressBytesTransferred', 'type': 'long'}, + 'vpn_client_connections_count': {'key': 'vpnClientConnectionsCount', 'type': 'int'}, + 'allocated_ip_addresses': {'key': 'allocatedIpAddresses', 'type': '[str]'}, + } + + def __init__(self, *, vpn_client_connections_count: int=None, allocated_ip_addresses=None, **kwargs) -> None: + super(VpnClientConnectionHealth, self).__init__(**kwargs) + self.total_ingress_bytes_transferred = None + self.total_egress_bytes_transferred = None + self.vpn_client_connections_count = vpn_client_connections_count + self.allocated_ip_addresses = allocated_ip_addresses + + +class VpnClientConnectionHealthDetail(Model): + """VPN client connection health detail. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar vpn_connection_id: The vpn client Id. + :vartype vpn_connection_id: str + :ivar vpn_connection_duration: The duration time of a connected vpn + client. + :vartype vpn_connection_duration: long + :ivar vpn_connection_time: The start time of a connected vpn client. + :vartype vpn_connection_time: str + :ivar public_ip_address: The public Ip of a connected vpn client. + :vartype public_ip_address: str + :ivar private_ip_address: The assigned private Ip of a connected vpn + client. + :vartype private_ip_address: str + :ivar vpn_user_name: The user name of a connected vpn client. + :vartype vpn_user_name: str + :ivar max_bandwidth: The max band width. + :vartype max_bandwidth: long + :ivar egress_packets_transferred: The egress packets per second. + :vartype egress_packets_transferred: long + :ivar egress_bytes_transferred: The egress bytes per second. + :vartype egress_bytes_transferred: long + :ivar ingress_packets_transferred: The ingress packets per second. + :vartype ingress_packets_transferred: long + :ivar ingress_bytes_transferred: The ingress bytes per second. + :vartype ingress_bytes_transferred: long + :ivar max_packets_per_second: The max packets transferred per second. + :vartype max_packets_per_second: long + """ + + _validation = { + 'vpn_connection_id': {'readonly': True}, + 'vpn_connection_duration': {'readonly': True}, + 'vpn_connection_time': {'readonly': True}, + 'public_ip_address': {'readonly': True}, + 'private_ip_address': {'readonly': True}, + 'vpn_user_name': {'readonly': True}, + 'max_bandwidth': {'readonly': True}, + 'egress_packets_transferred': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'ingress_packets_transferred': {'readonly': True}, + 'ingress_bytes_transferred': {'readonly': True}, + 'max_packets_per_second': {'readonly': True}, + } + + _attribute_map = { + 'vpn_connection_id': {'key': 'vpnConnectionId', 'type': 'str'}, + 'vpn_connection_duration': {'key': 'vpnConnectionDuration', 'type': 'long'}, + 'vpn_connection_time': {'key': 'vpnConnectionTime', 'type': 'str'}, + 'public_ip_address': {'key': 'publicIpAddress', 'type': 'str'}, + 'private_ip_address': {'key': 'privateIpAddress', 'type': 'str'}, + 'vpn_user_name': {'key': 'vpnUserName', 'type': 'str'}, + 'max_bandwidth': {'key': 'maxBandwidth', 'type': 'long'}, + 'egress_packets_transferred': {'key': 'egressPacketsTransferred', 'type': 'long'}, + 'egress_bytes_transferred': {'key': 'egressBytesTransferred', 'type': 'long'}, + 'ingress_packets_transferred': {'key': 'ingressPacketsTransferred', 'type': 'long'}, + 'ingress_bytes_transferred': {'key': 'ingressBytesTransferred', 'type': 'long'}, + 'max_packets_per_second': {'key': 'maxPacketsPerSecond', 'type': 'long'}, + } + + def __init__(self, **kwargs) -> None: + super(VpnClientConnectionHealthDetail, self).__init__(**kwargs) + self.vpn_connection_id = None + self.vpn_connection_duration = None + self.vpn_connection_time = None + self.public_ip_address = None + self.private_ip_address = None + self.vpn_user_name = None + self.max_bandwidth = None + self.egress_packets_transferred = None + self.egress_bytes_transferred = None + self.ingress_packets_transferred = None + self.ingress_bytes_transferred = None + self.max_packets_per_second = None + + +class VpnClientConnectionHealthDetailListResult(Model): + """List of virtual network gateway vpn client connection health. + + :param value: List of vpn client connection health. + :type value: + list[~azure.mgmt.network.v2019_09_01.models.VpnClientConnectionHealthDetail] + """ + + _attribute_map = { + 'value': {'key': 'value', 'type': '[VpnClientConnectionHealthDetail]'}, + } + + def __init__(self, *, value=None, **kwargs) -> None: + super(VpnClientConnectionHealthDetailListResult, self).__init__(**kwargs) + self.value = value + + +class VpnClientIPsecParameters(Model): + """An IPSec parameters for a virtual network gateway P2S connection. + + All required parameters must be populated in order to send to Azure. + + :param sa_life_time_seconds: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) lifetime in seconds for P2S client. + :type sa_life_time_seconds: int + :param sa_data_size_kilobytes: Required. The IPSec Security Association + (also called Quick Mode or Phase 2 SA) payload size in KB for P2S client.. + :type sa_data_size_kilobytes: int + :param ipsec_encryption: Required. The IPSec encryption algorithm (IKE + phase 1). Possible values include: 'None', 'DES', 'DES3', 'AES128', + 'AES192', 'AES256', 'GCMAES128', 'GCMAES192', 'GCMAES256' + :type ipsec_encryption: str or + ~azure.mgmt.network.v2019_09_01.models.IpsecEncryption + :param ipsec_integrity: Required. The IPSec integrity algorithm (IKE phase + 1). Possible values include: 'MD5', 'SHA1', 'SHA256', 'GCMAES128', + 'GCMAES192', 'GCMAES256' + :type ipsec_integrity: str or + ~azure.mgmt.network.v2019_09_01.models.IpsecIntegrity + :param ike_encryption: Required. The IKE encryption algorithm (IKE phase + 2). Possible values include: 'DES', 'DES3', 'AES128', 'AES192', 'AES256', + 'GCMAES256', 'GCMAES128' + :type ike_encryption: str or + ~azure.mgmt.network.v2019_09_01.models.IkeEncryption + :param ike_integrity: Required. The IKE integrity algorithm (IKE phase 2). + Possible values include: 'MD5', 'SHA1', 'SHA256', 'SHA384', 'GCMAES256', + 'GCMAES128' + :type ike_integrity: str or + ~azure.mgmt.network.v2019_09_01.models.IkeIntegrity + :param dh_group: Required. The DH Group used in IKE Phase 1 for initial + SA. Possible values include: 'None', 'DHGroup1', 'DHGroup2', 'DHGroup14', + 'DHGroup2048', 'ECP256', 'ECP384', 'DHGroup24' + :type dh_group: str or ~azure.mgmt.network.v2019_09_01.models.DhGroup + :param pfs_group: Required. The Pfs Group used in IKE Phase 2 for new + child SA. Possible values include: 'None', 'PFS1', 'PFS2', 'PFS2048', + 'ECP256', 'ECP384', 'PFS24', 'PFS14', 'PFSMM' + :type pfs_group: str or ~azure.mgmt.network.v2019_09_01.models.PfsGroup + """ + + _validation = { + 'sa_life_time_seconds': {'required': True}, + 'sa_data_size_kilobytes': {'required': True}, + 'ipsec_encryption': {'required': True}, + 'ipsec_integrity': {'required': True}, + 'ike_encryption': {'required': True}, + 'ike_integrity': {'required': True}, + 'dh_group': {'required': True}, + 'pfs_group': {'required': True}, + } + + _attribute_map = { + 'sa_life_time_seconds': {'key': 'saLifeTimeSeconds', 'type': 'int'}, + 'sa_data_size_kilobytes': {'key': 'saDataSizeKilobytes', 'type': 'int'}, + 'ipsec_encryption': {'key': 'ipsecEncryption', 'type': 'str'}, + 'ipsec_integrity': {'key': 'ipsecIntegrity', 'type': 'str'}, + 'ike_encryption': {'key': 'ikeEncryption', 'type': 'str'}, + 'ike_integrity': {'key': 'ikeIntegrity', 'type': 'str'}, + 'dh_group': {'key': 'dhGroup', 'type': 'str'}, + 'pfs_group': {'key': 'pfsGroup', 'type': 'str'}, + } + + def __init__(self, *, sa_life_time_seconds: int, sa_data_size_kilobytes: int, ipsec_encryption, ipsec_integrity, ike_encryption, ike_integrity, dh_group, pfs_group, **kwargs) -> None: + super(VpnClientIPsecParameters, self).__init__(**kwargs) + self.sa_life_time_seconds = sa_life_time_seconds + self.sa_data_size_kilobytes = sa_data_size_kilobytes + self.ipsec_encryption = ipsec_encryption + self.ipsec_integrity = ipsec_integrity + self.ike_encryption = ike_encryption + self.ike_integrity = ike_integrity + self.dh_group = dh_group + self.pfs_group = pfs_group + + +class VpnClientParameters(Model): + """Vpn Client Parameters for package generation. + + :param processor_architecture: VPN client Processor Architecture. Possible + values include: 'Amd64', 'X86' + :type processor_architecture: str or + ~azure.mgmt.network.v2019_09_01.models.ProcessorArchitecture + :param authentication_method: VPN client authentication method. Possible + values include: 'EAPTLS', 'EAPMSCHAPv2' + :type authentication_method: str or + ~azure.mgmt.network.v2019_09_01.models.AuthenticationMethod + :param radius_server_auth_certificate: The public certificate data for the + radius server authentication certificate as a Base-64 encoded string. + Required only if external radius authentication has been configured with + EAPTLS authentication. + :type radius_server_auth_certificate: str + :param client_root_certificates: A list of client root certificates public + certificate data encoded as Base-64 strings. Optional parameter for + external radius based authentication with EAPTLS. + :type client_root_certificates: list[str] + """ + + _attribute_map = { + 'processor_architecture': {'key': 'processorArchitecture', 'type': 'str'}, + 'authentication_method': {'key': 'authenticationMethod', 'type': 'str'}, + 'radius_server_auth_certificate': {'key': 'radiusServerAuthCertificate', 'type': 'str'}, + 'client_root_certificates': {'key': 'clientRootCertificates', 'type': '[str]'}, + } + + def __init__(self, *, processor_architecture=None, authentication_method=None, radius_server_auth_certificate: str=None, client_root_certificates=None, **kwargs) -> None: + super(VpnClientParameters, self).__init__(**kwargs) + self.processor_architecture = processor_architecture + self.authentication_method = authentication_method + self.radius_server_auth_certificate = radius_server_auth_certificate + self.client_root_certificates = client_root_certificates + + +class VpnClientRevokedCertificate(SubResource): + """VPN client revoked certificate of virtual network gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param thumbprint: The revoked VPN client certificate thumbprint. + :type thumbprint: str + :ivar provisioning_state: The provisioning state of the VPN client revoked + certificate resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'thumbprint': {'key': 'properties.thumbprint', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, thumbprint: str=None, name: str=None, **kwargs) -> None: + super(VpnClientRevokedCertificate, self).__init__(id=id, **kwargs) + self.thumbprint = thumbprint + self.provisioning_state = None + self.name = name + self.etag = None + + +class VpnClientRootCertificate(SubResource): + """VPN client root certificate of virtual network gateway. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :param public_cert_data: Required. The certificate public data. + :type public_cert_data: str + :ivar provisioning_state: The provisioning state of the VPN client root + certificate resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'public_cert_data': {'required': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'public_cert_data': {'key': 'properties.publicCertData', 'type': 'str'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, public_cert_data: str, id: str=None, name: str=None, **kwargs) -> None: + super(VpnClientRootCertificate, self).__init__(id=id, **kwargs) + self.public_cert_data = public_cert_data + self.provisioning_state = None + self.name = name + self.etag = None + + +class VpnConnection(SubResource): + """VpnConnection Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param remote_vpn_site: Id of the connected vpn site. + :type remote_vpn_site: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param routing_weight: Routing weight for vpn connection. + :type routing_weight: int + :param connection_status: The connection status. Possible values include: + 'Unknown', 'Connecting', 'Connected', 'NotConnected' + :type connection_status: str or + ~azure.mgmt.network.v2019_09_01.models.VpnConnectionStatus + :param vpn_connection_protocol_type: Connection protocol used for this + connection. Possible values include: 'IKEv2', 'IKEv1' + :type vpn_connection_protocol_type: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionProtocol + :ivar ingress_bytes_transferred: Ingress bytes transferred. + :vartype ingress_bytes_transferred: long + :ivar egress_bytes_transferred: Egress bytes transferred. + :vartype egress_bytes_transferred: long + :param connection_bandwidth: Expected bandwidth in MBPS. + :type connection_bandwidth: int + :param shared_key: SharedKey for the vpn connection. + :type shared_key: str + :param enable_bgp: EnableBgp flag. + :type enable_bgp: bool + :param use_policy_based_traffic_selectors: Enable policy-based traffic + selectors. + :type use_policy_based_traffic_selectors: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2019_09_01.models.IpsecPolicy] + :param enable_rate_limiting: EnableBgp flag. + :type enable_rate_limiting: bool + :param enable_internet_security: Enable internet security. + :type enable_internet_security: bool + :param use_local_azure_ip_address: Use local azure ip to initiate + connection. + :type use_local_azure_ip_address: bool + :ivar provisioning_state: The provisioning state of the VPN connection + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param vpn_link_connections: List of all vpn site link connections to the + gateway. + :type vpn_link_connections: + list[~azure.mgmt.network.v2019_09_01.models.VpnSiteLinkConnection] + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'ingress_bytes_transferred': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'remote_vpn_site': {'key': 'properties.remoteVpnSite', 'type': 'SubResource'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'vpn_connection_protocol_type': {'key': 'properties.vpnConnectionProtocolType', 'type': 'str'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'connection_bandwidth': {'key': 'properties.connectionBandwidth', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'use_policy_based_traffic_selectors': {'key': 'properties.usePolicyBasedTrafficSelectors', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'enable_rate_limiting': {'key': 'properties.enableRateLimiting', 'type': 'bool'}, + 'enable_internet_security': {'key': 'properties.enableInternetSecurity', 'type': 'bool'}, + 'use_local_azure_ip_address': {'key': 'properties.useLocalAzureIpAddress', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'vpn_link_connections': {'key': 'properties.vpnLinkConnections', 'type': '[VpnSiteLinkConnection]'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, remote_vpn_site=None, routing_weight: int=None, connection_status=None, vpn_connection_protocol_type=None, connection_bandwidth: int=None, shared_key: str=None, enable_bgp: bool=None, use_policy_based_traffic_selectors: bool=None, ipsec_policies=None, enable_rate_limiting: bool=None, enable_internet_security: bool=None, use_local_azure_ip_address: bool=None, vpn_link_connections=None, name: str=None, **kwargs) -> None: + super(VpnConnection, self).__init__(id=id, **kwargs) + self.remote_vpn_site = remote_vpn_site + self.routing_weight = routing_weight + self.connection_status = connection_status + self.vpn_connection_protocol_type = vpn_connection_protocol_type + self.ingress_bytes_transferred = None + self.egress_bytes_transferred = None + self.connection_bandwidth = connection_bandwidth + self.shared_key = shared_key + self.enable_bgp = enable_bgp + self.use_policy_based_traffic_selectors = use_policy_based_traffic_selectors + self.ipsec_policies = ipsec_policies + self.enable_rate_limiting = enable_rate_limiting + self.enable_internet_security = enable_internet_security + self.use_local_azure_ip_address = use_local_azure_ip_address + self.provisioning_state = None + self.vpn_link_connections = vpn_link_connections + self.name = name + self.etag = None + + +class VpnDeviceScriptParameters(Model): + """Vpn device configuration script generation parameters. + + :param vendor: The vendor for the vpn device. + :type vendor: str + :param device_family: The device family for the vpn device. + :type device_family: str + :param firmware_version: The firmware version for the vpn device. + :type firmware_version: str + """ + + _attribute_map = { + 'vendor': {'key': 'vendor', 'type': 'str'}, + 'device_family': {'key': 'deviceFamily', 'type': 'str'}, + 'firmware_version': {'key': 'firmwareVersion', 'type': 'str'}, + } + + def __init__(self, *, vendor: str=None, device_family: str=None, firmware_version: str=None, **kwargs) -> None: + super(VpnDeviceScriptParameters, self).__init__(**kwargs) + self.vendor = vendor + self.device_family = device_family + self.firmware_version = firmware_version + + +class VpnGateway(Resource): + """VpnGateway Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_hub: The VirtualHub to which the gateway belongs. + :type virtual_hub: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param connections: List of all vpn connections to the gateway. + :type connections: + list[~azure.mgmt.network.v2019_09_01.models.VpnConnection] + :param bgp_settings: Local network gateway's BGP speaker settings. + :type bgp_settings: ~azure.mgmt.network.v2019_09_01.models.BgpSettings + :ivar provisioning_state: The provisioning state of the VPN gateway + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param vpn_gateway_scale_unit: The scale unit for this vpn gateway. + :type vpn_gateway_scale_unit: int + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_hub': {'key': 'properties.virtualHub', 'type': 'SubResource'}, + 'connections': {'key': 'properties.connections', 'type': '[VpnConnection]'}, + 'bgp_settings': {'key': 'properties.bgpSettings', 'type': 'BgpSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'vpn_gateway_scale_unit': {'key': 'properties.vpnGatewayScaleUnit', 'type': 'int'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, virtual_hub=None, connections=None, bgp_settings=None, vpn_gateway_scale_unit: int=None, **kwargs) -> None: + super(VpnGateway, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.virtual_hub = virtual_hub + self.connections = connections + self.bgp_settings = bgp_settings + self.provisioning_state = None + self.vpn_gateway_scale_unit = vpn_gateway_scale_unit + self.etag = None + + +class VpnLinkBgpSettings(Model): + """BGP settings details for a link. + + :param asn: The BGP speaker's ASN. + :type asn: long + :param bgp_peering_address: The BGP peering address and BGP identifier of + this BGP speaker. + :type bgp_peering_address: str + """ + + _attribute_map = { + 'asn': {'key': 'asn', 'type': 'long'}, + 'bgp_peering_address': {'key': 'bgpPeeringAddress', 'type': 'str'}, + } + + def __init__(self, *, asn: int=None, bgp_peering_address: str=None, **kwargs) -> None: + super(VpnLinkBgpSettings, self).__init__(**kwargs) + self.asn = asn + self.bgp_peering_address = bgp_peering_address + + +class VpnLinkProviderProperties(Model): + """List of properties of a link provider. + + :param link_provider_name: Name of the link provider. + :type link_provider_name: str + :param link_speed_in_mbps: Link speed. + :type link_speed_in_mbps: int + """ + + _attribute_map = { + 'link_provider_name': {'key': 'linkProviderName', 'type': 'str'}, + 'link_speed_in_mbps': {'key': 'linkSpeedInMbps', 'type': 'int'}, + } + + def __init__(self, *, link_provider_name: str=None, link_speed_in_mbps: int=None, **kwargs) -> None: + super(VpnLinkProviderProperties, self).__init__(**kwargs) + self.link_provider_name = link_provider_name + self.link_speed_in_mbps = link_speed_in_mbps + + +class VpnPacketCaptureStartParameters(Model): + """Start packet capture parameters on virtual network gateway. + + :param filter_data: Start Packet capture parameters. + :type filter_data: str + """ + + _attribute_map = { + 'filter_data': {'key': 'filterData', 'type': 'str'}, + } + + def __init__(self, *, filter_data: str=None, **kwargs) -> None: + super(VpnPacketCaptureStartParameters, self).__init__(**kwargs) + self.filter_data = filter_data + + +class VpnPacketCaptureStopParameters(Model): + """Stop packet capture parameters. + + :param sas_url: SAS url for packet capture on virtual network gateway. + :type sas_url: str + """ + + _attribute_map = { + 'sas_url': {'key': 'sasUrl', 'type': 'str'}, + } + + def __init__(self, *, sas_url: str=None, **kwargs) -> None: + super(VpnPacketCaptureStopParameters, self).__init__(**kwargs) + self.sas_url = sas_url + + +class VpnProfileResponse(Model): + """Vpn Profile Response for package generation. + + :param profile_url: URL to the VPN profile. + :type profile_url: str + """ + + _attribute_map = { + 'profile_url': {'key': 'profileUrl', 'type': 'str'}, + } + + def __init__(self, *, profile_url: str=None, **kwargs) -> None: + super(VpnProfileResponse, self).__init__(**kwargs) + self.profile_url = profile_url + + +class VpnServerConfigRadiusClientRootCertificate(Model): + """Properties of the Radius client root certificate of VpnServerConfiguration. + + :param name: The certificate name. + :type name: str + :param thumbprint: The Radius client root certificate thumbprint. + :type thumbprint: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'thumbprint': {'key': 'thumbprint', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, thumbprint: str=None, **kwargs) -> None: + super(VpnServerConfigRadiusClientRootCertificate, self).__init__(**kwargs) + self.name = name + self.thumbprint = thumbprint + + +class VpnServerConfigRadiusServerRootCertificate(Model): + """Properties of Radius Server root certificate of VpnServerConfiguration. + + :param name: The certificate name. + :type name: str + :param public_cert_data: The certificate public data. + :type public_cert_data: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'public_cert_data': {'key': 'publicCertData', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, public_cert_data: str=None, **kwargs) -> None: + super(VpnServerConfigRadiusServerRootCertificate, self).__init__(**kwargs) + self.name = name + self.public_cert_data = public_cert_data + + +class VpnServerConfiguration(Resource): + """VpnServerConfiguration Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param vpn_server_configuration_name: The name of the + VpnServerConfiguration that is unique within a resource group. + :type vpn_server_configuration_name: str + :param vpn_protocols: VPN protocols for the VpnServerConfiguration. + :type vpn_protocols: list[str or + ~azure.mgmt.network.v2019_09_01.models.VpnGatewayTunnelingProtocol] + :param vpn_authentication_types: VPN authentication types for the + VpnServerConfiguration. + :type vpn_authentication_types: list[str or + ~azure.mgmt.network.v2019_09_01.models.VpnAuthenticationType] + :param vpn_client_root_certificates: VPN client root certificate of + VpnServerConfiguration. + :type vpn_client_root_certificates: + list[~azure.mgmt.network.v2019_09_01.models.VpnServerConfigVpnClientRootCertificate] + :param vpn_client_revoked_certificates: VPN client revoked certificate of + VpnServerConfiguration. + :type vpn_client_revoked_certificates: + list[~azure.mgmt.network.v2019_09_01.models.VpnServerConfigVpnClientRevokedCertificate] + :param radius_server_root_certificates: Radius Server root certificate of + VpnServerConfiguration. + :type radius_server_root_certificates: + list[~azure.mgmt.network.v2019_09_01.models.VpnServerConfigRadiusServerRootCertificate] + :param radius_client_root_certificates: Radius client root certificate of + VpnServerConfiguration. + :type radius_client_root_certificates: + list[~azure.mgmt.network.v2019_09_01.models.VpnServerConfigRadiusClientRootCertificate] + :param vpn_client_ipsec_policies: VpnClientIpsecPolicies for + VpnServerConfiguration. + :type vpn_client_ipsec_policies: + list[~azure.mgmt.network.v2019_09_01.models.IpsecPolicy] + :param radius_server_address: The radius server address property of the + VpnServerConfiguration resource for point to site client connection. + :type radius_server_address: str + :param radius_server_secret: The radius secret property of the + VpnServerConfiguration resource for point to site client connection. + :type radius_server_secret: str + :param aad_authentication_parameters: The set of aad vpn authentication + parameters. + :type aad_authentication_parameters: + ~azure.mgmt.network.v2019_09_01.models.AadAuthenticationParameters + :ivar provisioning_state: The provisioning state of the + VpnServerConfiguration resource. Possible values are: 'Updating', + 'Deleting', and 'Failed'. + :vartype provisioning_state: str + :ivar p2_svpn_gateways: List of references to P2SVpnGateways. + :vartype p2_svpn_gateways: + list[~azure.mgmt.network.v2019_09_01.models.P2SVpnGateway] + :ivar vpn_server_configuration_properties_etag: A unique read-only string + that changes whenever the resource is updated. + :vartype vpn_server_configuration_properties_etag: str + :ivar etag: Gets a unique read-only string that changes whenever the + resource is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'p2_svpn_gateways': {'readonly': True}, + 'vpn_server_configuration_properties_etag': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'vpn_server_configuration_name': {'key': 'properties.name', 'type': 'str'}, + 'vpn_protocols': {'key': 'properties.vpnProtocols', 'type': '[str]'}, + 'vpn_authentication_types': {'key': 'properties.vpnAuthenticationTypes', 'type': '[str]'}, + 'vpn_client_root_certificates': {'key': 'properties.vpnClientRootCertificates', 'type': '[VpnServerConfigVpnClientRootCertificate]'}, + 'vpn_client_revoked_certificates': {'key': 'properties.vpnClientRevokedCertificates', 'type': '[VpnServerConfigVpnClientRevokedCertificate]'}, + 'radius_server_root_certificates': {'key': 'properties.radiusServerRootCertificates', 'type': '[VpnServerConfigRadiusServerRootCertificate]'}, + 'radius_client_root_certificates': {'key': 'properties.radiusClientRootCertificates', 'type': '[VpnServerConfigRadiusClientRootCertificate]'}, + 'vpn_client_ipsec_policies': {'key': 'properties.vpnClientIpsecPolicies', 'type': '[IpsecPolicy]'}, + 'radius_server_address': {'key': 'properties.radiusServerAddress', 'type': 'str'}, + 'radius_server_secret': {'key': 'properties.radiusServerSecret', 'type': 'str'}, + 'aad_authentication_parameters': {'key': 'properties.aadAuthenticationParameters', 'type': 'AadAuthenticationParameters'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'p2_svpn_gateways': {'key': 'properties.p2SVpnGateways', 'type': '[P2SVpnGateway]'}, + 'vpn_server_configuration_properties_etag': {'key': 'properties.etag', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, vpn_server_configuration_name: str=None, vpn_protocols=None, vpn_authentication_types=None, vpn_client_root_certificates=None, vpn_client_revoked_certificates=None, radius_server_root_certificates=None, radius_client_root_certificates=None, vpn_client_ipsec_policies=None, radius_server_address: str=None, radius_server_secret: str=None, aad_authentication_parameters=None, **kwargs) -> None: + super(VpnServerConfiguration, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.vpn_server_configuration_name = vpn_server_configuration_name + self.vpn_protocols = vpn_protocols + self.vpn_authentication_types = vpn_authentication_types + self.vpn_client_root_certificates = vpn_client_root_certificates + self.vpn_client_revoked_certificates = vpn_client_revoked_certificates + self.radius_server_root_certificates = radius_server_root_certificates + self.radius_client_root_certificates = radius_client_root_certificates + self.vpn_client_ipsec_policies = vpn_client_ipsec_policies + self.radius_server_address = radius_server_address + self.radius_server_secret = radius_server_secret + self.aad_authentication_parameters = aad_authentication_parameters + self.provisioning_state = None + self.p2_svpn_gateways = None + self.vpn_server_configuration_properties_etag = None + self.etag = None + + +class VpnServerConfigurationsResponse(Model): + """VpnServerConfigurations list associated with VirtualWan Response. + + :param vpn_server_configuration_resource_ids: List of + VpnServerConfigurations associated with VirtualWan. + :type vpn_server_configuration_resource_ids: list[str] + """ + + _attribute_map = { + 'vpn_server_configuration_resource_ids': {'key': 'vpnServerConfigurationResourceIds', 'type': '[str]'}, + } + + def __init__(self, *, vpn_server_configuration_resource_ids=None, **kwargs) -> None: + super(VpnServerConfigurationsResponse, self).__init__(**kwargs) + self.vpn_server_configuration_resource_ids = vpn_server_configuration_resource_ids + + +class VpnServerConfigVpnClientRevokedCertificate(Model): + """Properties of the revoked VPN client certificate of VpnServerConfiguration. + + :param name: The certificate name. + :type name: str + :param thumbprint: The revoked VPN client certificate thumbprint. + :type thumbprint: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'thumbprint': {'key': 'thumbprint', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, thumbprint: str=None, **kwargs) -> None: + super(VpnServerConfigVpnClientRevokedCertificate, self).__init__(**kwargs) + self.name = name + self.thumbprint = thumbprint + + +class VpnServerConfigVpnClientRootCertificate(Model): + """Properties of VPN client root certificate of VpnServerConfiguration. + + :param name: The certificate name. + :type name: str + :param public_cert_data: The certificate public data. + :type public_cert_data: str + """ + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'public_cert_data': {'key': 'publicCertData', 'type': 'str'}, + } + + def __init__(self, *, name: str=None, public_cert_data: str=None, **kwargs) -> None: + super(VpnServerConfigVpnClientRootCertificate, self).__init__(**kwargs) + self.name = name + self.public_cert_data = public_cert_data + + +class VpnSite(Resource): + """VpnSite Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param virtual_wan: The VirtualWAN to which the vpnSite belongs. + :type virtual_wan: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param device_properties: The device properties. + :type device_properties: + ~azure.mgmt.network.v2019_09_01.models.DeviceProperties + :param ip_address: The ip-address for the vpn-site. + :type ip_address: str + :param site_key: The key for vpn-site that can be used for connections. + :type site_key: str + :param address_space: The AddressSpace that contains an array of IP + address ranges. + :type address_space: ~azure.mgmt.network.v2019_09_01.models.AddressSpace + :param bgp_properties: The set of bgp properties. + :type bgp_properties: ~azure.mgmt.network.v2019_09_01.models.BgpSettings + :ivar provisioning_state: The provisioning state of the VPN site resource. + Possible values include: 'Succeeded', 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param is_security_site: IsSecuritySite flag. + :type is_security_site: bool + :param vpn_site_links: List of all vpn site links. + :type vpn_site_links: + list[~azure.mgmt.network.v2019_09_01.models.VpnSiteLink] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'virtual_wan': {'key': 'properties.virtualWan', 'type': 'SubResource'}, + 'device_properties': {'key': 'properties.deviceProperties', 'type': 'DeviceProperties'}, + 'ip_address': {'key': 'properties.ipAddress', 'type': 'str'}, + 'site_key': {'key': 'properties.siteKey', 'type': 'str'}, + 'address_space': {'key': 'properties.addressSpace', 'type': 'AddressSpace'}, + 'bgp_properties': {'key': 'properties.bgpProperties', 'type': 'BgpSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'is_security_site': {'key': 'properties.isSecuritySite', 'type': 'bool'}, + 'vpn_site_links': {'key': 'properties.vpnSiteLinks', 'type': '[VpnSiteLink]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, location: str=None, tags=None, virtual_wan=None, device_properties=None, ip_address: str=None, site_key: str=None, address_space=None, bgp_properties=None, is_security_site: bool=None, vpn_site_links=None, **kwargs) -> None: + super(VpnSite, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.virtual_wan = virtual_wan + self.device_properties = device_properties + self.ip_address = ip_address + self.site_key = site_key + self.address_space = address_space + self.bgp_properties = bgp_properties + self.provisioning_state = None + self.is_security_site = is_security_site + self.vpn_site_links = vpn_site_links + self.etag = None + + +class VpnSiteId(Model): + """VpnSite Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :ivar vpn_site: The resource-uri of the vpn-site for which config is to be + fetched. + :vartype vpn_site: str + """ + + _validation = { + 'vpn_site': {'readonly': True}, + } + + _attribute_map = { + 'vpn_site': {'key': 'vpnSite', 'type': 'str'}, + } + + def __init__(self, **kwargs) -> None: + super(VpnSiteId, self).__init__(**kwargs) + self.vpn_site = None + + +class VpnSiteLink(SubResource): + """VpnSiteLink Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param link_properties: The link provider properties. + :type link_properties: + ~azure.mgmt.network.v2019_09_01.models.VpnLinkProviderProperties + :param ip_address: The ip-address for the vpn-site-link. + :type ip_address: str + :param bgp_properties: The set of bgp properties. + :type bgp_properties: + ~azure.mgmt.network.v2019_09_01.models.VpnLinkBgpSettings + :ivar provisioning_state: The provisioning state of the VPN site link + resource. Possible values include: 'Succeeded', 'Updating', 'Deleting', + 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar type: Resource type. + :vartype type: str + """ + + _validation = { + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'link_properties': {'key': 'properties.linkProperties', 'type': 'VpnLinkProviderProperties'}, + 'ip_address': {'key': 'properties.ipAddress', 'type': 'str'}, + 'bgp_properties': {'key': 'properties.bgpProperties', 'type': 'VpnLinkBgpSettings'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, link_properties=None, ip_address: str=None, bgp_properties=None, name: str=None, **kwargs) -> None: + super(VpnSiteLink, self).__init__(id=id, **kwargs) + self.link_properties = link_properties + self.ip_address = ip_address + self.bgp_properties = bgp_properties + self.provisioning_state = None + self.etag = None + self.name = name + self.type = None + + +class VpnSiteLinkConnection(SubResource): + """VpnSiteLinkConnection Resource. + + Variables are only populated by the server, and will be ignored when + sending a request. + + :param id: Resource ID. + :type id: str + :param vpn_site_link: Id of the connected vpn site link. + :type vpn_site_link: ~azure.mgmt.network.v2019_09_01.models.SubResource + :param routing_weight: Routing weight for vpn connection. + :type routing_weight: int + :param connection_status: The connection status. Possible values include: + 'Unknown', 'Connecting', 'Connected', 'NotConnected' + :type connection_status: str or + ~azure.mgmt.network.v2019_09_01.models.VpnConnectionStatus + :param vpn_connection_protocol_type: Connection protocol used for this + connection. Possible values include: 'IKEv2', 'IKEv1' + :type vpn_connection_protocol_type: str or + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionProtocol + :ivar ingress_bytes_transferred: Ingress bytes transferred. + :vartype ingress_bytes_transferred: long + :ivar egress_bytes_transferred: Egress bytes transferred. + :vartype egress_bytes_transferred: long + :param connection_bandwidth: Expected bandwidth in MBPS. + :type connection_bandwidth: int + :param shared_key: SharedKey for the vpn connection. + :type shared_key: str + :param enable_bgp: EnableBgp flag. + :type enable_bgp: bool + :param use_policy_based_traffic_selectors: Enable policy-based traffic + selectors. + :type use_policy_based_traffic_selectors: bool + :param ipsec_policies: The IPSec Policies to be considered by this + connection. + :type ipsec_policies: + list[~azure.mgmt.network.v2019_09_01.models.IpsecPolicy] + :param enable_rate_limiting: EnableBgp flag. + :type enable_rate_limiting: bool + :param use_local_azure_ip_address: Use local azure ip to initiate + connection. + :type use_local_azure_ip_address: bool + :ivar provisioning_state: The provisioning state of the VPN site link + connection resource. Possible values include: 'Succeeded', 'Updating', + 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :ivar type: Resource type. + :vartype type: str + """ + + _validation = { + 'ingress_bytes_transferred': {'readonly': True}, + 'egress_bytes_transferred': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'etag': {'readonly': True}, + 'type': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'vpn_site_link': {'key': 'properties.vpnSiteLink', 'type': 'SubResource'}, + 'routing_weight': {'key': 'properties.routingWeight', 'type': 'int'}, + 'connection_status': {'key': 'properties.connectionStatus', 'type': 'str'}, + 'vpn_connection_protocol_type': {'key': 'properties.vpnConnectionProtocolType', 'type': 'str'}, + 'ingress_bytes_transferred': {'key': 'properties.ingressBytesTransferred', 'type': 'long'}, + 'egress_bytes_transferred': {'key': 'properties.egressBytesTransferred', 'type': 'long'}, + 'connection_bandwidth': {'key': 'properties.connectionBandwidth', 'type': 'int'}, + 'shared_key': {'key': 'properties.sharedKey', 'type': 'str'}, + 'enable_bgp': {'key': 'properties.enableBgp', 'type': 'bool'}, + 'use_policy_based_traffic_selectors': {'key': 'properties.usePolicyBasedTrafficSelectors', 'type': 'bool'}, + 'ipsec_policies': {'key': 'properties.ipsecPolicies', 'type': '[IpsecPolicy]'}, + 'enable_rate_limiting': {'key': 'properties.enableRateLimiting', 'type': 'bool'}, + 'use_local_azure_ip_address': {'key': 'properties.useLocalAzureIpAddress', 'type': 'bool'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + } + + def __init__(self, *, id: str=None, vpn_site_link=None, routing_weight: int=None, connection_status=None, vpn_connection_protocol_type=None, connection_bandwidth: int=None, shared_key: str=None, enable_bgp: bool=None, use_policy_based_traffic_selectors: bool=None, ipsec_policies=None, enable_rate_limiting: bool=None, use_local_azure_ip_address: bool=None, name: str=None, **kwargs) -> None: + super(VpnSiteLinkConnection, self).__init__(id=id, **kwargs) + self.vpn_site_link = vpn_site_link + self.routing_weight = routing_weight + self.connection_status = connection_status + self.vpn_connection_protocol_type = vpn_connection_protocol_type + self.ingress_bytes_transferred = None + self.egress_bytes_transferred = None + self.connection_bandwidth = connection_bandwidth + self.shared_key = shared_key + self.enable_bgp = enable_bgp + self.use_policy_based_traffic_selectors = use_policy_based_traffic_selectors + self.ipsec_policies = ipsec_policies + self.enable_rate_limiting = enable_rate_limiting + self.use_local_azure_ip_address = use_local_azure_ip_address + self.provisioning_state = None + self.name = name + self.etag = None + self.type = None + + +class WebApplicationFirewallCustomRule(Model): + """Defines contents of a web application rule. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param name: The name of the resource that is unique within a policy. This + name can be used to access the resource. + :type name: str + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + :param priority: Required. Describes priority of the rule. Rules with a + lower value will be evaluated before rules with a higher value. + :type priority: int + :param rule_type: Required. Describes type of rule. Possible values + include: 'MatchRule', 'Invalid' + :type rule_type: str or + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallRuleType + :param match_conditions: Required. List of match conditions. + :type match_conditions: + list[~azure.mgmt.network.v2019_09_01.models.MatchCondition] + :param action: Required. Type of Actions. Possible values include: + 'Allow', 'Block', 'Log' + :type action: str or + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallAction + """ + + _validation = { + 'name': {'max_length': 128}, + 'etag': {'readonly': True}, + 'priority': {'required': True}, + 'rule_type': {'required': True}, + 'match_conditions': {'required': True}, + 'action': {'required': True}, + } + + _attribute_map = { + 'name': {'key': 'name', 'type': 'str'}, + 'etag': {'key': 'etag', 'type': 'str'}, + 'priority': {'key': 'priority', 'type': 'int'}, + 'rule_type': {'key': 'ruleType', 'type': 'str'}, + 'match_conditions': {'key': 'matchConditions', 'type': '[MatchCondition]'}, + 'action': {'key': 'action', 'type': 'str'}, + } + + def __init__(self, *, priority: int, rule_type, match_conditions, action, name: str=None, **kwargs) -> None: + super(WebApplicationFirewallCustomRule, self).__init__(**kwargs) + self.name = name + self.etag = None + self.priority = priority + self.rule_type = rule_type + self.match_conditions = match_conditions + self.action = action + + +class WebApplicationFirewallPolicy(Resource): + """Defines web application firewall policy. + + Variables are only populated by the server, and will be ignored when + sending a request. + + All required parameters must be populated in order to send to Azure. + + :param id: Resource ID. + :type id: str + :ivar name: Resource name. + :vartype name: str + :ivar type: Resource type. + :vartype type: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param policy_settings: Describes policySettings for policy. + :type policy_settings: + ~azure.mgmt.network.v2019_09_01.models.PolicySettings + :param custom_rules: Describes custom rules inside the policy. + :type custom_rules: + list[~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallCustomRule] + :ivar application_gateways: A collection of references to application + gateways. + :vartype application_gateways: + list[~azure.mgmt.network.v2019_09_01.models.ApplicationGateway] + :ivar provisioning_state: The provisioning state of the web application + firewall policy resource. Possible values include: 'Succeeded', + 'Updating', 'Deleting', 'Failed' + :vartype provisioning_state: str or + ~azure.mgmt.network.v2019_09_01.models.ProvisioningState + :ivar resource_state: Resource status of the policy. Resource status of + the policy. Possible values include: 'Creating', 'Enabling', 'Enabled', + 'Disabling', 'Disabled', 'Deleting' + :vartype resource_state: str or + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallPolicyResourceState + :param managed_rules: Required. Describes the managedRules structure + :type managed_rules: + ~azure.mgmt.network.v2019_09_01.models.ManagedRulesDefinition + :ivar http_listeners: A collection of references to application gateway + http listeners. + :vartype http_listeners: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar path_based_rules: A collection of references to application gateway + path rules. + :vartype path_based_rules: + list[~azure.mgmt.network.v2019_09_01.models.SubResource] + :ivar etag: A unique read-only string that changes whenever the resource + is updated. + :vartype etag: str + """ + + _validation = { + 'name': {'readonly': True}, + 'type': {'readonly': True}, + 'application_gateways': {'readonly': True}, + 'provisioning_state': {'readonly': True}, + 'resource_state': {'readonly': True}, + 'managed_rules': {'required': True}, + 'http_listeners': {'readonly': True}, + 'path_based_rules': {'readonly': True}, + 'etag': {'readonly': True}, + } + + _attribute_map = { + 'id': {'key': 'id', 'type': 'str'}, + 'name': {'key': 'name', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'location': {'key': 'location', 'type': 'str'}, + 'tags': {'key': 'tags', 'type': '{str}'}, + 'policy_settings': {'key': 'properties.policySettings', 'type': 'PolicySettings'}, + 'custom_rules': {'key': 'properties.customRules', 'type': '[WebApplicationFirewallCustomRule]'}, + 'application_gateways': {'key': 'properties.applicationGateways', 'type': '[ApplicationGateway]'}, + 'provisioning_state': {'key': 'properties.provisioningState', 'type': 'str'}, + 'resource_state': {'key': 'properties.resourceState', 'type': 'str'}, + 'managed_rules': {'key': 'properties.managedRules', 'type': 'ManagedRulesDefinition'}, + 'http_listeners': {'key': 'properties.httpListeners', 'type': '[SubResource]'}, + 'path_based_rules': {'key': 'properties.pathBasedRules', 'type': '[SubResource]'}, + 'etag': {'key': 'etag', 'type': 'str'}, + } + + def __init__(self, *, managed_rules, id: str=None, location: str=None, tags=None, policy_settings=None, custom_rules=None, **kwargs) -> None: + super(WebApplicationFirewallPolicy, self).__init__(id=id, location=location, tags=tags, **kwargs) + self.policy_settings = policy_settings + self.custom_rules = custom_rules + self.application_gateways = None + self.provisioning_state = None + self.resource_state = None + self.managed_rules = managed_rules + self.http_listeners = None + self.path_based_rules = None + self.etag = None diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/_network_management_client_enums.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/_network_management_client_enums.py new file mode 100644 index 000000000000..449ff3a2cd6b --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/_network_management_client_enums.py @@ -0,0 +1,922 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from enum import Enum + + +class ApplicationGatewayProtocol(str, Enum): + + http = "Http" + https = "Https" + + +class ProvisioningState(str, Enum): + + succeeded = "Succeeded" + updating = "Updating" + deleting = "Deleting" + failed = "Failed" + + +class IPAllocationMethod(str, Enum): + + static = "Static" + dynamic = "Dynamic" + + +class IPVersion(str, Enum): + + ipv4 = "IPv4" + ipv6 = "IPv6" + + +class SecurityRuleProtocol(str, Enum): + + tcp = "Tcp" + udp = "Udp" + icmp = "Icmp" + esp = "Esp" + asterisk = "*" + ah = "Ah" + + +class SecurityRuleAccess(str, Enum): + + allow = "Allow" + deny = "Deny" + + +class SecurityRuleDirection(str, Enum): + + inbound = "Inbound" + outbound = "Outbound" + + +class RouteNextHopType(str, Enum): + + virtual_network_gateway = "VirtualNetworkGateway" + vnet_local = "VnetLocal" + internet = "Internet" + virtual_appliance = "VirtualAppliance" + none = "None" + + +class PublicIPAddressSkuName(str, Enum): + + basic = "Basic" + standard = "Standard" + + +class DdosSettingsProtectionCoverage(str, Enum): + + basic = "Basic" + standard = "Standard" + + +class TransportProtocol(str, Enum): + + udp = "Udp" + tcp = "Tcp" + all = "All" + + +class ApplicationGatewayCookieBasedAffinity(str, Enum): + + enabled = "Enabled" + disabled = "Disabled" + + +class ApplicationGatewayBackendHealthServerHealth(str, Enum): + + unknown = "Unknown" + up = "Up" + down = "Down" + partial = "Partial" + draining = "Draining" + + +class ApplicationGatewaySkuName(str, Enum): + + standard_small = "Standard_Small" + standard_medium = "Standard_Medium" + standard_large = "Standard_Large" + waf_medium = "WAF_Medium" + waf_large = "WAF_Large" + standard_v2 = "Standard_v2" + waf_v2 = "WAF_v2" + + +class ApplicationGatewayTier(str, Enum): + + standard = "Standard" + waf = "WAF" + standard_v2 = "Standard_v2" + waf_v2 = "WAF_v2" + + +class ApplicationGatewaySslProtocol(str, Enum): + + tl_sv1_0 = "TLSv1_0" + tl_sv1_1 = "TLSv1_1" + tl_sv1_2 = "TLSv1_2" + + +class ApplicationGatewaySslPolicyType(str, Enum): + + predefined = "Predefined" + custom = "Custom" + + +class ApplicationGatewaySslPolicyName(str, Enum): + + app_gw_ssl_policy20150501 = "AppGwSslPolicy20150501" + app_gw_ssl_policy20170401 = "AppGwSslPolicy20170401" + app_gw_ssl_policy20170401_s = "AppGwSslPolicy20170401S" + + +class ApplicationGatewaySslCipherSuite(str, Enum): + + tls_ecdhe_rsa_with_aes_256_cbc_sha384 = "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384" + tls_ecdhe_rsa_with_aes_128_cbc_sha256 = "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256" + tls_ecdhe_rsa_with_aes_256_cbc_sha = "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA" + tls_ecdhe_rsa_with_aes_128_cbc_sha = "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA" + tls_dhe_rsa_with_aes_256_gcm_sha384 = "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384" + tls_dhe_rsa_with_aes_128_gcm_sha256 = "TLS_DHE_RSA_WITH_AES_128_GCM_SHA256" + tls_dhe_rsa_with_aes_256_cbc_sha = "TLS_DHE_RSA_WITH_AES_256_CBC_SHA" + tls_dhe_rsa_with_aes_128_cbc_sha = "TLS_DHE_RSA_WITH_AES_128_CBC_SHA" + tls_rsa_with_aes_256_gcm_sha384 = "TLS_RSA_WITH_AES_256_GCM_SHA384" + tls_rsa_with_aes_128_gcm_sha256 = "TLS_RSA_WITH_AES_128_GCM_SHA256" + tls_rsa_with_aes_256_cbc_sha256 = "TLS_RSA_WITH_AES_256_CBC_SHA256" + tls_rsa_with_aes_128_cbc_sha256 = "TLS_RSA_WITH_AES_128_CBC_SHA256" + tls_rsa_with_aes_256_cbc_sha = "TLS_RSA_WITH_AES_256_CBC_SHA" + tls_rsa_with_aes_128_cbc_sha = "TLS_RSA_WITH_AES_128_CBC_SHA" + tls_ecdhe_ecdsa_with_aes_256_gcm_sha384 = "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384" + tls_ecdhe_ecdsa_with_aes_128_gcm_sha256 = "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256" + tls_ecdhe_ecdsa_with_aes_256_cbc_sha384 = "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384" + tls_ecdhe_ecdsa_with_aes_128_cbc_sha256 = "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256" + tls_ecdhe_ecdsa_with_aes_256_cbc_sha = "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA" + tls_ecdhe_ecdsa_with_aes_128_cbc_sha = "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA" + tls_dhe_dss_with_aes_256_cbc_sha256 = "TLS_DHE_DSS_WITH_AES_256_CBC_SHA256" + tls_dhe_dss_with_aes_128_cbc_sha256 = "TLS_DHE_DSS_WITH_AES_128_CBC_SHA256" + tls_dhe_dss_with_aes_256_cbc_sha = "TLS_DHE_DSS_WITH_AES_256_CBC_SHA" + tls_dhe_dss_with_aes_128_cbc_sha = "TLS_DHE_DSS_WITH_AES_128_CBC_SHA" + tls_rsa_with_3_des_ede_cbc_sha = "TLS_RSA_WITH_3DES_EDE_CBC_SHA" + tls_dhe_dss_with_3_des_ede_cbc_sha = "TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA" + tls_ecdhe_rsa_with_aes_128_gcm_sha256 = "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256" + tls_ecdhe_rsa_with_aes_256_gcm_sha384 = "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384" + + +class ApplicationGatewayCustomErrorStatusCode(str, Enum): + + http_status403 = "HttpStatus403" + http_status502 = "HttpStatus502" + + +class ApplicationGatewayRequestRoutingRuleType(str, Enum): + + basic = "Basic" + path_based_routing = "PathBasedRouting" + + +class ApplicationGatewayRedirectType(str, Enum): + + permanent = "Permanent" + found = "Found" + see_other = "SeeOther" + temporary = "Temporary" + + +class ApplicationGatewayOperationalState(str, Enum): + + stopped = "Stopped" + starting = "Starting" + running = "Running" + stopping = "Stopping" + + +class ApplicationGatewayFirewallMode(str, Enum): + + detection = "Detection" + prevention = "Prevention" + + +class ResourceIdentityType(str, Enum): + + system_assigned = "SystemAssigned" + user_assigned = "UserAssigned" + system_assigned_user_assigned = "SystemAssigned, UserAssigned" + none = "None" + + +class AzureFirewallRCActionType(str, Enum): + + allow = "Allow" + deny = "Deny" + + +class AzureFirewallApplicationRuleProtocolType(str, Enum): + + http = "Http" + https = "Https" + mssql = "Mssql" + + +class AzureFirewallNatRCActionType(str, Enum): + + snat = "Snat" + dnat = "Dnat" + + +class AzureFirewallNetworkRuleProtocol(str, Enum): + + tcp = "TCP" + udp = "UDP" + any = "Any" + icmp = "ICMP" + + +class AzureFirewallThreatIntelMode(str, Enum): + + alert = "Alert" + deny = "Deny" + off = "Off" + + +class AzureFirewallSkuName(str, Enum): + + azfw_vnet = "AZFW_VNet" + azfw_hub = "AZFW_Hub" + + +class AzureFirewallSkuTier(str, Enum): + + standard = "Standard" + + +class DdosCustomPolicyProtocol(str, Enum): + + tcp = "Tcp" + udp = "Udp" + syn = "Syn" + + +class DdosCustomPolicyTriggerSensitivityOverride(str, Enum): + + relaxed = "Relaxed" + low = "Low" + default = "Default" + high = "High" + + +class AuthorizationUseStatus(str, Enum): + + available = "Available" + in_use = "InUse" + + +class ExpressRouteCircuitPeeringAdvertisedPublicPrefixState(str, Enum): + + not_configured = "NotConfigured" + configuring = "Configuring" + configured = "Configured" + validation_needed = "ValidationNeeded" + + +class ExpressRouteCircuitPeeringState(str, Enum): + + disabled = "Disabled" + enabled = "Enabled" + + +class ExpressRoutePeeringType(str, Enum): + + azure_public_peering = "AzurePublicPeering" + azure_private_peering = "AzurePrivatePeering" + microsoft_peering = "MicrosoftPeering" + + +class ExpressRoutePeeringState(str, Enum): + + disabled = "Disabled" + enabled = "Enabled" + + +class CircuitConnectionStatus(str, Enum): + + connected = "Connected" + connecting = "Connecting" + disconnected = "Disconnected" + + +class ExpressRouteCircuitSkuTier(str, Enum): + + standard = "Standard" + premium = "Premium" + basic = "Basic" + local = "Local" + + +class ExpressRouteCircuitSkuFamily(str, Enum): + + unlimited_data = "UnlimitedData" + metered_data = "MeteredData" + + +class ServiceProviderProvisioningState(str, Enum): + + not_provisioned = "NotProvisioned" + provisioning = "Provisioning" + provisioned = "Provisioned" + deprovisioning = "Deprovisioning" + + +class ExpressRouteLinkMacSecCipher(str, Enum): + + gcm_aes_128 = "gcm-aes-128" + gcm_aes_256 = "gcm-aes-256" + + +class ExpressRouteLinkConnectorType(str, Enum): + + lc = "LC" + sc = "SC" + + +class ExpressRouteLinkAdminState(str, Enum): + + enabled = "Enabled" + disabled = "Disabled" + + +class ExpressRoutePortsEncapsulation(str, Enum): + + dot1_q = "Dot1Q" + qin_q = "QinQ" + + +class FirewallPolicyNatRuleActionType(str, Enum): + + dnat = "DNAT" + + +class FirewallPolicyFilterRuleActionType(str, Enum): + + allow = "Allow" + deny = "Deny" + + +class FirewallPolicyRuleConditionApplicationProtocolType(str, Enum): + + http = "Http" + https = "Https" + + +class FirewallPolicyRuleConditionNetworkProtocol(str, Enum): + + tcp = "TCP" + udp = "UDP" + any = "Any" + icmp = "ICMP" + + +class LoadBalancerSkuName(str, Enum): + + basic = "Basic" + standard = "Standard" + + +class LoadDistribution(str, Enum): + + default = "Default" + source_ip = "SourceIP" + source_ip_protocol = "SourceIPProtocol" + + +class ProbeProtocol(str, Enum): + + http = "Http" + tcp = "Tcp" + https = "Https" + + +class LoadBalancerOutboundRuleProtocol(str, Enum): + + tcp = "Tcp" + udp = "Udp" + all = "All" + + +class NatGatewaySkuName(str, Enum): + + standard = "Standard" + + +class NetworkOperationStatus(str, Enum): + + in_progress = "InProgress" + succeeded = "Succeeded" + failed = "Failed" + + +class Access(str, Enum): + + allow = "Allow" + deny = "Deny" + + +class AuthenticationMethod(str, Enum): + + eaptls = "EAPTLS" + eapmscha_pv2 = "EAPMSCHAPv2" + + +class EffectiveSecurityRuleProtocol(str, Enum): + + tcp = "Tcp" + udp = "Udp" + all = "All" + + +class EffectiveRouteSource(str, Enum): + + unknown = "Unknown" + user = "User" + virtual_network_gateway = "VirtualNetworkGateway" + default = "Default" + + +class EffectiveRouteState(str, Enum): + + active = "Active" + invalid = "Invalid" + + +class AssociationType(str, Enum): + + associated = "Associated" + contains = "Contains" + + +class Direction(str, Enum): + + inbound = "Inbound" + outbound = "Outbound" + + +class IpFlowProtocol(str, Enum): + + tcp = "TCP" + udp = "UDP" + + +class NextHopType(str, Enum): + + internet = "Internet" + virtual_appliance = "VirtualAppliance" + virtual_network_gateway = "VirtualNetworkGateway" + vnet_local = "VnetLocal" + hyper_net_gateway = "HyperNetGateway" + none = "None" + + +class PcProtocol(str, Enum): + + tcp = "TCP" + udp = "UDP" + any = "Any" + + +class PcStatus(str, Enum): + + not_started = "NotStarted" + running = "Running" + stopped = "Stopped" + error = "Error" + unknown = "Unknown" + + +class PcError(str, Enum): + + internal_error = "InternalError" + agent_stopped = "AgentStopped" + capture_failed = "CaptureFailed" + local_file_failed = "LocalFileFailed" + storage_failed = "StorageFailed" + + +class FlowLogFormatType(str, Enum): + + json = "JSON" + + +class Protocol(str, Enum): + + tcp = "Tcp" + http = "Http" + https = "Https" + icmp = "Icmp" + + +class HTTPMethod(str, Enum): + + get = "Get" + + +class Origin(str, Enum): + + local = "Local" + inbound = "Inbound" + outbound = "Outbound" + + +class Severity(str, Enum): + + error = "Error" + warning = "Warning" + + +class IssueType(str, Enum): + + unknown = "Unknown" + agent_stopped = "AgentStopped" + guest_firewall = "GuestFirewall" + dns_resolution = "DnsResolution" + socket_bind = "SocketBind" + network_security_rule = "NetworkSecurityRule" + user_defined_route = "UserDefinedRoute" + port_throttled = "PortThrottled" + platform = "Platform" + + +class ConnectionStatus(str, Enum): + + unknown = "Unknown" + connected = "Connected" + disconnected = "Disconnected" + degraded = "Degraded" + + +class VerbosityLevel(str, Enum): + + normal = "Normal" + minimum = "Minimum" + full = "Full" + + +class ConnectionState(str, Enum): + + reachable = "Reachable" + unreachable = "Unreachable" + unknown = "Unknown" + + +class EvaluationState(str, Enum): + + not_started = "NotStarted" + in_progress = "InProgress" + completed = "Completed" + + +class ConnectionMonitorSourceStatus(str, Enum): + + unknown = "Unknown" + active = "Active" + inactive = "Inactive" + + +class PublicIPPrefixSkuName(str, Enum): + + standard = "Standard" + + +class VirtualNetworkPeeringState(str, Enum): + + initiated = "Initiated" + connected = "Connected" + disconnected = "Disconnected" + + +class VirtualNetworkGatewayType(str, Enum): + + vpn = "Vpn" + express_route = "ExpressRoute" + + +class VpnType(str, Enum): + + policy_based = "PolicyBased" + route_based = "RouteBased" + + +class VpnGatewayGeneration(str, Enum): + + none = "None" + generation1 = "Generation1" + generation2 = "Generation2" + + +class VirtualNetworkGatewaySkuName(str, Enum): + + basic = "Basic" + high_performance = "HighPerformance" + standard = "Standard" + ultra_performance = "UltraPerformance" + vpn_gw1 = "VpnGw1" + vpn_gw2 = "VpnGw2" + vpn_gw3 = "VpnGw3" + vpn_gw4 = "VpnGw4" + vpn_gw5 = "VpnGw5" + vpn_gw1_az = "VpnGw1AZ" + vpn_gw2_az = "VpnGw2AZ" + vpn_gw3_az = "VpnGw3AZ" + vpn_gw4_az = "VpnGw4AZ" + vpn_gw5_az = "VpnGw5AZ" + er_gw1_az = "ErGw1AZ" + er_gw2_az = "ErGw2AZ" + er_gw3_az = "ErGw3AZ" + + +class VirtualNetworkGatewaySkuTier(str, Enum): + + basic = "Basic" + high_performance = "HighPerformance" + standard = "Standard" + ultra_performance = "UltraPerformance" + vpn_gw1 = "VpnGw1" + vpn_gw2 = "VpnGw2" + vpn_gw3 = "VpnGw3" + vpn_gw4 = "VpnGw4" + vpn_gw5 = "VpnGw5" + vpn_gw1_az = "VpnGw1AZ" + vpn_gw2_az = "VpnGw2AZ" + vpn_gw3_az = "VpnGw3AZ" + vpn_gw4_az = "VpnGw4AZ" + vpn_gw5_az = "VpnGw5AZ" + er_gw1_az = "ErGw1AZ" + er_gw2_az = "ErGw2AZ" + er_gw3_az = "ErGw3AZ" + + +class VpnClientProtocol(str, Enum): + + ike_v2 = "IkeV2" + sstp = "SSTP" + open_vpn = "OpenVPN" + + +class IpsecEncryption(str, Enum): + + none = "None" + des = "DES" + des3 = "DES3" + aes128 = "AES128" + aes192 = "AES192" + aes256 = "AES256" + gcmaes128 = "GCMAES128" + gcmaes192 = "GCMAES192" + gcmaes256 = "GCMAES256" + + +class IpsecIntegrity(str, Enum): + + md5 = "MD5" + sha1 = "SHA1" + sha256 = "SHA256" + gcmaes128 = "GCMAES128" + gcmaes192 = "GCMAES192" + gcmaes256 = "GCMAES256" + + +class IkeEncryption(str, Enum): + + des = "DES" + des3 = "DES3" + aes128 = "AES128" + aes192 = "AES192" + aes256 = "AES256" + gcmaes256 = "GCMAES256" + gcmaes128 = "GCMAES128" + + +class IkeIntegrity(str, Enum): + + md5 = "MD5" + sha1 = "SHA1" + sha256 = "SHA256" + sha384 = "SHA384" + gcmaes256 = "GCMAES256" + gcmaes128 = "GCMAES128" + + +class DhGroup(str, Enum): + + none = "None" + dh_group1 = "DHGroup1" + dh_group2 = "DHGroup2" + dh_group14 = "DHGroup14" + dh_group2048 = "DHGroup2048" + ecp256 = "ECP256" + ecp384 = "ECP384" + dh_group24 = "DHGroup24" + + +class PfsGroup(str, Enum): + + none = "None" + pfs1 = "PFS1" + pfs2 = "PFS2" + pfs2048 = "PFS2048" + ecp256 = "ECP256" + ecp384 = "ECP384" + pfs24 = "PFS24" + pfs14 = "PFS14" + pfsmm = "PFSMM" + + +class BgpPeerState(str, Enum): + + unknown = "Unknown" + stopped = "Stopped" + idle = "Idle" + connecting = "Connecting" + connected = "Connected" + + +class ProcessorArchitecture(str, Enum): + + amd64 = "Amd64" + x86 = "X86" + + +class VirtualNetworkGatewayConnectionStatus(str, Enum): + + unknown = "Unknown" + connecting = "Connecting" + connected = "Connected" + not_connected = "NotConnected" + + +class VirtualNetworkGatewayConnectionType(str, Enum): + + ipsec = "IPsec" + vnet2_vnet = "Vnet2Vnet" + express_route = "ExpressRoute" + vpn_client = "VPNClient" + + +class VirtualNetworkGatewayConnectionProtocol(str, Enum): + + ik_ev2 = "IKEv2" + ik_ev1 = "IKEv1" + + +class OfficeTrafficCategory(str, Enum): + + optimize = "Optimize" + optimize_and_allow = "OptimizeAndAllow" + all = "All" + none = "None" + + +class VpnConnectionStatus(str, Enum): + + unknown = "Unknown" + connecting = "Connecting" + connected = "Connected" + not_connected = "NotConnected" + + +class VirtualWanSecurityProviderType(str, Enum): + + external = "External" + native = "Native" + + +class TunnelConnectionStatus(str, Enum): + + unknown = "Unknown" + connecting = "Connecting" + connected = "Connected" + not_connected = "NotConnected" + + +class HubVirtualNetworkConnectionStatus(str, Enum): + + unknown = "Unknown" + connecting = "Connecting" + connected = "Connected" + not_connected = "NotConnected" + + +class VpnGatewayTunnelingProtocol(str, Enum): + + ike_v2 = "IkeV2" + open_vpn = "OpenVPN" + + +class VpnAuthenticationType(str, Enum): + + certificate = "Certificate" + radius = "Radius" + aad = "AAD" + + +class WebApplicationFirewallEnabledState(str, Enum): + + disabled = "Disabled" + enabled = "Enabled" + + +class WebApplicationFirewallMode(str, Enum): + + prevention = "Prevention" + detection = "Detection" + + +class WebApplicationFirewallRuleType(str, Enum): + + match_rule = "MatchRule" + invalid = "Invalid" + + +class WebApplicationFirewallMatchVariable(str, Enum): + + remote_addr = "RemoteAddr" + request_method = "RequestMethod" + query_string = "QueryString" + post_args = "PostArgs" + request_uri = "RequestUri" + request_headers = "RequestHeaders" + request_body = "RequestBody" + request_cookies = "RequestCookies" + + +class WebApplicationFirewallOperator(str, Enum): + + ip_match = "IPMatch" + equal = "Equal" + contains = "Contains" + less_than = "LessThan" + greater_than = "GreaterThan" + less_than_or_equal = "LessThanOrEqual" + greater_than_or_equal = "GreaterThanOrEqual" + begins_with = "BeginsWith" + ends_with = "EndsWith" + regex = "Regex" + geo_match = "GeoMatch" + + +class WebApplicationFirewallTransform(str, Enum): + + lowercase = "Lowercase" + trim = "Trim" + url_decode = "UrlDecode" + url_encode = "UrlEncode" + remove_nulls = "RemoveNulls" + html_entity_decode = "HtmlEntityDecode" + + +class WebApplicationFirewallAction(str, Enum): + + allow = "Allow" + block = "Block" + log = "Log" + + +class WebApplicationFirewallPolicyResourceState(str, Enum): + + creating = "Creating" + enabling = "Enabling" + enabled = "Enabled" + disabling = "Disabling" + disabled = "Disabled" + deleting = "Deleting" + + +class OwaspCrsExclusionEntryMatchVariable(str, Enum): + + request_header_names = "RequestHeaderNames" + request_cookie_names = "RequestCookieNames" + request_arg_names = "RequestArgNames" + + +class OwaspCrsExclusionEntrySelectorMatchOperator(str, Enum): + + equals = "Equals" + contains = "Contains" + starts_with = "StartsWith" + ends_with = "EndsWith" + equals_any = "EqualsAny" + + +class ManagedRuleEnabledState(str, Enum): + + disabled = "Disabled" diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/_paged_models.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/_paged_models.py new file mode 100644 index 000000000000..240e7e91be33 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/models/_paged_models.py @@ -0,0 +1,1054 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.paging import Paged + + +class ApplicationGatewayPaged(Paged): + """ + A paging container for iterating over a list of :class:`ApplicationGateway ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ApplicationGateway]'} + } + + def __init__(self, *args, **kwargs): + + super(ApplicationGatewayPaged, self).__init__(*args, **kwargs) +class ApplicationGatewaySslPredefinedPolicyPaged(Paged): + """ + A paging container for iterating over a list of :class:`ApplicationGatewaySslPredefinedPolicy ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ApplicationGatewaySslPredefinedPolicy]'} + } + + def __init__(self, *args, **kwargs): + + super(ApplicationGatewaySslPredefinedPolicyPaged, self).__init__(*args, **kwargs) +class ApplicationSecurityGroupPaged(Paged): + """ + A paging container for iterating over a list of :class:`ApplicationSecurityGroup ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ApplicationSecurityGroup]'} + } + + def __init__(self, *args, **kwargs): + + super(ApplicationSecurityGroupPaged, self).__init__(*args, **kwargs) +class AvailableDelegationPaged(Paged): + """ + A paging container for iterating over a list of :class:`AvailableDelegation ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[AvailableDelegation]'} + } + + def __init__(self, *args, **kwargs): + + super(AvailableDelegationPaged, self).__init__(*args, **kwargs) +class AvailableServiceAliasPaged(Paged): + """ + A paging container for iterating over a list of :class:`AvailableServiceAlias ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[AvailableServiceAlias]'} + } + + def __init__(self, *args, **kwargs): + + super(AvailableServiceAliasPaged, self).__init__(*args, **kwargs) +class AzureFirewallPaged(Paged): + """ + A paging container for iterating over a list of :class:`AzureFirewall ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[AzureFirewall]'} + } + + def __init__(self, *args, **kwargs): + + super(AzureFirewallPaged, self).__init__(*args, **kwargs) +class AzureFirewallFqdnTagPaged(Paged): + """ + A paging container for iterating over a list of :class:`AzureFirewallFqdnTag ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[AzureFirewallFqdnTag]'} + } + + def __init__(self, *args, **kwargs): + + super(AzureFirewallFqdnTagPaged, self).__init__(*args, **kwargs) +class BastionHostPaged(Paged): + """ + A paging container for iterating over a list of :class:`BastionHost ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[BastionHost]'} + } + + def __init__(self, *args, **kwargs): + + super(BastionHostPaged, self).__init__(*args, **kwargs) +class DdosProtectionPlanPaged(Paged): + """ + A paging container for iterating over a list of :class:`DdosProtectionPlan ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[DdosProtectionPlan]'} + } + + def __init__(self, *args, **kwargs): + + super(DdosProtectionPlanPaged, self).__init__(*args, **kwargs) +class EndpointServiceResultPaged(Paged): + """ + A paging container for iterating over a list of :class:`EndpointServiceResult ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[EndpointServiceResult]'} + } + + def __init__(self, *args, **kwargs): + + super(EndpointServiceResultPaged, self).__init__(*args, **kwargs) +class ExpressRouteCircuitAuthorizationPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteCircuitAuthorization ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteCircuitAuthorization]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteCircuitAuthorizationPaged, self).__init__(*args, **kwargs) +class ExpressRouteCircuitPeeringPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteCircuitPeering ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteCircuitPeering]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteCircuitPeeringPaged, self).__init__(*args, **kwargs) +class ExpressRouteCircuitConnectionPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteCircuitConnection ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteCircuitConnection]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteCircuitConnectionPaged, self).__init__(*args, **kwargs) +class PeerExpressRouteCircuitConnectionPaged(Paged): + """ + A paging container for iterating over a list of :class:`PeerExpressRouteCircuitConnection ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[PeerExpressRouteCircuitConnection]'} + } + + def __init__(self, *args, **kwargs): + + super(PeerExpressRouteCircuitConnectionPaged, self).__init__(*args, **kwargs) +class ExpressRouteCircuitPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteCircuit ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteCircuit]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteCircuitPaged, self).__init__(*args, **kwargs) +class ExpressRouteServiceProviderPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteServiceProvider ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteServiceProvider]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteServiceProviderPaged, self).__init__(*args, **kwargs) +class ExpressRouteCrossConnectionPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteCrossConnection ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteCrossConnection]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteCrossConnectionPaged, self).__init__(*args, **kwargs) +class ExpressRouteCrossConnectionPeeringPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteCrossConnectionPeering ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteCrossConnectionPeering]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteCrossConnectionPeeringPaged, self).__init__(*args, **kwargs) +class ExpressRoutePortsLocationPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRoutePortsLocation ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRoutePortsLocation]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRoutePortsLocationPaged, self).__init__(*args, **kwargs) +class ExpressRoutePortPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRoutePort ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRoutePort]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRoutePortPaged, self).__init__(*args, **kwargs) +class ExpressRouteLinkPaged(Paged): + """ + A paging container for iterating over a list of :class:`ExpressRouteLink ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ExpressRouteLink]'} + } + + def __init__(self, *args, **kwargs): + + super(ExpressRouteLinkPaged, self).__init__(*args, **kwargs) +class FirewallPolicyPaged(Paged): + """ + A paging container for iterating over a list of :class:`FirewallPolicy ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[FirewallPolicy]'} + } + + def __init__(self, *args, **kwargs): + + super(FirewallPolicyPaged, self).__init__(*args, **kwargs) +class FirewallPolicyRuleGroupPaged(Paged): + """ + A paging container for iterating over a list of :class:`FirewallPolicyRuleGroup ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[FirewallPolicyRuleGroup]'} + } + + def __init__(self, *args, **kwargs): + + super(FirewallPolicyRuleGroupPaged, self).__init__(*args, **kwargs) +class IpGroupPaged(Paged): + """ + A paging container for iterating over a list of :class:`IpGroup ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[IpGroup]'} + } + + def __init__(self, *args, **kwargs): + + super(IpGroupPaged, self).__init__(*args, **kwargs) +class LoadBalancerPaged(Paged): + """ + A paging container for iterating over a list of :class:`LoadBalancer ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[LoadBalancer]'} + } + + def __init__(self, *args, **kwargs): + + super(LoadBalancerPaged, self).__init__(*args, **kwargs) +class BackendAddressPoolPaged(Paged): + """ + A paging container for iterating over a list of :class:`BackendAddressPool ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[BackendAddressPool]'} + } + + def __init__(self, *args, **kwargs): + + super(BackendAddressPoolPaged, self).__init__(*args, **kwargs) +class FrontendIPConfigurationPaged(Paged): + """ + A paging container for iterating over a list of :class:`FrontendIPConfiguration ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[FrontendIPConfiguration]'} + } + + def __init__(self, *args, **kwargs): + + super(FrontendIPConfigurationPaged, self).__init__(*args, **kwargs) +class InboundNatRulePaged(Paged): + """ + A paging container for iterating over a list of :class:`InboundNatRule ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[InboundNatRule]'} + } + + def __init__(self, *args, **kwargs): + + super(InboundNatRulePaged, self).__init__(*args, **kwargs) +class LoadBalancingRulePaged(Paged): + """ + A paging container for iterating over a list of :class:`LoadBalancingRule ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[LoadBalancingRule]'} + } + + def __init__(self, *args, **kwargs): + + super(LoadBalancingRulePaged, self).__init__(*args, **kwargs) +class OutboundRulePaged(Paged): + """ + A paging container for iterating over a list of :class:`OutboundRule ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[OutboundRule]'} + } + + def __init__(self, *args, **kwargs): + + super(OutboundRulePaged, self).__init__(*args, **kwargs) +class NetworkInterfacePaged(Paged): + """ + A paging container for iterating over a list of :class:`NetworkInterface ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[NetworkInterface]'} + } + + def __init__(self, *args, **kwargs): + + super(NetworkInterfacePaged, self).__init__(*args, **kwargs) +class ProbePaged(Paged): + """ + A paging container for iterating over a list of :class:`Probe ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Probe]'} + } + + def __init__(self, *args, **kwargs): + + super(ProbePaged, self).__init__(*args, **kwargs) +class NatGatewayPaged(Paged): + """ + A paging container for iterating over a list of :class:`NatGateway ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[NatGateway]'} + } + + def __init__(self, *args, **kwargs): + + super(NatGatewayPaged, self).__init__(*args, **kwargs) +class NetworkInterfaceIPConfigurationPaged(Paged): + """ + A paging container for iterating over a list of :class:`NetworkInterfaceIPConfiguration ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[NetworkInterfaceIPConfiguration]'} + } + + def __init__(self, *args, **kwargs): + + super(NetworkInterfaceIPConfigurationPaged, self).__init__(*args, **kwargs) +class NetworkInterfaceTapConfigurationPaged(Paged): + """ + A paging container for iterating over a list of :class:`NetworkInterfaceTapConfiguration ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[NetworkInterfaceTapConfiguration]'} + } + + def __init__(self, *args, **kwargs): + + super(NetworkInterfaceTapConfigurationPaged, self).__init__(*args, **kwargs) +class NetworkProfilePaged(Paged): + """ + A paging container for iterating over a list of :class:`NetworkProfile ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[NetworkProfile]'} + } + + def __init__(self, *args, **kwargs): + + super(NetworkProfilePaged, self).__init__(*args, **kwargs) +class NetworkSecurityGroupPaged(Paged): + """ + A paging container for iterating over a list of :class:`NetworkSecurityGroup ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[NetworkSecurityGroup]'} + } + + def __init__(self, *args, **kwargs): + + super(NetworkSecurityGroupPaged, self).__init__(*args, **kwargs) +class SecurityRulePaged(Paged): + """ + A paging container for iterating over a list of :class:`SecurityRule ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[SecurityRule]'} + } + + def __init__(self, *args, **kwargs): + + super(SecurityRulePaged, self).__init__(*args, **kwargs) +class NetworkWatcherPaged(Paged): + """ + A paging container for iterating over a list of :class:`NetworkWatcher ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[NetworkWatcher]'} + } + + def __init__(self, *args, **kwargs): + + super(NetworkWatcherPaged, self).__init__(*args, **kwargs) +class PacketCaptureResultPaged(Paged): + """ + A paging container for iterating over a list of :class:`PacketCaptureResult ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[PacketCaptureResult]'} + } + + def __init__(self, *args, **kwargs): + + super(PacketCaptureResultPaged, self).__init__(*args, **kwargs) +class ConnectionMonitorResultPaged(Paged): + """ + A paging container for iterating over a list of :class:`ConnectionMonitorResult ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ConnectionMonitorResult]'} + } + + def __init__(self, *args, **kwargs): + + super(ConnectionMonitorResultPaged, self).__init__(*args, **kwargs) +class OperationPaged(Paged): + """ + A paging container for iterating over a list of :class:`Operation ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Operation]'} + } + + def __init__(self, *args, **kwargs): + + super(OperationPaged, self).__init__(*args, **kwargs) +class PrivateEndpointPaged(Paged): + """ + A paging container for iterating over a list of :class:`PrivateEndpoint ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[PrivateEndpoint]'} + } + + def __init__(self, *args, **kwargs): + + super(PrivateEndpointPaged, self).__init__(*args, **kwargs) +class AvailablePrivateEndpointTypePaged(Paged): + """ + A paging container for iterating over a list of :class:`AvailablePrivateEndpointType ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[AvailablePrivateEndpointType]'} + } + + def __init__(self, *args, **kwargs): + + super(AvailablePrivateEndpointTypePaged, self).__init__(*args, **kwargs) +class PrivateLinkServicePaged(Paged): + """ + A paging container for iterating over a list of :class:`PrivateLinkService ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[PrivateLinkService]'} + } + + def __init__(self, *args, **kwargs): + + super(PrivateLinkServicePaged, self).__init__(*args, **kwargs) +class PrivateEndpointConnectionPaged(Paged): + """ + A paging container for iterating over a list of :class:`PrivateEndpointConnection ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[PrivateEndpointConnection]'} + } + + def __init__(self, *args, **kwargs): + + super(PrivateEndpointConnectionPaged, self).__init__(*args, **kwargs) +class AutoApprovedPrivateLinkServicePaged(Paged): + """ + A paging container for iterating over a list of :class:`AutoApprovedPrivateLinkService ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[AutoApprovedPrivateLinkService]'} + } + + def __init__(self, *args, **kwargs): + + super(AutoApprovedPrivateLinkServicePaged, self).__init__(*args, **kwargs) +class PublicIPAddressPaged(Paged): + """ + A paging container for iterating over a list of :class:`PublicIPAddress ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[PublicIPAddress]'} + } + + def __init__(self, *args, **kwargs): + + super(PublicIPAddressPaged, self).__init__(*args, **kwargs) +class PublicIPPrefixPaged(Paged): + """ + A paging container for iterating over a list of :class:`PublicIPPrefix ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[PublicIPPrefix]'} + } + + def __init__(self, *args, **kwargs): + + super(PublicIPPrefixPaged, self).__init__(*args, **kwargs) +class RouteFilterPaged(Paged): + """ + A paging container for iterating over a list of :class:`RouteFilter ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[RouteFilter]'} + } + + def __init__(self, *args, **kwargs): + + super(RouteFilterPaged, self).__init__(*args, **kwargs) +class RouteFilterRulePaged(Paged): + """ + A paging container for iterating over a list of :class:`RouteFilterRule ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[RouteFilterRule]'} + } + + def __init__(self, *args, **kwargs): + + super(RouteFilterRulePaged, self).__init__(*args, **kwargs) +class RouteTablePaged(Paged): + """ + A paging container for iterating over a list of :class:`RouteTable ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[RouteTable]'} + } + + def __init__(self, *args, **kwargs): + + super(RouteTablePaged, self).__init__(*args, **kwargs) +class RoutePaged(Paged): + """ + A paging container for iterating over a list of :class:`Route ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Route]'} + } + + def __init__(self, *args, **kwargs): + + super(RoutePaged, self).__init__(*args, **kwargs) +class BgpServiceCommunityPaged(Paged): + """ + A paging container for iterating over a list of :class:`BgpServiceCommunity ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[BgpServiceCommunity]'} + } + + def __init__(self, *args, **kwargs): + + super(BgpServiceCommunityPaged, self).__init__(*args, **kwargs) +class ServiceEndpointPolicyPaged(Paged): + """ + A paging container for iterating over a list of :class:`ServiceEndpointPolicy ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ServiceEndpointPolicy]'} + } + + def __init__(self, *args, **kwargs): + + super(ServiceEndpointPolicyPaged, self).__init__(*args, **kwargs) +class ServiceEndpointPolicyDefinitionPaged(Paged): + """ + A paging container for iterating over a list of :class:`ServiceEndpointPolicyDefinition ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[ServiceEndpointPolicyDefinition]'} + } + + def __init__(self, *args, **kwargs): + + super(ServiceEndpointPolicyDefinitionPaged, self).__init__(*args, **kwargs) +class UsagePaged(Paged): + """ + A paging container for iterating over a list of :class:`Usage ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Usage]'} + } + + def __init__(self, *args, **kwargs): + + super(UsagePaged, self).__init__(*args, **kwargs) +class VirtualNetworkPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetwork ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetwork]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkPaged, self).__init__(*args, **kwargs) +class VirtualNetworkUsagePaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetworkUsage ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetworkUsage]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkUsagePaged, self).__init__(*args, **kwargs) +class SubnetPaged(Paged): + """ + A paging container for iterating over a list of :class:`Subnet ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[Subnet]'} + } + + def __init__(self, *args, **kwargs): + + super(SubnetPaged, self).__init__(*args, **kwargs) +class VirtualNetworkPeeringPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetworkPeering ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetworkPeering]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkPeeringPaged, self).__init__(*args, **kwargs) +class VirtualNetworkGatewayPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetworkGateway ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetworkGateway]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkGatewayPaged, self).__init__(*args, **kwargs) +class VirtualNetworkGatewayConnectionListEntityPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetworkGatewayConnectionListEntity ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetworkGatewayConnectionListEntity]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkGatewayConnectionListEntityPaged, self).__init__(*args, **kwargs) +class VirtualNetworkGatewayConnectionPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetworkGatewayConnection ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetworkGatewayConnection]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkGatewayConnectionPaged, self).__init__(*args, **kwargs) +class LocalNetworkGatewayPaged(Paged): + """ + A paging container for iterating over a list of :class:`LocalNetworkGateway ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[LocalNetworkGateway]'} + } + + def __init__(self, *args, **kwargs): + + super(LocalNetworkGatewayPaged, self).__init__(*args, **kwargs) +class VirtualNetworkTapPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualNetworkTap ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualNetworkTap]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualNetworkTapPaged, self).__init__(*args, **kwargs) +class VirtualRouterPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualRouter ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualRouter]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualRouterPaged, self).__init__(*args, **kwargs) +class VirtualRouterPeeringPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualRouterPeering ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualRouterPeering]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualRouterPeeringPaged, self).__init__(*args, **kwargs) +class VirtualWANPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualWAN ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualWAN]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualWANPaged, self).__init__(*args, **kwargs) +class VpnSitePaged(Paged): + """ + A paging container for iterating over a list of :class:`VpnSite ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VpnSite]'} + } + + def __init__(self, *args, **kwargs): + + super(VpnSitePaged, self).__init__(*args, **kwargs) +class VpnSiteLinkPaged(Paged): + """ + A paging container for iterating over a list of :class:`VpnSiteLink ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VpnSiteLink]'} + } + + def __init__(self, *args, **kwargs): + + super(VpnSiteLinkPaged, self).__init__(*args, **kwargs) +class VpnServerConfigurationPaged(Paged): + """ + A paging container for iterating over a list of :class:`VpnServerConfiguration ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VpnServerConfiguration]'} + } + + def __init__(self, *args, **kwargs): + + super(VpnServerConfigurationPaged, self).__init__(*args, **kwargs) +class VirtualHubPaged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualHub ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualHub]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualHubPaged, self).__init__(*args, **kwargs) +class HubVirtualNetworkConnectionPaged(Paged): + """ + A paging container for iterating over a list of :class:`HubVirtualNetworkConnection ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[HubVirtualNetworkConnection]'} + } + + def __init__(self, *args, **kwargs): + + super(HubVirtualNetworkConnectionPaged, self).__init__(*args, **kwargs) +class VpnGatewayPaged(Paged): + """ + A paging container for iterating over a list of :class:`VpnGateway ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VpnGateway]'} + } + + def __init__(self, *args, **kwargs): + + super(VpnGatewayPaged, self).__init__(*args, **kwargs) +class VpnConnectionPaged(Paged): + """ + A paging container for iterating over a list of :class:`VpnConnection ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VpnConnection]'} + } + + def __init__(self, *args, **kwargs): + + super(VpnConnectionPaged, self).__init__(*args, **kwargs) +class VpnSiteLinkConnectionPaged(Paged): + """ + A paging container for iterating over a list of :class:`VpnSiteLinkConnection ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VpnSiteLinkConnection]'} + } + + def __init__(self, *args, **kwargs): + + super(VpnSiteLinkConnectionPaged, self).__init__(*args, **kwargs) +class P2SVpnGatewayPaged(Paged): + """ + A paging container for iterating over a list of :class:`P2SVpnGateway ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[P2SVpnGateway]'} + } + + def __init__(self, *args, **kwargs): + + super(P2SVpnGatewayPaged, self).__init__(*args, **kwargs) +class VirtualHubRouteTableV2Paged(Paged): + """ + A paging container for iterating over a list of :class:`VirtualHubRouteTableV2 ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[VirtualHubRouteTableV2]'} + } + + def __init__(self, *args, **kwargs): + + super(VirtualHubRouteTableV2Paged, self).__init__(*args, **kwargs) +class WebApplicationFirewallPolicyPaged(Paged): + """ + A paging container for iterating over a list of :class:`WebApplicationFirewallPolicy ` object + """ + + _attribute_map = { + 'next_link': {'key': 'nextLink', 'type': 'str'}, + 'current_page': {'key': 'value', 'type': '[WebApplicationFirewallPolicy]'} + } + + def __init__(self, *args, **kwargs): + + super(WebApplicationFirewallPolicyPaged, self).__init__(*args, **kwargs) diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/__init__.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/__init__.py new file mode 100644 index 000000000000..92b9c5c07c3c --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/__init__.py @@ -0,0 +1,192 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from ._application_gateways_operations import ApplicationGatewaysOperations +from ._application_security_groups_operations import ApplicationSecurityGroupsOperations +from ._available_delegations_operations import AvailableDelegationsOperations +from ._available_resource_group_delegations_operations import AvailableResourceGroupDelegationsOperations +from ._available_service_aliases_operations import AvailableServiceAliasesOperations +from ._azure_firewalls_operations import AzureFirewallsOperations +from ._azure_firewall_fqdn_tags_operations import AzureFirewallFqdnTagsOperations +from ._bastion_hosts_operations import BastionHostsOperations +from ._ddos_custom_policies_operations import DdosCustomPoliciesOperations +from ._ddos_protection_plans_operations import DdosProtectionPlansOperations +from ._available_endpoint_services_operations import AvailableEndpointServicesOperations +from ._express_route_circuit_authorizations_operations import ExpressRouteCircuitAuthorizationsOperations +from ._express_route_circuit_peerings_operations import ExpressRouteCircuitPeeringsOperations +from ._express_route_circuit_connections_operations import ExpressRouteCircuitConnectionsOperations +from ._peer_express_route_circuit_connections_operations import PeerExpressRouteCircuitConnectionsOperations +from ._express_route_circuits_operations import ExpressRouteCircuitsOperations +from ._express_route_service_providers_operations import ExpressRouteServiceProvidersOperations +from ._express_route_cross_connections_operations import ExpressRouteCrossConnectionsOperations +from ._express_route_cross_connection_peerings_operations import ExpressRouteCrossConnectionPeeringsOperations +from ._express_route_gateways_operations import ExpressRouteGatewaysOperations +from ._express_route_connections_operations import ExpressRouteConnectionsOperations +from ._express_route_ports_locations_operations import ExpressRoutePortsLocationsOperations +from ._express_route_ports_operations import ExpressRoutePortsOperations +from ._express_route_links_operations import ExpressRouteLinksOperations +from ._firewall_policies_operations import FirewallPoliciesOperations +from ._firewall_policy_rule_groups_operations import FirewallPolicyRuleGroupsOperations +from ._ip_groups_operations import IpGroupsOperations +from ._load_balancers_operations import LoadBalancersOperations +from ._load_balancer_backend_address_pools_operations import LoadBalancerBackendAddressPoolsOperations +from ._load_balancer_frontend_ip_configurations_operations import LoadBalancerFrontendIPConfigurationsOperations +from ._inbound_nat_rules_operations import InboundNatRulesOperations +from ._load_balancer_load_balancing_rules_operations import LoadBalancerLoadBalancingRulesOperations +from ._load_balancer_outbound_rules_operations import LoadBalancerOutboundRulesOperations +from ._load_balancer_network_interfaces_operations import LoadBalancerNetworkInterfacesOperations +from ._load_balancer_probes_operations import LoadBalancerProbesOperations +from ._nat_gateways_operations import NatGatewaysOperations +from ._network_interfaces_operations import NetworkInterfacesOperations +from ._network_interface_ip_configurations_operations import NetworkInterfaceIPConfigurationsOperations +from ._network_interface_load_balancers_operations import NetworkInterfaceLoadBalancersOperations +from ._network_interface_tap_configurations_operations import NetworkInterfaceTapConfigurationsOperations +from ._network_profiles_operations import NetworkProfilesOperations +from ._network_security_groups_operations import NetworkSecurityGroupsOperations +from ._security_rules_operations import SecurityRulesOperations +from ._default_security_rules_operations import DefaultSecurityRulesOperations +from ._network_watchers_operations import NetworkWatchersOperations +from ._packet_captures_operations import PacketCapturesOperations +from ._connection_monitors_operations import ConnectionMonitorsOperations +from ._operations import Operations +from ._private_endpoints_operations import PrivateEndpointsOperations +from ._available_private_endpoint_types_operations import AvailablePrivateEndpointTypesOperations +from ._private_link_services_operations import PrivateLinkServicesOperations +from ._public_ip_addresses_operations import PublicIPAddressesOperations +from ._public_ip_prefixes_operations import PublicIPPrefixesOperations +from ._route_filters_operations import RouteFiltersOperations +from ._route_filter_rules_operations import RouteFilterRulesOperations +from ._route_tables_operations import RouteTablesOperations +from ._routes_operations import RoutesOperations +from ._bgp_service_communities_operations import BgpServiceCommunitiesOperations +from ._service_endpoint_policies_operations import ServiceEndpointPoliciesOperations +from ._service_endpoint_policy_definitions_operations import ServiceEndpointPolicyDefinitionsOperations +from ._service_tags_operations import ServiceTagsOperations +from ._usages_operations import UsagesOperations +from ._virtual_networks_operations import VirtualNetworksOperations +from ._subnets_operations import SubnetsOperations +from ._resource_navigation_links_operations import ResourceNavigationLinksOperations +from ._service_association_links_operations import ServiceAssociationLinksOperations +from ._virtual_network_peerings_operations import VirtualNetworkPeeringsOperations +from ._virtual_network_gateways_operations import VirtualNetworkGatewaysOperations +from ._virtual_network_gateway_connections_operations import VirtualNetworkGatewayConnectionsOperations +from ._local_network_gateways_operations import LocalNetworkGatewaysOperations +from ._virtual_network_taps_operations import VirtualNetworkTapsOperations +from ._virtual_routers_operations import VirtualRoutersOperations +from ._virtual_router_peerings_operations import VirtualRouterPeeringsOperations +from ._virtual_wans_operations import VirtualWansOperations +from ._vpn_sites_operations import VpnSitesOperations +from ._vpn_site_links_operations import VpnSiteLinksOperations +from ._vpn_sites_configuration_operations import VpnSitesConfigurationOperations +from ._vpn_server_configurations_operations import VpnServerConfigurationsOperations +from ._virtual_hubs_operations import VirtualHubsOperations +from ._hub_virtual_network_connections_operations import HubVirtualNetworkConnectionsOperations +from ._vpn_gateways_operations import VpnGatewaysOperations +from ._vpn_connections_operations import VpnConnectionsOperations +from ._vpn_site_link_connections_operations import VpnSiteLinkConnectionsOperations +from ._vpn_link_connections_operations import VpnLinkConnectionsOperations +from ._p2s_vpn_gateways_operations import P2sVpnGatewaysOperations +from ._vpn_server_configurations_associated_with_virtual_wan_operations import VpnServerConfigurationsAssociatedWithVirtualWanOperations +from ._virtual_hub_route_table_v2s_operations import VirtualHubRouteTableV2sOperations +from ._web_application_firewall_policies_operations import WebApplicationFirewallPoliciesOperations +from ._network_management_client_operations import NetworkManagementClientOperationsMixin + +__all__ = [ + 'ApplicationGatewaysOperations', + 'ApplicationSecurityGroupsOperations', + 'AvailableDelegationsOperations', + 'AvailableResourceGroupDelegationsOperations', + 'AvailableServiceAliasesOperations', + 'AzureFirewallsOperations', + 'AzureFirewallFqdnTagsOperations', + 'BastionHostsOperations', + 'DdosCustomPoliciesOperations', + 'DdosProtectionPlansOperations', + 'AvailableEndpointServicesOperations', + 'ExpressRouteCircuitAuthorizationsOperations', + 'ExpressRouteCircuitPeeringsOperations', + 'ExpressRouteCircuitConnectionsOperations', + 'PeerExpressRouteCircuitConnectionsOperations', + 'ExpressRouteCircuitsOperations', + 'ExpressRouteServiceProvidersOperations', + 'ExpressRouteCrossConnectionsOperations', + 'ExpressRouteCrossConnectionPeeringsOperations', + 'ExpressRouteGatewaysOperations', + 'ExpressRouteConnectionsOperations', + 'ExpressRoutePortsLocationsOperations', + 'ExpressRoutePortsOperations', + 'ExpressRouteLinksOperations', + 'FirewallPoliciesOperations', + 'FirewallPolicyRuleGroupsOperations', + 'IpGroupsOperations', + 'LoadBalancersOperations', + 'LoadBalancerBackendAddressPoolsOperations', + 'LoadBalancerFrontendIPConfigurationsOperations', + 'InboundNatRulesOperations', + 'LoadBalancerLoadBalancingRulesOperations', + 'LoadBalancerOutboundRulesOperations', + 'LoadBalancerNetworkInterfacesOperations', + 'LoadBalancerProbesOperations', + 'NatGatewaysOperations', + 'NetworkInterfacesOperations', + 'NetworkInterfaceIPConfigurationsOperations', + 'NetworkInterfaceLoadBalancersOperations', + 'NetworkInterfaceTapConfigurationsOperations', + 'NetworkProfilesOperations', + 'NetworkSecurityGroupsOperations', + 'SecurityRulesOperations', + 'DefaultSecurityRulesOperations', + 'NetworkWatchersOperations', + 'PacketCapturesOperations', + 'ConnectionMonitorsOperations', + 'Operations', + 'PrivateEndpointsOperations', + 'AvailablePrivateEndpointTypesOperations', + 'PrivateLinkServicesOperations', + 'PublicIPAddressesOperations', + 'PublicIPPrefixesOperations', + 'RouteFiltersOperations', + 'RouteFilterRulesOperations', + 'RouteTablesOperations', + 'RoutesOperations', + 'BgpServiceCommunitiesOperations', + 'ServiceEndpointPoliciesOperations', + 'ServiceEndpointPolicyDefinitionsOperations', + 'ServiceTagsOperations', + 'UsagesOperations', + 'VirtualNetworksOperations', + 'SubnetsOperations', + 'ResourceNavigationLinksOperations', + 'ServiceAssociationLinksOperations', + 'VirtualNetworkPeeringsOperations', + 'VirtualNetworkGatewaysOperations', + 'VirtualNetworkGatewayConnectionsOperations', + 'LocalNetworkGatewaysOperations', + 'VirtualNetworkTapsOperations', + 'VirtualRoutersOperations', + 'VirtualRouterPeeringsOperations', + 'VirtualWansOperations', + 'VpnSitesOperations', + 'VpnSiteLinksOperations', + 'VpnSitesConfigurationOperations', + 'VpnServerConfigurationsOperations', + 'VirtualHubsOperations', + 'HubVirtualNetworkConnectionsOperations', + 'VpnGatewaysOperations', + 'VpnConnectionsOperations', + 'VpnSiteLinkConnectionsOperations', + 'VpnLinkConnectionsOperations', + 'P2sVpnGatewaysOperations', + 'VpnServerConfigurationsAssociatedWithVirtualWanOperations', + 'VirtualHubRouteTableV2sOperations', + 'WebApplicationFirewallPoliciesOperations', + 'NetworkManagementClientOperationsMixin', +] diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_application_gateways_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_application_gateways_operations.py new file mode 100644 index 000000000000..b375b250aee9 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_application_gateways_operations.py @@ -0,0 +1,1259 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ApplicationGatewaysOperations(object): + """ApplicationGatewaysOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified application gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + application_gateway_name=application_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}'} + + def get( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified application gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApplicationGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.ApplicationGateway or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}'} + + + def _create_or_update_initial( + self, resource_group_name, application_gateway_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ApplicationGateway') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('ApplicationGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, application_gateway_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates the specified application gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param parameters: Parameters supplied to the create or update + application gateway operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGateway + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ApplicationGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ApplicationGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ApplicationGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + application_gateway_name=application_gateway_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ApplicationGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}'} + + def update_tags( + self, resource_group_name, application_gateway_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates the specified application gateway tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApplicationGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.ApplicationGateway or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all application gateways in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ApplicationGateway + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayPaged[~azure.mgmt.network.v2019_09_01.models.ApplicationGateway] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ApplicationGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the application gateways in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ApplicationGateway + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayPaged[~azure.mgmt.network.v2019_09_01.models.ApplicationGateway] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ApplicationGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGateways'} + + + def _start_initial( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.start.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def start( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Starts the specified application gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._start_initial( + resource_group_name=resource_group_name, + application_gateway_name=application_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + start.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/start'} + + + def _stop_initial( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.stop.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def stop( + self, resource_group_name, application_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Stops the specified application gateway in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._stop_initial( + resource_group_name=resource_group_name, + application_gateway_name=application_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + stop.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/stop'} + + + def _backend_health_initial( + self, resource_group_name, application_gateway_name, expand=None, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.backend_health.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGatewayBackendHealth', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def backend_health( + self, resource_group_name, application_gateway_name, expand=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the backend health of the specified application gateway in a + resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param expand: Expands BackendAddressPool and BackendHttpSettings + referenced in backend health. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ApplicationGatewayBackendHealth or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendHealth] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendHealth]] + :raises: :class:`CloudError` + """ + raw_result = self._backend_health_initial( + resource_group_name=resource_group_name, + application_gateway_name=application_gateway_name, + expand=expand, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ApplicationGatewayBackendHealth', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + backend_health.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/backendhealth'} + + + def _backend_health_on_demand_initial( + self, resource_group_name, application_gateway_name, probe_request, expand=None, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.backend_health_on_demand.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationGatewayName': self._serialize.url("application_gateway_name", application_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(probe_request, 'ApplicationGatewayOnDemandProbe') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGatewayBackendHealthOnDemand', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def backend_health_on_demand( + self, resource_group_name, application_gateway_name, probe_request, expand=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the backend health for given combination of backend pool and http + setting of the specified application gateway in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_gateway_name: The name of the application gateway. + :type application_gateway_name: str + :param probe_request: Request body for on-demand test probe operation. + :type probe_request: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayOnDemandProbe + :param expand: Expands BackendAddressPool and BackendHttpSettings + referenced in backend health. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ApplicationGatewayBackendHealthOnDemand or + ClientRawResponse if + raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendHealthOnDemand] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayBackendHealthOnDemand]] + :raises: :class:`CloudError` + """ + raw_result = self._backend_health_on_demand_initial( + resource_group_name=resource_group_name, + application_gateway_name=application_gateway_name, + probe_request=probe_request, + expand=expand, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ApplicationGatewayBackendHealthOnDemand', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + backend_health_on_demand.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/getBackendHealthOnDemand'} + + def list_available_server_variables( + self, custom_headers=None, raw=False, **operation_config): + """Lists all available server variables. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: list[str] or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.list_available_server_variables.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('[str]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_available_server_variables.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableServerVariables'} + + def list_available_request_headers( + self, custom_headers=None, raw=False, **operation_config): + """Lists all available request headers. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: list[str] or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.list_available_request_headers.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('[str]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_available_request_headers.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableRequestHeaders'} + + def list_available_response_headers( + self, custom_headers=None, raw=False, **operation_config): + """Lists all available response headers. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: list or ClientRawResponse if raw=true + :rtype: list[str] or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.list_available_response_headers.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('[str]', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_available_response_headers.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableResponseHeaders'} + + def list_available_waf_rule_sets( + self, custom_headers=None, raw=False, **operation_config): + """Lists all available web application firewall rule sets. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApplicationGatewayAvailableWafRuleSetsResult or + ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayAvailableWafRuleSetsResult + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_available_waf_rule_sets.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGatewayAvailableWafRuleSetsResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_available_waf_rule_sets.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableWafRuleSets'} + + def list_available_ssl_options( + self, custom_headers=None, raw=False, **operation_config): + """Lists available Ssl options for configuring Ssl policy. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApplicationGatewayAvailableSslOptions or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewayAvailableSslOptions + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_available_ssl_options.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGatewayAvailableSslOptions', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_available_ssl_options.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default'} + + def list_available_ssl_predefined_policies( + self, custom_headers=None, raw=False, **operation_config): + """Lists all SSL predefined policies for configuring Ssl policy. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of + ApplicationGatewaySslPredefinedPolicy + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslPredefinedPolicyPaged[~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslPredefinedPolicy] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_available_ssl_predefined_policies.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ApplicationGatewaySslPredefinedPolicyPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_available_ssl_predefined_policies.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies'} + + def get_ssl_predefined_policy( + self, predefined_policy_name, custom_headers=None, raw=False, **operation_config): + """Gets Ssl predefined policy with the specified policy name. + + :param predefined_policy_name: Name of Ssl predefined policy. + :type predefined_policy_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApplicationGatewaySslPredefinedPolicy or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ApplicationGatewaySslPredefinedPolicy + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_ssl_predefined_policy.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'predefinedPolicyName': self._serialize.url("predefined_policy_name", predefined_policy_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ApplicationGatewaySslPredefinedPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_ssl_predefined_policy.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGatewayAvailableSslOptions/default/predefinedPolicies/{predefinedPolicyName}'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_application_security_groups_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_application_security_groups_operations.py new file mode 100644 index 000000000000..4c2a0cf3a449 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_application_security_groups_operations.py @@ -0,0 +1,497 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ApplicationSecurityGroupsOperations(object): + """ApplicationSecurityGroupsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, application_security_group_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationSecurityGroupName': self._serialize.url("application_security_group_name", application_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, application_security_group_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified application security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_security_group_name: The name of the application + security group. + :type application_security_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + application_security_group_name=application_security_group_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}'} + + def get( + self, resource_group_name, application_security_group_name, custom_headers=None, raw=False, **operation_config): + """Gets information about the specified application security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_security_group_name: The name of the application + security group. + :type application_security_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApplicationSecurityGroup or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ApplicationSecurityGroup or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationSecurityGroupName': self._serialize.url("application_security_group_name", application_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ApplicationSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}'} + + + def _create_or_update_initial( + self, resource_group_name, application_security_group_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationSecurityGroupName': self._serialize.url("application_security_group_name", application_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ApplicationSecurityGroup') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ApplicationSecurityGroup', response) + if response.status_code == 201: + deserialized = self._deserialize('ApplicationSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, application_security_group_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates an application security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_security_group_name: The name of the application + security group. + :type application_security_group_name: str + :param parameters: Parameters supplied to the create or update + ApplicationSecurityGroup operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.ApplicationSecurityGroup + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ApplicationSecurityGroup or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ApplicationSecurityGroup] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ApplicationSecurityGroup]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + application_security_group_name=application_security_group_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ApplicationSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}'} + + def update_tags( + self, resource_group_name, application_security_group_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates an application security group's tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param application_security_group_name: The name of the application + security group. + :type application_security_group_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ApplicationSecurityGroup or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ApplicationSecurityGroup or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'applicationSecurityGroupName': self._serialize.url("application_security_group_name", application_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ApplicationSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups/{applicationSecurityGroupName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all application security groups in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ApplicationSecurityGroup + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ApplicationSecurityGroupPaged[~azure.mgmt.network.v2019_09_01.models.ApplicationSecurityGroup] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ApplicationSecurityGroupPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationSecurityGroups'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all the application security groups in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ApplicationSecurityGroup + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ApplicationSecurityGroupPaged[~azure.mgmt.network.v2019_09_01.models.ApplicationSecurityGroup] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ApplicationSecurityGroupPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationSecurityGroups'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_delegations_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_delegations_operations.py new file mode 100644 index 000000000000..a6b970467c81 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_delegations_operations.py @@ -0,0 +1,110 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class AvailableDelegationsOperations(object): + """AvailableDelegationsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, location, custom_headers=None, raw=False, **operation_config): + """Gets all of the available subnet delegations for this subscription in + this region. + + :param location: The location of the subnet. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AvailableDelegation + :rtype: + ~azure.mgmt.network.v2019_09_01.models.AvailableDelegationPaged[~azure.mgmt.network.v2019_09_01.models.AvailableDelegation] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.AvailableDelegationPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/availableDelegations'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_endpoint_services_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_endpoint_services_operations.py new file mode 100644 index 000000000000..2c0f3ec8b4b8 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_endpoint_services_operations.py @@ -0,0 +1,109 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class AvailableEndpointServicesOperations(object): + """AvailableEndpointServicesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, location, custom_headers=None, raw=False, **operation_config): + """List what values of endpoint services are available for use. + + :param location: The location to check available endpoint services. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of EndpointServiceResult + :rtype: + ~azure.mgmt.network.v2019_09_01.models.EndpointServiceResultPaged[~azure.mgmt.network.v2019_09_01.models.EndpointServiceResult] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.EndpointServiceResultPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/virtualNetworkAvailableEndpointServices'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_private_endpoint_types_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_private_endpoint_types_operations.py new file mode 100644 index 000000000000..b42d50f0890d --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_private_endpoint_types_operations.py @@ -0,0 +1,183 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class AvailablePrivateEndpointTypesOperations(object): + """AvailablePrivateEndpointTypesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, location, custom_headers=None, raw=False, **operation_config): + """Returns all of the resource types that can be linked to a Private + Endpoint in this subscription in this region. + + :param location: The location of the domain name. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AvailablePrivateEndpointType + :rtype: + ~azure.mgmt.network.v2019_09_01.models.AvailablePrivateEndpointTypePaged[~azure.mgmt.network.v2019_09_01.models.AvailablePrivateEndpointType] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.AvailablePrivateEndpointTypePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/availablePrivateEndpointTypes'} + + def list_by_resource_group( + self, location, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Returns all of the resource types that can be linked to a Private + Endpoint in this subscription in this region. + + :param location: The location of the domain name. + :type location: str + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AvailablePrivateEndpointType + :rtype: + ~azure.mgmt.network.v2019_09_01.models.AvailablePrivateEndpointTypePaged[~azure.mgmt.network.v2019_09_01.models.AvailablePrivateEndpointType] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.AvailablePrivateEndpointTypePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availablePrivateEndpointTypes'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_resource_group_delegations_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_resource_group_delegations_operations.py new file mode 100644 index 000000000000..35b33b5efb52 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_resource_group_delegations_operations.py @@ -0,0 +1,113 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class AvailableResourceGroupDelegationsOperations(object): + """AvailableResourceGroupDelegationsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, location, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all of the available subnet delegations for this resource group in + this region. + + :param location: The location of the domain name. + :type location: str + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AvailableDelegation + :rtype: + ~azure.mgmt.network.v2019_09_01.models.AvailableDelegationPaged[~azure.mgmt.network.v2019_09_01.models.AvailableDelegation] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.AvailableDelegationPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availableDelegations'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_service_aliases_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_service_aliases_operations.py new file mode 100644 index 000000000000..819397943ef9 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_available_service_aliases_operations.py @@ -0,0 +1,183 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class AvailableServiceAliasesOperations(object): + """AvailableServiceAliasesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, location, custom_headers=None, raw=False, **operation_config): + """Gets all available service aliases for this subscription in this + region. + + :param location: The location. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AvailableServiceAlias + :rtype: + ~azure.mgmt.network.v2019_09_01.models.AvailableServiceAliasPaged[~azure.mgmt.network.v2019_09_01.models.AvailableServiceAlias] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.AvailableServiceAliasPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/availableServiceAliases'} + + def list_by_resource_group( + self, resource_group_name, location, custom_headers=None, raw=False, **operation_config): + """Gets all available service aliases for this resource group in this + region. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param location: The location. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AvailableServiceAlias + :rtype: + ~azure.mgmt.network.v2019_09_01.models.AvailableServiceAliasPaged[~azure.mgmt.network.v2019_09_01.models.AvailableServiceAlias] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'location': self._serialize.url("location", location, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.AvailableServiceAliasPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/availableServiceAliases'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_azure_firewall_fqdn_tags_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_azure_firewall_fqdn_tags_operations.py new file mode 100644 index 000000000000..08e26ffa6e93 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_azure_firewall_fqdn_tags_operations.py @@ -0,0 +1,106 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class AzureFirewallFqdnTagsOperations(object): + """AzureFirewallFqdnTagsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the Azure Firewall FQDN Tags in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AzureFirewallFqdnTag + :rtype: + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallFqdnTagPaged[~azure.mgmt.network.v2019_09_01.models.AzureFirewallFqdnTag] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.AzureFirewallFqdnTagPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/azureFirewallFqdnTags'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_azure_firewalls_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_azure_firewalls_operations.py new file mode 100644 index 000000000000..d9e7b7b0bd6f --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_azure_firewalls_operations.py @@ -0,0 +1,489 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class AzureFirewallsOperations(object): + """AzureFirewallsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, azure_firewall_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'azureFirewallName': self._serialize.url("azure_firewall_name", azure_firewall_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, azure_firewall_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified Azure Firewall. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param azure_firewall_name: The name of the Azure Firewall. + :type azure_firewall_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + azure_firewall_name=azure_firewall_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls/{azureFirewallName}'} + + def get( + self, resource_group_name, azure_firewall_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified Azure Firewall. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param azure_firewall_name: The name of the Azure Firewall. + :type azure_firewall_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AzureFirewall or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.AzureFirewall or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'azureFirewallName': self._serialize.url("azure_firewall_name", azure_firewall_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('AzureFirewall', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls/{azureFirewallName}'} + + + def _create_or_update_initial( + self, resource_group_name, azure_firewall_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'azureFirewallName': self._serialize.url("azure_firewall_name", azure_firewall_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AzureFirewall') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AzureFirewall', response) + if response.status_code == 201: + deserialized = self._deserialize('AzureFirewall', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, azure_firewall_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates the specified Azure Firewall. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param azure_firewall_name: The name of the Azure Firewall. + :type azure_firewall_name: str + :param parameters: Parameters supplied to the create or update Azure + Firewall operation. + :type parameters: ~azure.mgmt.network.v2019_09_01.models.AzureFirewall + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns AzureFirewall or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.AzureFirewall] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.AzureFirewall]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + azure_firewall_name=azure_firewall_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('AzureFirewall', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls/{azureFirewallName}'} + + def update_tags( + self, resource_group_name, azure_firewall_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates tags of an Azure Firewall resource. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param azure_firewall_name: The name of the Azure Firewall. + :type azure_firewall_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: AzureFirewall or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.AzureFirewall or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'azureFirewallName': self._serialize.url("azure_firewall_name", azure_firewall_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('AzureFirewall', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls/{azureFirewallName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all Azure Firewalls in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AzureFirewall + :rtype: + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallPaged[~azure.mgmt.network.v2019_09_01.models.AzureFirewall] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.AzureFirewallPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/azureFirewalls'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the Azure Firewalls in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AzureFirewall + :rtype: + ~azure.mgmt.network.v2019_09_01.models.AzureFirewallPaged[~azure.mgmt.network.v2019_09_01.models.AzureFirewall] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.AzureFirewallPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/azureFirewalls'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_bastion_hosts_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_bastion_hosts_operations.py new file mode 100644 index 000000000000..481a83032250 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_bastion_hosts_operations.py @@ -0,0 +1,420 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class BastionHostsOperations(object): + """BastionHostsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, bastion_host_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'bastionHostName': self._serialize.url("bastion_host_name", bastion_host_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, bastion_host_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified Bastion Host. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param bastion_host_name: The name of the Bastion Host. + :type bastion_host_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + bastion_host_name=bastion_host_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}'} + + def get( + self, resource_group_name, bastion_host_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified Bastion Host. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param bastion_host_name: The name of the Bastion Host. + :type bastion_host_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: BastionHost or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.BastionHost or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'bastionHostName': self._serialize.url("bastion_host_name", bastion_host_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('BastionHost', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}'} + + + def _create_or_update_initial( + self, resource_group_name, bastion_host_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'bastionHostName': self._serialize.url("bastion_host_name", bastion_host_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'BastionHost') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('BastionHost', response) + if response.status_code == 201: + deserialized = self._deserialize('BastionHost', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, bastion_host_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates the specified Bastion Host. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param bastion_host_name: The name of the Bastion Host. + :type bastion_host_name: str + :param parameters: Parameters supplied to the create or update Bastion + Host operation. + :type parameters: ~azure.mgmt.network.v2019_09_01.models.BastionHost + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns BastionHost or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.BastionHost] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.BastionHost]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + bastion_host_name=bastion_host_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('BastionHost', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts/{bastionHostName}'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all Bastion Hosts in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of BastionHost + :rtype: + ~azure.mgmt.network.v2019_09_01.models.BastionHostPaged[~azure.mgmt.network.v2019_09_01.models.BastionHost] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.BastionHostPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/bastionHosts'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all Bastion Hosts in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of BastionHost + :rtype: + ~azure.mgmt.network.v2019_09_01.models.BastionHostPaged[~azure.mgmt.network.v2019_09_01.models.BastionHost] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.BastionHostPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/bastionHosts'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_bgp_service_communities_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_bgp_service_communities_operations.py new file mode 100644 index 000000000000..db933a78b580 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_bgp_service_communities_operations.py @@ -0,0 +1,106 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class BgpServiceCommunitiesOperations(object): + """BgpServiceCommunitiesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the available bgp service communities. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of BgpServiceCommunity + :rtype: + ~azure.mgmt.network.v2019_09_01.models.BgpServiceCommunityPaged[~azure.mgmt.network.v2019_09_01.models.BgpServiceCommunity] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.BgpServiceCommunityPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/bgpServiceCommunities'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_connection_monitors_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_connection_monitors_operations.py new file mode 100644 index 000000000000..6d65de4fcc6b --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_connection_monitors_operations.py @@ -0,0 +1,706 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ConnectionMonitorsOperations(object): + """ConnectionMonitorsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-06-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-06-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, network_watcher_name, connection_monitor_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'connectionMonitorName': self._serialize.url("connection_monitor_name", connection_monitor_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ConnectionMonitor') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionMonitorResult', response) + if response.status_code == 201: + deserialized = self._deserialize('ConnectionMonitorResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, network_watcher_name, connection_monitor_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Create or update a connection monitor. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param connection_monitor_name: The name of the connection monitor. + :type connection_monitor_name: str + :param parameters: Parameters that define the operation to create a + connection monitor. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.ConnectionMonitor + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ConnectionMonitorResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + connection_monitor_name=connection_monitor_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ConnectionMonitorResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}'} + + def get( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, **operation_config): + """Gets a connection monitor by name. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param connection_monitor_name: The name of the connection monitor. + :type connection_monitor_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ConnectionMonitorResult or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorResult + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'connectionMonitorName': self._serialize.url("connection_monitor_name", connection_monitor_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ConnectionMonitorResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}'} + + + def _delete_initial( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'connectionMonitorName': self._serialize.url("connection_monitor_name", connection_monitor_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [202, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified connection monitor. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param connection_monitor_name: The name of the connection monitor. + :type connection_monitor_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + connection_monitor_name=connection_monitor_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}'} + + def update_tags( + self, resource_group_name, network_watcher_name, connection_monitor_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Update tags of the specified connection monitor. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param connection_monitor_name: The name of the connection monitor. + :type connection_monitor_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ConnectionMonitorResult or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorResult + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'connectionMonitorName': self._serialize.url("connection_monitor_name", connection_monitor_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ConnectionMonitorResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}'} + + + def _stop_initial( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.stop.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'connectionMonitorName': self._serialize.url("connection_monitor_name", connection_monitor_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def stop( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Stops the specified connection monitor. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param connection_monitor_name: The name of the connection monitor. + :type connection_monitor_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._stop_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + connection_monitor_name=connection_monitor_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + stop.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/stop'} + + + def _start_initial( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.start.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'connectionMonitorName': self._serialize.url("connection_monitor_name", connection_monitor_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def start( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Starts the specified connection monitor. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param connection_monitor_name: The name of the connection monitor. + :type connection_monitor_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._start_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + connection_monitor_name=connection_monitor_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + start.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/start'} + + + def _query_initial( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.query.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'connectionMonitorName': self._serialize.url("connection_monitor_name", connection_monitor_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionMonitorQueryResult', response) + if response.status_code == 202: + deserialized = self._deserialize('ConnectionMonitorQueryResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def query( + self, resource_group_name, network_watcher_name, connection_monitor_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Query a snapshot of the most recent connection states. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param connection_monitor_name: The name given to the connection + monitor. + :type connection_monitor_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ConnectionMonitorQueryResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorQueryResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorQueryResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._query_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + connection_monitor_name=connection_monitor_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ConnectionMonitorQueryResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + query.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors/{connectionMonitorName}/query'} + + def list( + self, resource_group_name, network_watcher_name, custom_headers=None, raw=False, **operation_config): + """Lists all connection monitors for the specified Network Watcher. + + :param resource_group_name: The name of the resource group containing + Network Watcher. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ConnectionMonitorResult + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorResultPaged[~azure.mgmt.network.v2019_09_01.models.ConnectionMonitorResult] + :raises: + :class:`ErrorResponseException` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ConnectionMonitorResultPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectionMonitors'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_ddos_custom_policies_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_ddos_custom_policies_operations.py new file mode 100644 index 000000000000..c5a3cc19e2f0 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_ddos_custom_policies_operations.py @@ -0,0 +1,355 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class DdosCustomPoliciesOperations(object): + """DdosCustomPoliciesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, ddos_custom_policy_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'ddosCustomPolicyName': self._serialize.url("ddos_custom_policy_name", ddos_custom_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, ddos_custom_policy_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified DDoS custom policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param ddos_custom_policy_name: The name of the DDoS custom policy. + :type ddos_custom_policy_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + ddos_custom_policy_name=ddos_custom_policy_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosCustomPolicies/{ddosCustomPolicyName}'} + + def get( + self, resource_group_name, ddos_custom_policy_name, custom_headers=None, raw=False, **operation_config): + """Gets information about the specified DDoS custom policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param ddos_custom_policy_name: The name of the DDoS custom policy. + :type ddos_custom_policy_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DdosCustomPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.DdosCustomPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'ddosCustomPolicyName': self._serialize.url("ddos_custom_policy_name", ddos_custom_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('DdosCustomPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosCustomPolicies/{ddosCustomPolicyName}'} + + + def _create_or_update_initial( + self, resource_group_name, ddos_custom_policy_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'ddosCustomPolicyName': self._serialize.url("ddos_custom_policy_name", ddos_custom_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'DdosCustomPolicy') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DdosCustomPolicy', response) + if response.status_code == 201: + deserialized = self._deserialize('DdosCustomPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, ddos_custom_policy_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a DDoS custom policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param ddos_custom_policy_name: The name of the DDoS custom policy. + :type ddos_custom_policy_name: str + :param parameters: Parameters supplied to the create or update + operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.DdosCustomPolicy + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns DdosCustomPolicy or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.DdosCustomPolicy] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.DdosCustomPolicy]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + ddos_custom_policy_name=ddos_custom_policy_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('DdosCustomPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosCustomPolicies/{ddosCustomPolicyName}'} + + def update_tags( + self, resource_group_name, ddos_custom_policy_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Update a DDoS custom policy tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param ddos_custom_policy_name: The name of the DDoS custom policy. + :type ddos_custom_policy_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DdosCustomPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.DdosCustomPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'ddosCustomPolicyName': self._serialize.url("ddos_custom_policy_name", ddos_custom_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('DdosCustomPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosCustomPolicies/{ddosCustomPolicyName}'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_ddos_protection_plans_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_ddos_protection_plans_operations.py new file mode 100644 index 000000000000..637563787e93 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_ddos_protection_plans_operations.py @@ -0,0 +1,497 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class DdosProtectionPlansOperations(object): + """DdosProtectionPlansOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, ddos_protection_plan_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'ddosProtectionPlanName': self._serialize.url("ddos_protection_plan_name", ddos_protection_plan_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, ddos_protection_plan_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified DDoS protection plan. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param ddos_protection_plan_name: The name of the DDoS protection + plan. + :type ddos_protection_plan_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + ddos_protection_plan_name=ddos_protection_plan_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans/{ddosProtectionPlanName}'} + + def get( + self, resource_group_name, ddos_protection_plan_name, custom_headers=None, raw=False, **operation_config): + """Gets information about the specified DDoS protection plan. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param ddos_protection_plan_name: The name of the DDoS protection + plan. + :type ddos_protection_plan_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DdosProtectionPlan or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.DdosProtectionPlan or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'ddosProtectionPlanName': self._serialize.url("ddos_protection_plan_name", ddos_protection_plan_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('DdosProtectionPlan', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans/{ddosProtectionPlanName}'} + + + def _create_or_update_initial( + self, resource_group_name, ddos_protection_plan_name, location=None, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.DdosProtectionPlan(location=location, tags=tags) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'ddosProtectionPlanName': self._serialize.url("ddos_protection_plan_name", ddos_protection_plan_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'DdosProtectionPlan') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('DdosProtectionPlan', response) + if response.status_code == 201: + deserialized = self._deserialize('DdosProtectionPlan', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, ddos_protection_plan_name, location=None, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a DDoS protection plan. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param ddos_protection_plan_name: The name of the DDoS protection + plan. + :type ddos_protection_plan_name: str + :param location: Resource location. + :type location: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns DdosProtectionPlan or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.DdosProtectionPlan] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.DdosProtectionPlan]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + ddos_protection_plan_name=ddos_protection_plan_name, + location=location, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('DdosProtectionPlan', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans/{ddosProtectionPlanName}'} + + def update_tags( + self, resource_group_name, ddos_protection_plan_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Update a DDoS protection plan tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param ddos_protection_plan_name: The name of the DDoS protection + plan. + :type ddos_protection_plan_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DdosProtectionPlan or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.DdosProtectionPlan or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'ddosProtectionPlanName': self._serialize.url("ddos_protection_plan_name", ddos_protection_plan_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('DdosProtectionPlan', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans/{ddosProtectionPlanName}'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets all DDoS protection plans in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DdosProtectionPlan + :rtype: + ~azure.mgmt.network.v2019_09_01.models.DdosProtectionPlanPaged[~azure.mgmt.network.v2019_09_01.models.DdosProtectionPlan] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.DdosProtectionPlanPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/ddosProtectionPlans'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all the DDoS protection plans in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of DdosProtectionPlan + :rtype: + ~azure.mgmt.network.v2019_09_01.models.DdosProtectionPlanPaged[~azure.mgmt.network.v2019_09_01.models.DdosProtectionPlan] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.DdosProtectionPlanPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ddosProtectionPlans'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_default_security_rules_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_default_security_rules_operations.py new file mode 100644 index 000000000000..af762535cc8c --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_default_security_rules_operations.py @@ -0,0 +1,179 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class DefaultSecurityRulesOperations(object): + """DefaultSecurityRulesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, resource_group_name, network_security_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all default security rules in a network security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SecurityRule + :rtype: + ~azure.mgmt.network.v2019_09_01.models.SecurityRulePaged[~azure.mgmt.network.v2019_09_01.models.SecurityRule] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.SecurityRulePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules'} + + def get( + self, resource_group_name, network_security_group_name, default_security_rule_name, custom_headers=None, raw=False, **operation_config): + """Get the specified default network security rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param default_security_rule_name: The name of the default security + rule. + :type default_security_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecurityRule or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.SecurityRule or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'defaultSecurityRuleName': self._serialize.url("default_security_rule_name", default_security_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('SecurityRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules/{defaultSecurityRuleName}'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_circuit_authorizations_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_circuit_authorizations_operations.py new file mode 100644 index 000000000000..f9b0ab4b8c37 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_circuit_authorizations_operations.py @@ -0,0 +1,379 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteCircuitAuthorizationsOperations(object): + """ExpressRouteCircuitAuthorizationsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, circuit_name, authorization_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'authorizationName': self._serialize.url("authorization_name", authorization_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, circuit_name, authorization_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified authorization from the specified express route + circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param authorization_name: The name of the authorization. + :type authorization_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + authorization_name=authorization_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations/{authorizationName}'} + + def get( + self, resource_group_name, circuit_name, authorization_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified authorization from the specified express route + circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param authorization_name: The name of the authorization. + :type authorization_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCircuitAuthorization or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitAuthorization + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'authorizationName': self._serialize.url("authorization_name", authorization_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitAuthorization', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations/{authorizationName}'} + + + def _create_or_update_initial( + self, resource_group_name, circuit_name, authorization_name, id=None, name=None, custom_headers=None, raw=False, **operation_config): + authorization_parameters = models.ExpressRouteCircuitAuthorization(id=id, name=name) + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'authorizationName': self._serialize.url("authorization_name", authorization_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(authorization_parameters, 'ExpressRouteCircuitAuthorization') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitAuthorization', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRouteCircuitAuthorization', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, circuit_name, authorization_name, id=None, name=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates an authorization in the specified express route + circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param authorization_name: The name of the authorization. + :type authorization_name: str + :param id: Resource ID. + :type id: str + :param name: The name of the resource that is unique within a resource + group. This name can be used to access the resource. + :type name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitAuthorization or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitAuthorization] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitAuthorization]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + authorization_name=authorization_name, + id=id, + name=name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitAuthorization', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations/{authorizationName}'} + + def list( + self, resource_group_name, circuit_name, custom_headers=None, raw=False, **operation_config): + """Gets all authorizations in an express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the circuit. + :type circuit_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteCircuitAuthorization + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitAuthorizationPaged[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitAuthorization] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ExpressRouteCircuitAuthorizationPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/authorizations'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_circuit_connections_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_circuit_connections_operations.py new file mode 100644 index 000000000000..4503e319ae3f --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_circuit_connections_operations.py @@ -0,0 +1,394 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteCircuitConnectionsOperations(object): + """ExpressRouteCircuitConnectionsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, circuit_name, peering_name, connection_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, circuit_name, peering_name, connection_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified Express Route Circuit Connection from the + specified express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param connection_name: The name of the express route circuit + connection. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + connection_name=connection_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections/{connectionName}'} + + def get( + self, resource_group_name, circuit_name, peering_name, connection_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified Express Route Circuit Connection from the specified + express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param connection_name: The name of the express route circuit + connection. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCircuitConnection or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitConnection + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections/{connectionName}'} + + + def _create_or_update_initial( + self, resource_group_name, circuit_name, peering_name, connection_name, express_route_circuit_connection_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(express_route_circuit_connection_parameters, 'ExpressRouteCircuitConnection') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitConnection', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRouteCircuitConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, circuit_name, peering_name, connection_name, express_route_circuit_connection_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a Express Route Circuit Connection in the specified + express route circuits. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param connection_name: The name of the express route circuit + connection. + :type connection_name: str + :param express_route_circuit_connection_parameters: Parameters + supplied to the create or update express route circuit connection + operation. + :type express_route_circuit_connection_parameters: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitConnection + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitConnection or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitConnection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitConnection]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + connection_name=connection_name, + express_route_circuit_connection_parameters=express_route_circuit_connection_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections/{connectionName}'} + + def list( + self, resource_group_name, circuit_name, peering_name, custom_headers=None, raw=False, **operation_config): + """Gets all global reach connections associated with a private peering in + an express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteCircuitConnection + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitConnectionPaged[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitConnection] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ExpressRouteCircuitConnectionPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/connections'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_circuit_peerings_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_circuit_peerings_operations.py new file mode 100644 index 000000000000..6fd3d23ecca2 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_circuit_peerings_operations.py @@ -0,0 +1,371 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteCircuitPeeringsOperations(object): + """ExpressRouteCircuitPeeringsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, circuit_name, peering_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, circuit_name, peering_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified peering from the specified express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}'} + + def get( + self, resource_group_name, circuit_name, peering_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified peering for the express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCircuitPeering or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeering or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}'} + + + def _create_or_update_initial( + self, resource_group_name, circuit_name, peering_name, peering_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(peering_parameters, 'ExpressRouteCircuitPeering') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitPeering', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRouteCircuitPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, circuit_name, peering_name, peering_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a peering in the specified express route circuits. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param peering_parameters: Parameters supplied to the create or update + express route circuit peering operation. + :type peering_parameters: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeering + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitPeering or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeering] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeering]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + peering_parameters=peering_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}'} + + def list( + self, resource_group_name, circuit_name, custom_headers=None, raw=False, **operation_config): + """Gets all peerings in a specified express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteCircuitPeering + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeeringPaged[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPeering] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ExpressRouteCircuitPeeringPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_circuits_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_circuits_operations.py new file mode 100644 index 000000000000..12194ddd8460 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_circuits_operations.py @@ -0,0 +1,928 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteCircuitsOperations(object): + """ExpressRouteCircuitsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, circuit_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, circuit_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}'} + + def get( + self, resource_group_name, circuit_name, custom_headers=None, raw=False, **operation_config): + """Gets information about the specified express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of express route circuit. + :type circuit_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCircuit or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuit or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuit', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}'} + + + def _create_or_update_initial( + self, resource_group_name, circuit_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ExpressRouteCircuit') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuit', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRouteCircuit', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, circuit_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates an express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the circuit. + :type circuit_name: str + :param parameters: Parameters supplied to the create or update express + route circuit operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuit + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ExpressRouteCircuit or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuit] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuit]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuit', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}'} + + def update_tags( + self, resource_group_name, circuit_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates an express route circuit tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the circuit. + :type circuit_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCircuit or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuit or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuit', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}'} + + + def _list_arp_table_initial( + self, resource_group_name, circuit_name, peering_name, device_path, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_arp_table.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'devicePath': self._serialize.url("device_path", device_path, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitsArpTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_arp_table( + self, resource_group_name, circuit_name, peering_name, device_path, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the currently advertised ARP table associated with the express + route circuit in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param device_path: The path of the device. + :type device_path: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitsArpTableListResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitsArpTableListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitsArpTableListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_arp_table_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + device_path=device_path, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitsArpTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_arp_table.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/arpTables/{devicePath}'} + + + def _list_routes_table_initial( + self, resource_group_name, circuit_name, peering_name, device_path, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_routes_table.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'devicePath': self._serialize.url("device_path", device_path, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitsRoutesTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_routes_table( + self, resource_group_name, circuit_name, peering_name, device_path, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the currently advertised routes table associated with the express + route circuit in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param device_path: The path of the device. + :type device_path: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitsRoutesTableListResult or + ClientRawResponse if + raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitsRoutesTableListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitsRoutesTableListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_routes_table_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + device_path=device_path, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitsRoutesTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_routes_table.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTables/{devicePath}'} + + + def _list_routes_table_summary_initial( + self, resource_group_name, circuit_name, peering_name, device_path, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_routes_table_summary.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'devicePath': self._serialize.url("device_path", device_path, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitsRoutesTableSummaryListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_routes_table_summary( + self, resource_group_name, circuit_name, peering_name, device_path, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the currently advertised routes table summary associated with the + express route circuit in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param device_path: The path of the device. + :type device_path: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitsRoutesTableSummaryListResult or + ClientRawResponse if + raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitsRoutesTableSummaryListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitsRoutesTableSummaryListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_routes_table_summary_initial( + resource_group_name=resource_group_name, + circuit_name=circuit_name, + peering_name=peering_name, + device_path=device_path, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitsRoutesTableSummaryListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_routes_table_summary.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/routeTablesSummary/{devicePath}'} + + def get_stats( + self, resource_group_name, circuit_name, custom_headers=None, raw=False, **operation_config): + """Gets all the stats from an express route circuit in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCircuitStats or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitStats or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_stats.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitStats', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_stats.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/stats'} + + def get_peering_stats( + self, resource_group_name, circuit_name, peering_name, custom_headers=None, raw=False, **operation_config): + """Gets all stats from an express route circuit in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCircuitStats or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitStats or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_peering_stats.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitStats', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_peering_stats.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/stats'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all the express route circuits in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteCircuit + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPaged[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuit] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ExpressRouteCircuitPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the express route circuits in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteCircuit + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitPaged[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuit] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ExpressRouteCircuitPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteCircuits'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_connections_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_connections_operations.py new file mode 100644 index 000000000000..d1130ae3a589 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_connections_operations.py @@ -0,0 +1,364 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteConnectionsOperations(object): + """ExpressRouteConnectionsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, express_route_gateway_name, connection_name, put_express_route_connection_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRouteGatewayName': self._serialize.url("express_route_gateway_name", express_route_gateway_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(put_express_route_connection_parameters, 'ExpressRouteConnection') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteConnection', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRouteConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, express_route_gateway_name, connection_name, put_express_route_connection_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a connection between an ExpressRoute gateway and an + ExpressRoute circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_gateway_name: The name of the ExpressRoute + gateway. + :type express_route_gateway_name: str + :param connection_name: The name of the connection subresource. + :type connection_name: str + :param put_express_route_connection_parameters: Parameters required in + an ExpressRouteConnection PUT operation. + :type put_express_route_connection_parameters: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteConnection + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ExpressRouteConnection + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ExpressRouteConnection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ExpressRouteConnection]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + express_route_gateway_name=express_route_gateway_name, + connection_name=connection_name, + put_express_route_connection_parameters=put_express_route_connection_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections/{connectionName}'} + + def get( + self, resource_group_name, express_route_gateway_name, connection_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified ExpressRouteConnection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_gateway_name: The name of the ExpressRoute + gateway. + :type express_route_gateway_name: str + :param connection_name: The name of the ExpressRoute connection. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteConnection or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.ExpressRouteConnection + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRouteGatewayName': self._serialize.url("express_route_gateway_name", express_route_gateway_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections/{connectionName}'} + + + def _delete_initial( + self, resource_group_name, express_route_gateway_name, connection_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRouteGatewayName': self._serialize.url("express_route_gateway_name", express_route_gateway_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, express_route_gateway_name, connection_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a connection to a ExpressRoute circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_gateway_name: The name of the ExpressRoute + gateway. + :type express_route_gateway_name: str + :param connection_name: The name of the connection subresource. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + express_route_gateway_name=express_route_gateway_name, + connection_name=connection_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections/{connectionName}'} + + def list( + self, resource_group_name, express_route_gateway_name, custom_headers=None, raw=False, **operation_config): + """Lists ExpressRouteConnections. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_gateway_name: The name of the ExpressRoute + gateway. + :type express_route_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteConnectionList or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteConnectionList or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRouteGatewayName': self._serialize.url("express_route_gateway_name", express_route_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteConnectionList', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}/expressRouteConnections'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_cross_connection_peerings_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_cross_connection_peerings_operations.py new file mode 100644 index 000000000000..fe1c2f8cd05d --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_cross_connection_peerings_operations.py @@ -0,0 +1,378 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteCrossConnectionPeeringsOperations(object): + """ExpressRouteCrossConnectionPeeringsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, resource_group_name, cross_connection_name, custom_headers=None, raw=False, **operation_config): + """Gets all peerings in a specified ExpressRouteCrossConnection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of + ExpressRouteCrossConnectionPeering + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnectionPeeringPaged[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnectionPeering] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ExpressRouteCrossConnectionPeeringPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings'} + + + def _delete_initial( + self, resource_group_name, cross_connection_name, peering_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, cross_connection_name, peering_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified peering from the ExpressRouteCrossConnection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + peering_name=peering_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}'} + + def get( + self, resource_group_name, cross_connection_name, peering_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified peering for the ExpressRouteCrossConnection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCrossConnectionPeering or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnectionPeering + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCrossConnectionPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}'} + + + def _create_or_update_initial( + self, resource_group_name, cross_connection_name, peering_name, peering_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(peering_parameters, 'ExpressRouteCrossConnectionPeering') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCrossConnectionPeering', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRouteCrossConnectionPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, cross_connection_name, peering_name, peering_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a peering in the specified + ExpressRouteCrossConnection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param peering_parameters: Parameters supplied to the create or update + ExpressRouteCrossConnection peering operation. + :type peering_parameters: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnectionPeering + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCrossConnectionPeering or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnectionPeering] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnectionPeering]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + peering_name=peering_name, + peering_parameters=peering_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCrossConnectionPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_cross_connections_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_cross_connections_operations.py new file mode 100644 index 000000000000..40e8c0613b9d --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_cross_connections_operations.py @@ -0,0 +1,729 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteCrossConnectionsOperations(object): + """ExpressRouteCrossConnectionsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Retrieves all the ExpressRouteCrossConnections in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteCrossConnection + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnectionPaged[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnection] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ExpressRouteCrossConnectionPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteCrossConnections'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Retrieves all the ExpressRouteCrossConnections in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteCrossConnection + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnectionPaged[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnection] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ExpressRouteCrossConnectionPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections'} + + def get( + self, resource_group_name, cross_connection_name, custom_headers=None, raw=False, **operation_config): + """Gets details about the specified ExpressRouteCrossConnection. + + :param resource_group_name: The name of the resource group (peering + location of the circuit). + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection (service key of the circuit). + :type cross_connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCrossConnection or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnection or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCrossConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}'} + + + def _create_or_update_initial( + self, resource_group_name, cross_connection_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ExpressRouteCrossConnection') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCrossConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, cross_connection_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Update the specified ExpressRouteCrossConnection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param parameters: Parameters supplied to the update express route + crossConnection operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnection + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCrossConnection or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnection]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCrossConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}'} + + def update_tags( + self, resource_group_name, cross_connection_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates an express route cross connection tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the cross connection. + :type cross_connection_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteCrossConnection or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnection or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + cross_connection_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(cross_connection_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCrossConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}'} + + + def _list_arp_table_initial( + self, resource_group_name, cross_connection_name, peering_name, device_path, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_arp_table.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'devicePath': self._serialize.url("device_path", device_path, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitsArpTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_arp_table( + self, resource_group_name, cross_connection_name, peering_name, device_path, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the currently advertised ARP table associated with the express + route cross connection in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param device_path: The path of the device. + :type device_path: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitsArpTableListResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitsArpTableListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitsArpTableListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_arp_table_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + peering_name=peering_name, + device_path=device_path, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitsArpTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_arp_table.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/arpTables/{devicePath}'} + + + def _list_routes_table_summary_initial( + self, resource_group_name, cross_connection_name, peering_name, device_path, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_routes_table_summary.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'devicePath': self._serialize.url("device_path", device_path, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCrossConnectionsRoutesTableSummaryListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_routes_table_summary( + self, resource_group_name, cross_connection_name, peering_name, device_path, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the route table summary associated with the express route cross + connection in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param device_path: The path of the device. + :type device_path: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCrossConnectionsRoutesTableSummaryListResult or + ClientRawResponse + if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnectionsRoutesTableSummaryListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCrossConnectionsRoutesTableSummaryListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_routes_table_summary_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + peering_name=peering_name, + device_path=device_path, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCrossConnectionsRoutesTableSummaryListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_routes_table_summary.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTablesSummary/{devicePath}'} + + + def _list_routes_table_initial( + self, resource_group_name, cross_connection_name, peering_name, device_path, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_routes_table.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'crossConnectionName': self._serialize.url("cross_connection_name", cross_connection_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'devicePath': self._serialize.url("device_path", device_path, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteCircuitsRoutesTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_routes_table( + self, resource_group_name, cross_connection_name, peering_name, device_path, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the currently advertised routes table associated with the express + route cross connection in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param cross_connection_name: The name of the + ExpressRouteCrossConnection. + :type cross_connection_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param device_path: The path of the device. + :type device_path: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ExpressRouteCircuitsRoutesTableListResult or + ClientRawResponse if + raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitsRoutesTableListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ExpressRouteCircuitsRoutesTableListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_routes_table_initial( + resource_group_name=resource_group_name, + cross_connection_name=cross_connection_name, + peering_name=peering_name, + device_path=device_path, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteCircuitsRoutesTableListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_routes_table.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCrossConnections/{crossConnectionName}/peerings/{peeringName}/routeTables/{devicePath}'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_gateways_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_gateways_operations.py new file mode 100644 index 000000000000..d38d01dbc65e --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_gateways_operations.py @@ -0,0 +1,405 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRouteGatewaysOperations(object): + """ExpressRouteGatewaysOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list_by_subscription( + self, custom_headers=None, raw=False, **operation_config): + """Lists ExpressRoute gateways under a given subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteGatewayList or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.ExpressRouteGatewayList + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_by_subscription.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteGatewayList', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_by_subscription.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteGateways'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists ExpressRoute gateways in a given resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteGatewayList or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.ExpressRouteGatewayList + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteGatewayList', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways'} + + + def _create_or_update_initial( + self, resource_group_name, express_route_gateway_name, put_express_route_gateway_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRouteGatewayName': self._serialize.url("express_route_gateway_name", express_route_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(put_express_route_gateway_parameters, 'ExpressRouteGateway') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRouteGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, express_route_gateway_name, put_express_route_gateway_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a ExpressRoute gateway in a specified resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_gateway_name: The name of the ExpressRoute + gateway. + :type express_route_gateway_name: str + :param put_express_route_gateway_parameters: Parameters required in an + ExpressRoute gateway PUT operation. + :type put_express_route_gateway_parameters: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteGateway + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ExpressRouteGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ExpressRouteGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ExpressRouteGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + express_route_gateway_name=express_route_gateway_name, + put_express_route_gateway_parameters=put_express_route_gateway_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRouteGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}'} + + def get( + self, resource_group_name, express_route_gateway_name, custom_headers=None, raw=False, **operation_config): + """Fetches the details of a ExpressRoute gateway in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_gateway_name: The name of the ExpressRoute + gateway. + :type express_route_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.ExpressRouteGateway or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRouteGatewayName': self._serialize.url("express_route_gateway_name", express_route_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}'} + + + def _delete_initial( + self, resource_group_name, express_route_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRouteGatewayName': self._serialize.url("express_route_gateway_name", express_route_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, express_route_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified ExpressRoute gateway in a resource group. An + ExpressRoute gateway resource can only be deleted when there are no + connection subresources. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_gateway_name: The name of the ExpressRoute + gateway. + :type express_route_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + express_route_gateway_name=express_route_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteGateways/{expressRouteGatewayName}'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_links_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_links_operations.py new file mode 100644 index 000000000000..689345f8705c --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_links_operations.py @@ -0,0 +1,179 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class ExpressRouteLinksOperations(object): + """ExpressRouteLinksOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def get( + self, resource_group_name, express_route_port_name, link_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the specified ExpressRouteLink resource. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_port_name: The name of the ExpressRoutePort + resource. + :type express_route_port_name: str + :param link_name: The name of the ExpressRouteLink resource. + :type link_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRouteLink or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.ExpressRouteLink or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRoutePortName': self._serialize.url("express_route_port_name", express_route_port_name, 'str'), + 'linkName': self._serialize.url("link_name", link_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ExpressRouteLink', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}/links/{linkName}'} + + def list( + self, resource_group_name, express_route_port_name, custom_headers=None, raw=False, **operation_config): + """Retrieve the ExpressRouteLink sub-resources of the specified + ExpressRoutePort resource. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_port_name: The name of the ExpressRoutePort + resource. + :type express_route_port_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteLink + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteLinkPaged[~azure.mgmt.network.v2019_09_01.models.ExpressRouteLink] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRoutePortName': self._serialize.url("express_route_port_name", express_route_port_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ExpressRouteLinkPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}/links'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_ports_locations_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_ports_locations_operations.py new file mode 100644 index 000000000000..b914b2a1b145 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_ports_locations_operations.py @@ -0,0 +1,169 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class ExpressRoutePortsLocationsOperations(object): + """ExpressRoutePortsLocationsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Retrieves all ExpressRoutePort peering locations. Does not return + available bandwidths for each location. Available bandwidths can only + be obtained when retrieving a specific peering location. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRoutePortsLocation + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRoutePortsLocationPaged[~azure.mgmt.network.v2019_09_01.models.ExpressRoutePortsLocation] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ExpressRoutePortsLocationPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePortsLocations'} + + def get( + self, location_name, custom_headers=None, raw=False, **operation_config): + """Retrieves a single ExpressRoutePort peering location, including the + list of available bandwidths available at said peering location. + + :param location_name: Name of the requested ExpressRoutePort peering + location. + :type location_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRoutePortsLocation or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRoutePortsLocation or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'locationName': self._serialize.url("location_name", location_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ExpressRoutePortsLocation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePortsLocations/{locationName}'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_ports_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_ports_operations.py new file mode 100644 index 000000000000..6512506fa455 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_ports_operations.py @@ -0,0 +1,494 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ExpressRoutePortsOperations(object): + """ExpressRoutePortsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, express_route_port_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRoutePortName': self._serialize.url("express_route_port_name", express_route_port_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, express_route_port_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified ExpressRoutePort resource. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_port_name: The name of the ExpressRoutePort + resource. + :type express_route_port_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + express_route_port_name=express_route_port_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}'} + + def get( + self, resource_group_name, express_route_port_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the requested ExpressRoutePort resource. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_port_name: The name of ExpressRoutePort. + :type express_route_port_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRoutePort or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.ExpressRoutePort or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRoutePortName': self._serialize.url("express_route_port_name", express_route_port_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ExpressRoutePort', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}'} + + + def _create_or_update_initial( + self, resource_group_name, express_route_port_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRoutePortName': self._serialize.url("express_route_port_name", express_route_port_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ExpressRoutePort') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ExpressRoutePort', response) + if response.status_code == 201: + deserialized = self._deserialize('ExpressRoutePort', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, express_route_port_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates the specified ExpressRoutePort resource. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_port_name: The name of the ExpressRoutePort + resource. + :type express_route_port_name: str + :param parameters: Parameters supplied to the create ExpressRoutePort + operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.ExpressRoutePort + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ExpressRoutePort or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ExpressRoutePort] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ExpressRoutePort]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + express_route_port_name=express_route_port_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ExpressRoutePort', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}'} + + def update_tags( + self, resource_group_name, express_route_port_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Update ExpressRoutePort tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param express_route_port_name: The name of the ExpressRoutePort + resource. + :type express_route_port_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ExpressRoutePort or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.ExpressRoutePort or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'expressRoutePortName': self._serialize.url("express_route_port_name", express_route_port_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ExpressRoutePort', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts/{expressRoutePortName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """List all the ExpressRoutePort resources in the specified resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRoutePort + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRoutePortPaged[~azure.mgmt.network.v2019_09_01.models.ExpressRoutePort] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ExpressRoutePortPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ExpressRoutePorts'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """List all the ExpressRoutePort resources in the specified subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRoutePort + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRoutePortPaged[~azure.mgmt.network.v2019_09_01.models.ExpressRoutePort] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ExpressRoutePortPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/ExpressRoutePorts'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_service_providers_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_service_providers_operations.py new file mode 100644 index 000000000000..8ce77c9eb1e6 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_express_route_service_providers_operations.py @@ -0,0 +1,106 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class ExpressRouteServiceProvidersOperations(object): + """ExpressRouteServiceProvidersOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the available express route service providers. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ExpressRouteServiceProvider + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ExpressRouteServiceProviderPaged[~azure.mgmt.network.v2019_09_01.models.ExpressRouteServiceProvider] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ExpressRouteServiceProviderPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteServiceProviders'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_firewall_policies_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_firewall_policies_operations.py new file mode 100644 index 000000000000..84ee5dc15e20 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_firewall_policies_operations.py @@ -0,0 +1,425 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class FirewallPoliciesOperations(object): + """FirewallPoliciesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, firewall_policy_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'firewallPolicyName': self._serialize.url("firewall_policy_name", firewall_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, firewall_policy_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified Firewall Policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param firewall_policy_name: The name of the Firewall Policy. + :type firewall_policy_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + firewall_policy_name=firewall_policy_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}'} + + def get( + self, resource_group_name, firewall_policy_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified Firewall Policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param firewall_policy_name: The name of the Firewall Policy. + :type firewall_policy_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: FirewallPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.FirewallPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'firewallPolicyName': self._serialize.url("firewall_policy_name", firewall_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('FirewallPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}'} + + + def _create_or_update_initial( + self, resource_group_name, firewall_policy_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'firewallPolicyName': self._serialize.url("firewall_policy_name", firewall_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'FirewallPolicy') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('FirewallPolicy', response) + if response.status_code == 201: + deserialized = self._deserialize('FirewallPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, firewall_policy_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates the specified Firewall Policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param firewall_policy_name: The name of the Firewall Policy. + :type firewall_policy_name: str + :param parameters: Parameters supplied to the create or update + Firewall Policy operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.FirewallPolicy + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns FirewallPolicy or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.FirewallPolicy] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.FirewallPolicy]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + firewall_policy_name=firewall_policy_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('FirewallPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all Firewall Policies in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of FirewallPolicy + :rtype: + ~azure.mgmt.network.v2019_09_01.models.FirewallPolicyPaged[~azure.mgmt.network.v2019_09_01.models.FirewallPolicy] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.FirewallPolicyPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the Firewall Policies in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of FirewallPolicy + :rtype: + ~azure.mgmt.network.v2019_09_01.models.FirewallPolicyPaged[~azure.mgmt.network.v2019_09_01.models.FirewallPolicy] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.FirewallPolicyPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/firewallPolicies'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_firewall_policy_rule_groups_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_firewall_policy_rule_groups_operations.py new file mode 100644 index 000000000000..ba0df7f216a6 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_firewall_policy_rule_groups_operations.py @@ -0,0 +1,369 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class FirewallPolicyRuleGroupsOperations(object): + """FirewallPolicyRuleGroupsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, firewall_policy_name, rule_group_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'firewallPolicyName': self._serialize.url("firewall_policy_name", firewall_policy_name, 'str'), + 'ruleGroupName': self._serialize.url("rule_group_name", rule_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, firewall_policy_name, rule_group_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified FirewallPolicyRuleGroup. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param firewall_policy_name: The name of the Firewall Policy. + :type firewall_policy_name: str + :param rule_group_name: The name of the FirewallPolicyRuleGroup. + :type rule_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + firewall_policy_name=firewall_policy_name, + rule_group_name=rule_group_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleGroups/{ruleGroupName}'} + + def get( + self, resource_group_name, firewall_policy_name, rule_group_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified FirewallPolicyRuleGroup. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param firewall_policy_name: The name of the Firewall Policy. + :type firewall_policy_name: str + :param rule_group_name: The name of the FirewallPolicyRuleGroup. + :type rule_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: FirewallPolicyRuleGroup or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.FirewallPolicyRuleGroup + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'firewallPolicyName': self._serialize.url("firewall_policy_name", firewall_policy_name, 'str'), + 'ruleGroupName': self._serialize.url("rule_group_name", rule_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('FirewallPolicyRuleGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleGroups/{ruleGroupName}'} + + + def _create_or_update_initial( + self, resource_group_name, firewall_policy_name, rule_group_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'firewallPolicyName': self._serialize.url("firewall_policy_name", firewall_policy_name, 'str'), + 'ruleGroupName': self._serialize.url("rule_group_name", rule_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'FirewallPolicyRuleGroup') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('FirewallPolicyRuleGroup', response) + if response.status_code == 201: + deserialized = self._deserialize('FirewallPolicyRuleGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, firewall_policy_name, rule_group_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates the specified FirewallPolicyRuleGroup. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param firewall_policy_name: The name of the Firewall Policy. + :type firewall_policy_name: str + :param rule_group_name: The name of the FirewallPolicyRuleGroup. + :type rule_group_name: str + :param parameters: Parameters supplied to the create or update + FirewallPolicyRuleGroup operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.FirewallPolicyRuleGroup + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns FirewallPolicyRuleGroup + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.FirewallPolicyRuleGroup] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.FirewallPolicyRuleGroup]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + firewall_policy_name=firewall_policy_name, + rule_group_name=rule_group_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('FirewallPolicyRuleGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleGroups/{ruleGroupName}'} + + def list( + self, resource_group_name, firewall_policy_name, custom_headers=None, raw=False, **operation_config): + """Lists all FirewallPolicyRuleGroups in a FirewallPolicy resource. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param firewall_policy_name: The name of the Firewall Policy. + :type firewall_policy_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of FirewallPolicyRuleGroup + :rtype: + ~azure.mgmt.network.v2019_09_01.models.FirewallPolicyRuleGroupPaged[~azure.mgmt.network.v2019_09_01.models.FirewallPolicyRuleGroup] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'firewallPolicyName': self._serialize.url("firewall_policy_name", firewall_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.FirewallPolicyRuleGroupPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}/ruleGroups'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_hub_virtual_network_connections_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_hub_virtual_network_connections_operations.py new file mode 100644 index 000000000000..78b9fbbc4e3b --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_hub_virtual_network_connections_operations.py @@ -0,0 +1,177 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class HubVirtualNetworkConnectionsOperations(object): + """HubVirtualNetworkConnectionsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def get( + self, resource_group_name, virtual_hub_name, connection_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a HubVirtualNetworkConnection. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param connection_name: The name of the vpn connection. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: HubVirtualNetworkConnection or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.HubVirtualNetworkConnection or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('HubVirtualNetworkConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections/{connectionName}'} + + def list( + self, resource_group_name, virtual_hub_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of all HubVirtualNetworkConnections. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of HubVirtualNetworkConnection + :rtype: + ~azure.mgmt.network.v2019_09_01.models.HubVirtualNetworkConnectionPaged[~azure.mgmt.network.v2019_09_01.models.HubVirtualNetworkConnection] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.HubVirtualNetworkConnectionPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/hubVirtualNetworkConnections'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_inbound_nat_rules_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_inbound_nat_rules_operations.py new file mode 100644 index 000000000000..6e9b750e2a53 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_inbound_nat_rules_operations.py @@ -0,0 +1,373 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class InboundNatRulesOperations(object): + """InboundNatRulesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + """Gets all the inbound nat rules in a load balancer. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of InboundNatRule + :rtype: + ~azure.mgmt.network.v2019_09_01.models.InboundNatRulePaged[~azure.mgmt.network.v2019_09_01.models.InboundNatRule] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.InboundNatRulePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules'} + + + def _delete_initial( + self, resource_group_name, load_balancer_name, inbound_nat_rule_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'inboundNatRuleName': self._serialize.url("inbound_nat_rule_name", inbound_nat_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, load_balancer_name, inbound_nat_rule_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified load balancer inbound nat rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param inbound_nat_rule_name: The name of the inbound nat rule. + :type inbound_nat_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + load_balancer_name=load_balancer_name, + inbound_nat_rule_name=inbound_nat_rule_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}'} + + def get( + self, resource_group_name, load_balancer_name, inbound_nat_rule_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified load balancer inbound nat rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param inbound_nat_rule_name: The name of the inbound nat rule. + :type inbound_nat_rule_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: InboundNatRule or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.InboundNatRule or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'inboundNatRuleName': self._serialize.url("inbound_nat_rule_name", inbound_nat_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('InboundNatRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}'} + + + def _create_or_update_initial( + self, resource_group_name, load_balancer_name, inbound_nat_rule_name, inbound_nat_rule_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'inboundNatRuleName': self._serialize.url("inbound_nat_rule_name", inbound_nat_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(inbound_nat_rule_parameters, 'InboundNatRule') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('InboundNatRule', response) + if response.status_code == 201: + deserialized = self._deserialize('InboundNatRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, load_balancer_name, inbound_nat_rule_name, inbound_nat_rule_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a load balancer inbound nat rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param inbound_nat_rule_name: The name of the inbound nat rule. + :type inbound_nat_rule_name: str + :param inbound_nat_rule_parameters: Parameters supplied to the create + or update inbound nat rule operation. + :type inbound_nat_rule_parameters: + ~azure.mgmt.network.v2019_09_01.models.InboundNatRule + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns InboundNatRule or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.InboundNatRule] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.InboundNatRule]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + load_balancer_name=load_balancer_name, + inbound_nat_rule_name=inbound_nat_rule_name, + inbound_nat_rule_parameters=inbound_nat_rule_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('InboundNatRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_ip_groups_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_ip_groups_operations.py new file mode 100644 index 000000000000..a03d9bd5d6d5 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_ip_groups_operations.py @@ -0,0 +1,487 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class IpGroupsOperations(object): + """IpGroupsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def get( + self, resource_group_name, ip_groups_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified ipGroups. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param ip_groups_name: The name of the ipGroups. + :type ip_groups_name: str + :param expand: Expands resourceIds (of Firewalls/Network Security + Groups etc.) back referenced by the IpGroups resource. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IpGroup or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.IpGroup or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'ipGroupsName': self._serialize.url("ip_groups_name", ip_groups_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('IpGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ipGroups/{ipGroupsName}'} + + + def _create_or_update_initial( + self, resource_group_name, ip_groups_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'ipGroupsName': self._serialize.url("ip_groups_name", ip_groups_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'IpGroup') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('IpGroup', response) + if response.status_code == 201: + deserialized = self._deserialize('IpGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, ip_groups_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates an ipGroups in a specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param ip_groups_name: The name of the ipGroups. + :type ip_groups_name: str + :param parameters: Parameters supplied to the create or update + IpGroups operation. + :type parameters: ~azure.mgmt.network.v2019_09_01.models.IpGroup + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns IpGroup or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.IpGroup] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.IpGroup]] + :raises: + :class:`ErrorException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + ip_groups_name=ip_groups_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('IpGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ipGroups/{ipGroupsName}'} + + def update_groups( + self, resource_group_name, ip_groups_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates an IpGroups. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param ip_groups_name: The name of the ipGroups. + :type ip_groups_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IpGroup or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.IpGroup or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_groups.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'ipGroupsName': self._serialize.url("ip_groups_name", ip_groups_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('IpGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_groups.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ipGroups/{ipGroupsName}'} + + + def _delete_initial( + self, resource_group_name, ip_groups_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'ipGroupsName': self._serialize.url("ip_groups_name", ip_groups_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, ip_groups_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified ipGroups. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param ip_groups_name: The name of the ipGroups. + :type ip_groups_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + ip_groups_name=ip_groups_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ipGroups/{ipGroupsName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all IpGroups in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of IpGroup + :rtype: + ~azure.mgmt.network.v2019_09_01.models.IpGroupPaged[~azure.mgmt.network.v2019_09_01.models.IpGroup] + :raises: + :class:`ErrorException` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.IpGroupPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ipGroups'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets all IpGroups in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of IpGroup + :rtype: + ~azure.mgmt.network.v2019_09_01.models.IpGroupPaged[~azure.mgmt.network.v2019_09_01.models.IpGroup] + :raises: + :class:`ErrorException` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.IpGroupPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/ipGroups'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_backend_address_pools_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_backend_address_pools_operations.py new file mode 100644 index 000000000000..7bced9b2e701 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_backend_address_pools_operations.py @@ -0,0 +1,177 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class LoadBalancerBackendAddressPoolsOperations(object): + """LoadBalancerBackendAddressPoolsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + """Gets all the load balancer backed address pools. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of BackendAddressPool + :rtype: + ~azure.mgmt.network.v2019_09_01.models.BackendAddressPoolPaged[~azure.mgmt.network.v2019_09_01.models.BackendAddressPool] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.BackendAddressPoolPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools'} + + def get( + self, resource_group_name, load_balancer_name, backend_address_pool_name, custom_headers=None, raw=False, **operation_config): + """Gets load balancer backend address pool. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param backend_address_pool_name: The name of the backend address + pool. + :type backend_address_pool_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: BackendAddressPool or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.BackendAddressPool or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'backendAddressPoolName': self._serialize.url("backend_address_pool_name", backend_address_pool_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('BackendAddressPool', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_frontend_ip_configurations_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_frontend_ip_configurations_operations.py new file mode 100644 index 000000000000..90aa9aca7efd --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_frontend_ip_configurations_operations.py @@ -0,0 +1,177 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class LoadBalancerFrontendIPConfigurationsOperations(object): + """LoadBalancerFrontendIPConfigurationsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + """Gets all the load balancer frontend IP configurations. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of FrontendIPConfiguration + :rtype: + ~azure.mgmt.network.v2019_09_01.models.FrontendIPConfigurationPaged[~azure.mgmt.network.v2019_09_01.models.FrontendIPConfiguration] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.FrontendIPConfigurationPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations'} + + def get( + self, resource_group_name, load_balancer_name, frontend_ip_configuration_name, custom_headers=None, raw=False, **operation_config): + """Gets load balancer frontend IP configuration. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param frontend_ip_configuration_name: The name of the frontend IP + configuration. + :type frontend_ip_configuration_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: FrontendIPConfiguration or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.FrontendIPConfiguration + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'frontendIPConfigurationName': self._serialize.url("frontend_ip_configuration_name", frontend_ip_configuration_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('FrontendIPConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations/{frontendIPConfigurationName}'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_load_balancing_rules_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_load_balancing_rules_operations.py new file mode 100644 index 000000000000..d2b8cb70d5c3 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_load_balancing_rules_operations.py @@ -0,0 +1,176 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class LoadBalancerLoadBalancingRulesOperations(object): + """LoadBalancerLoadBalancingRulesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + """Gets all the load balancing rules in a load balancer. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of LoadBalancingRule + :rtype: + ~azure.mgmt.network.v2019_09_01.models.LoadBalancingRulePaged[~azure.mgmt.network.v2019_09_01.models.LoadBalancingRule] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.LoadBalancingRulePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules'} + + def get( + self, resource_group_name, load_balancer_name, load_balancing_rule_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified load balancer load balancing rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param load_balancing_rule_name: The name of the load balancing rule. + :type load_balancing_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LoadBalancingRule or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.LoadBalancingRule or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'loadBalancingRuleName': self._serialize.url("load_balancing_rule_name", load_balancing_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('LoadBalancingRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules/{loadBalancingRuleName}'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_network_interfaces_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_network_interfaces_operations.py new file mode 100644 index 000000000000..1016df6cc2cf --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_network_interfaces_operations.py @@ -0,0 +1,112 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class LoadBalancerNetworkInterfacesOperations(object): + """LoadBalancerNetworkInterfacesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + """Gets associated load balancer network interfaces. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterface + :rtype: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfacePaged[~azure.mgmt.network.v2019_09_01.models.NetworkInterface] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/networkInterfaces'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_outbound_rules_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_outbound_rules_operations.py new file mode 100644 index 000000000000..f276af95cb06 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_outbound_rules_operations.py @@ -0,0 +1,176 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class LoadBalancerOutboundRulesOperations(object): + """LoadBalancerOutboundRulesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + """Gets all the outbound rules in a load balancer. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of OutboundRule + :rtype: + ~azure.mgmt.network.v2019_09_01.models.OutboundRulePaged[~azure.mgmt.network.v2019_09_01.models.OutboundRule] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.OutboundRulePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules'} + + def get( + self, resource_group_name, load_balancer_name, outbound_rule_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified load balancer outbound rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param outbound_rule_name: The name of the outbound rule. + :type outbound_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: OutboundRule or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.OutboundRule or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'outboundRuleName': self._serialize.url("outbound_rule_name", outbound_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('OutboundRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/outboundRules/{outboundRuleName}'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_probes_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_probes_operations.py new file mode 100644 index 000000000000..88a1b9754542 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancer_probes_operations.py @@ -0,0 +1,176 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class LoadBalancerProbesOperations(object): + """LoadBalancerProbesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + """Gets all the load balancer probes. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Probe + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ProbePaged[~azure.mgmt.network.v2019_09_01.models.Probe] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ProbePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes'} + + def get( + self, resource_group_name, load_balancer_name, probe_name, custom_headers=None, raw=False, **operation_config): + """Gets load balancer probe. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param probe_name: The name of the probe. + :type probe_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Probe or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.Probe or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'probeName': self._serialize.url("probe_name", probe_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('Probe', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancers_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancers_operations.py new file mode 100644 index 000000000000..82e26ba01763 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_load_balancers_operations.py @@ -0,0 +1,493 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class LoadBalancersOperations(object): + """LoadBalancersOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, load_balancer_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified load balancer. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + load_balancer_name=load_balancer_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}'} + + def get( + self, resource_group_name, load_balancer_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified load balancer. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LoadBalancer or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.LoadBalancer or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('LoadBalancer', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}'} + + + def _create_or_update_initial( + self, resource_group_name, load_balancer_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'LoadBalancer') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LoadBalancer', response) + if response.status_code == 201: + deserialized = self._deserialize('LoadBalancer', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, load_balancer_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a load balancer. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param parameters: Parameters supplied to the create or update load + balancer operation. + :type parameters: ~azure.mgmt.network.v2019_09_01.models.LoadBalancer + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns LoadBalancer or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.LoadBalancer] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.LoadBalancer]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + load_balancer_name=load_balancer_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('LoadBalancer', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}'} + + def update_tags( + self, resource_group_name, load_balancer_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates a load balancer tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param load_balancer_name: The name of the load balancer. + :type load_balancer_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LoadBalancer or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.LoadBalancer or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'loadBalancerName': self._serialize.url("load_balancer_name", load_balancer_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('LoadBalancer', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the load balancers in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of LoadBalancer + :rtype: + ~azure.mgmt.network.v2019_09_01.models.LoadBalancerPaged[~azure.mgmt.network.v2019_09_01.models.LoadBalancer] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.LoadBalancerPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/loadBalancers'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all the load balancers in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of LoadBalancer + :rtype: + ~azure.mgmt.network.v2019_09_01.models.LoadBalancerPaged[~azure.mgmt.network.v2019_09_01.models.LoadBalancer] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.LoadBalancerPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_local_network_gateways_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_local_network_gateways_operations.py new file mode 100644 index 000000000000..d7f862f74a43 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_local_network_gateways_operations.py @@ -0,0 +1,429 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class LocalNetworkGatewaysOperations(object): + """LocalNetworkGatewaysOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, local_network_gateway_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'localNetworkGatewayName': self._serialize.url("local_network_gateway_name", local_network_gateway_name, 'str', min_length=1), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'LocalNetworkGateway') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('LocalNetworkGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('LocalNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, local_network_gateway_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a local network gateway in the specified resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param local_network_gateway_name: The name of the local network + gateway. + :type local_network_gateway_name: str + :param parameters: Parameters supplied to the create or update local + network gateway operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.LocalNetworkGateway + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns LocalNetworkGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.LocalNetworkGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.LocalNetworkGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + local_network_gateway_name=local_network_gateway_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('LocalNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}'} + + def get( + self, resource_group_name, local_network_gateway_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified local network gateway in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param local_network_gateway_name: The name of the local network + gateway. + :type local_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LocalNetworkGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.LocalNetworkGateway or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'localNetworkGatewayName': self._serialize.url("local_network_gateway_name", local_network_gateway_name, 'str', min_length=1), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('LocalNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}'} + + + def _delete_initial( + self, resource_group_name, local_network_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'localNetworkGatewayName': self._serialize.url("local_network_gateway_name", local_network_gateway_name, 'str', min_length=1), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, local_network_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified local network gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param local_network_gateway_name: The name of the local network + gateway. + :type local_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + local_network_gateway_name=local_network_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}'} + + def update_tags( + self, resource_group_name, local_network_gateway_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates a local network gateway tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param local_network_gateway_name: The name of the local network + gateway. + :type local_network_gateway_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: LocalNetworkGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.LocalNetworkGateway or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'localNetworkGatewayName': self._serialize.url("local_network_gateway_name", local_network_gateway_name, 'str', min_length=1), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('LocalNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all the local network gateways in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of LocalNetworkGateway + :rtype: + ~azure.mgmt.network.v2019_09_01.models.LocalNetworkGatewayPaged[~azure.mgmt.network.v2019_09_01.models.LocalNetworkGateway] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.LocalNetworkGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_nat_gateways_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_nat_gateways_operations.py new file mode 100644 index 000000000000..399ac6e1f227 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_nat_gateways_operations.py @@ -0,0 +1,495 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class NatGatewaysOperations(object): + """NatGatewaysOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, nat_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'natGatewayName': self._serialize.url("nat_gateway_name", nat_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, nat_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified nat gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param nat_gateway_name: The name of the nat gateway. + :type nat_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + nat_gateway_name=nat_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/natGateways/{natGatewayName}'} + + def get( + self, resource_group_name, nat_gateway_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified nat gateway in a specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param nat_gateway_name: The name of the nat gateway. + :type nat_gateway_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NatGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.NatGateway or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'natGatewayName': self._serialize.url("nat_gateway_name", nat_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('NatGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/natGateways/{natGatewayName}'} + + + def _create_or_update_initial( + self, resource_group_name, nat_gateway_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'natGatewayName': self._serialize.url("nat_gateway_name", nat_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'NatGateway') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NatGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('NatGateway', response) + if response.status_code == 202: + deserialized = self._deserialize('NatGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, nat_gateway_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a nat gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param nat_gateway_name: The name of the nat gateway. + :type nat_gateway_name: str + :param parameters: Parameters supplied to the create or update nat + gateway operation. + :type parameters: ~azure.mgmt.network.v2019_09_01.models.NatGateway + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns NatGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.NatGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.NatGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + nat_gateway_name=nat_gateway_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NatGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/natGateways/{natGatewayName}'} + + def update_tags( + self, resource_group_name, nat_gateway_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates nat gateway tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param nat_gateway_name: The name of the nat gateway. + :type nat_gateway_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NatGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.NatGateway or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'natGatewayName': self._serialize.url("nat_gateway_name", nat_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('NatGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/natGateways/{natGatewayName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the Nat Gateways in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NatGateway + :rtype: + ~azure.mgmt.network.v2019_09_01.models.NatGatewayPaged[~azure.mgmt.network.v2019_09_01.models.NatGateway] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.NatGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/natGateways'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all nat gateways in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NatGateway + :rtype: + ~azure.mgmt.network.v2019_09_01.models.NatGatewayPaged[~azure.mgmt.network.v2019_09_01.models.NatGateway] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.NatGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/natGateways'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_interface_ip_configurations_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_interface_ip_configurations_operations.py new file mode 100644 index 000000000000..c48fbdb141e2 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_interface_ip_configurations_operations.py @@ -0,0 +1,178 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class NetworkInterfaceIPConfigurationsOperations(object): + """NetworkInterfaceIPConfigurationsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, **operation_config): + """Get all ip configurations in a network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterfaceIPConfiguration + :rtype: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfigurationPaged[~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfiguration] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.NetworkInterfaceIPConfigurationPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations'} + + def get( + self, resource_group_name, network_interface_name, ip_configuration_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified network interface ip configuration. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param ip_configuration_name: The name of the ip configuration name. + :type ip_configuration_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkInterfaceIPConfiguration or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfiguration + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'ipConfigurationName': self._serialize.url("ip_configuration_name", ip_configuration_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterfaceIPConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_interface_load_balancers_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_interface_load_balancers_operations.py new file mode 100644 index 000000000000..977d4d287eb7 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_interface_load_balancers_operations.py @@ -0,0 +1,112 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class NetworkInterfaceLoadBalancersOperations(object): + """NetworkInterfaceLoadBalancersOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, **operation_config): + """List all load balancers in a network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of LoadBalancer + :rtype: + ~azure.mgmt.network.v2019_09_01.models.LoadBalancerPaged[~azure.mgmt.network.v2019_09_01.models.LoadBalancer] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.LoadBalancerPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/loadBalancers'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_interface_tap_configurations_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_interface_tap_configurations_operations.py new file mode 100644 index 000000000000..37f713622221 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_interface_tap_configurations_operations.py @@ -0,0 +1,373 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class NetworkInterfaceTapConfigurationsOperations(object): + """NetworkInterfaceTapConfigurationsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, network_interface_name, tap_configuration_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'tapConfigurationName': self._serialize.url("tap_configuration_name", tap_configuration_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_interface_name, tap_configuration_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified tap configuration from the NetworkInterface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param tap_configuration_name: The name of the tap configuration. + :type tap_configuration_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_interface_name=network_interface_name, + tap_configuration_name=tap_configuration_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations/{tapConfigurationName}'} + + def get( + self, resource_group_name, network_interface_name, tap_configuration_name, custom_headers=None, raw=False, **operation_config): + """Get the specified tap configuration on a network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param tap_configuration_name: The name of the tap configuration. + :type tap_configuration_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkInterfaceTapConfiguration or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceTapConfiguration + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'tapConfigurationName': self._serialize.url("tap_configuration_name", tap_configuration_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterfaceTapConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations/{tapConfigurationName}'} + + + def _create_or_update_initial( + self, resource_group_name, network_interface_name, tap_configuration_name, tap_configuration_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'tapConfigurationName': self._serialize.url("tap_configuration_name", tap_configuration_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(tap_configuration_parameters, 'NetworkInterfaceTapConfiguration') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterfaceTapConfiguration', response) + if response.status_code == 201: + deserialized = self._deserialize('NetworkInterfaceTapConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, network_interface_name, tap_configuration_name, tap_configuration_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a Tap configuration in the specified + NetworkInterface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param tap_configuration_name: The name of the tap configuration. + :type tap_configuration_name: str + :param tap_configuration_parameters: Parameters supplied to the create + or update tap configuration operation. + :type tap_configuration_parameters: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceTapConfiguration + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + NetworkInterfaceTapConfiguration or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceTapConfiguration] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceTapConfiguration]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + network_interface_name=network_interface_name, + tap_configuration_name=tap_configuration_name, + tap_configuration_parameters=tap_configuration_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NetworkInterfaceTapConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations/{tapConfigurationName}'} + + def list( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, **operation_config): + """Get all Tap configurations in a network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterfaceTapConfiguration + :rtype: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceTapConfigurationPaged[~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceTapConfiguration] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.NetworkInterfaceTapConfigurationPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/tapConfigurations'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_interfaces_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_interfaces_operations.py new file mode 100644 index 000000000000..de79b3b109db --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_interfaces_operations.py @@ -0,0 +1,1091 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class NetworkInterfacesOperations(object): + """NetworkInterfacesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + + self.config = config + + + def _delete_initial( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, **operation_config): + api_version = "2019-09-01" + + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_interface_name=network_interface_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}'} + + def get( + self, resource_group_name, network_interface_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets information about the specified network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkInterface or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.NetworkInterface or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2019-09-01" + + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterface', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}'} + + + def _create_or_update_initial( + self, resource_group_name, network_interface_name, parameters, custom_headers=None, raw=False, **operation_config): + api_version = "2019-09-01" + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'NetworkInterface') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterface', response) + if response.status_code == 201: + deserialized = self._deserialize('NetworkInterface', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, network_interface_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param parameters: Parameters supplied to the create or update network + interface operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterface + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns NetworkInterface or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.NetworkInterface] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.NetworkInterface]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + network_interface_name=network_interface_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NetworkInterface', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}'} + + def update_tags( + self, resource_group_name, network_interface_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates a network interface tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkInterface or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.NetworkInterface or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.TagsObject(tags=tags) + + api_version = "2019-09-01" + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterface', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all network interfaces in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterface + :rtype: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfacePaged[~azure.mgmt.network.v2019_09_01.models.NetworkInterface] + :raises: :class:`CloudError` + """ + api_version = "2019-09-01" + + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkInterfaces'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all network interfaces in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterface + :rtype: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfacePaged[~azure.mgmt.network.v2019_09_01.models.NetworkInterface] + :raises: :class:`CloudError` + """ + api_version = "2019-09-01" + + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces'} + + + def _get_effective_route_table_initial( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, **operation_config): + api_version = "2019-09-01" + + # Construct URL + url = self.get_effective_route_table.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('EffectiveRouteListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_effective_route_table( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets all route tables applied to a network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + EffectiveRouteListResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.EffectiveRouteListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.EffectiveRouteListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._get_effective_route_table_initial( + resource_group_name=resource_group_name, + network_interface_name=network_interface_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('EffectiveRouteListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_effective_route_table.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveRouteTable'} + + + def _list_effective_network_security_groups_initial( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, **operation_config): + api_version = "2019-09-01" + + # Construct URL + url = self.list_effective_network_security_groups.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('EffectiveNetworkSecurityGroupListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_effective_network_security_groups( + self, resource_group_name, network_interface_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets all network security groups applied to a network interface. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + EffectiveNetworkSecurityGroupListResult or + ClientRawResponse if + raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.EffectiveNetworkSecurityGroupListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.EffectiveNetworkSecurityGroupListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._list_effective_network_security_groups_initial( + resource_group_name=resource_group_name, + network_interface_name=network_interface_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('EffectiveNetworkSecurityGroupListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_effective_network_security_groups.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkInterfaces/{networkInterfaceName}/effectiveNetworkSecurityGroups'} + + def list_virtual_machine_scale_set_vm_network_interfaces( + self, resource_group_name, virtual_machine_scale_set_name, virtualmachine_index, custom_headers=None, raw=False, **operation_config): + """Gets information about all network interfaces in a virtual machine in a + virtual machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param virtualmachine_index: The virtual machine index. + :type virtualmachine_index: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterface + :rtype: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfacePaged[~azure.mgmt.network.v2019_09_01.models.NetworkInterface] + :raises: :class:`CloudError` + """ + api_version = "2018-10-01" + + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_virtual_machine_scale_set_vm_network_interfaces.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'virtualmachineIndex': self._serialize.url("virtualmachine_index", virtualmachine_index, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_virtual_machine_scale_set_vm_network_interfaces.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces'} + + def list_virtual_machine_scale_set_network_interfaces( + self, resource_group_name, virtual_machine_scale_set_name, custom_headers=None, raw=False, **operation_config): + """Gets all network interfaces in a virtual machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterface + :rtype: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfacePaged[~azure.mgmt.network.v2019_09_01.models.NetworkInterface] + :raises: :class:`CloudError` + """ + api_version = "2018-10-01" + + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_virtual_machine_scale_set_network_interfaces.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.NetworkInterfacePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_virtual_machine_scale_set_network_interfaces.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/networkInterfaces'} + + def get_virtual_machine_scale_set_network_interface( + self, resource_group_name, virtual_machine_scale_set_name, virtualmachine_index, network_interface_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Get the specified network interface in a virtual machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param virtualmachine_index: The virtual machine index. + :type virtualmachine_index: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkInterface or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.NetworkInterface or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2018-10-01" + + # Construct URL + url = self.get_virtual_machine_scale_set_network_interface.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'virtualmachineIndex': self._serialize.url("virtualmachine_index", virtualmachine_index, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterface', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_virtual_machine_scale_set_network_interface.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}'} + + def list_virtual_machine_scale_set_ip_configurations( + self, resource_group_name, virtual_machine_scale_set_name, virtualmachine_index, network_interface_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Get the specified network interface ip configuration in a virtual + machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param virtualmachine_index: The virtual machine index. + :type virtualmachine_index: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkInterfaceIPConfiguration + :rtype: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfigurationPaged[~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfiguration] + :raises: :class:`CloudError` + """ + api_version = "2018-10-01" + + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_virtual_machine_scale_set_ip_configurations.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'virtualmachineIndex': self._serialize.url("virtualmachine_index", virtualmachine_index, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.NetworkInterfaceIPConfigurationPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_virtual_machine_scale_set_ip_configurations.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations'} + + def get_virtual_machine_scale_set_ip_configuration( + self, resource_group_name, virtual_machine_scale_set_name, virtualmachine_index, network_interface_name, ip_configuration_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Get the specified network interface ip configuration in a virtual + machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param virtualmachine_index: The virtual machine index. + :type virtualmachine_index: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param ip_configuration_name: The name of the ip configuration. + :type ip_configuration_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkInterfaceIPConfiguration or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.NetworkInterfaceIPConfiguration + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2018-10-01" + + # Construct URL + url = self.get_virtual_machine_scale_set_ip_configuration.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'virtualmachineIndex': self._serialize.url("virtualmachine_index", virtualmachine_index, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'ipConfigurationName': self._serialize.url("ip_configuration_name", ip_configuration_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('NetworkInterfaceIPConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_virtual_machine_scale_set_ip_configuration.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipConfigurations/{ipConfigurationName}'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_management_client_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_management_client_operations.py new file mode 100644 index 000000000000..0bd380289f57 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_management_client_operations.py @@ -0,0 +1,265 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling +from .. import models +import uuid + + +class NetworkManagementClientOperationsMixin(object): + + def check_dns_name_availability( + self, location, domain_name_label, custom_headers=None, raw=False, **operation_config): + """Checks whether a domain name in the cloudapp.azure.com zone is + available for use. + + :param location: The location of the domain name. + :type location: str + :param domain_name_label: The domain name to be verified. It must + conform to the following regular expression: + ^[a-z][a-z0-9-]{1,61}[a-z0-9]$. + :type domain_name_label: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: DnsNameAvailabilityResult or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.DnsNameAvailabilityResult or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2019-09-01" + + # Construct URL + url = self.check_dns_name_availability.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['domainNameLabel'] = self._serialize.query("domain_name_label", domain_name_label, 'str') + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('DnsNameAvailabilityResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + check_dns_name_availability.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/CheckDnsNameAvailability'} + + def supported_security_providers( + self, resource_group_name, virtual_wan_name, custom_headers=None, raw=False, **operation_config): + """Gives the supported security providers for the virtual wan. + + :param resource_group_name: The resource group name. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWAN for which + supported security providers are needed. + :type virtual_wan_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualWanSecurityProviders or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VirtualWanSecurityProviders or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2019-09-01" + + # Construct URL + url = self.supported_security_providers.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualWANName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VirtualWanSecurityProviders', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + supported_security_providers.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/supportedSecurityProviders'} + + + def _generatevirtualwanvpnserverconfigurationvpnprofile_initial( + self, resource_group_name, virtual_wan_name, vpn_server_configuration_resource_id=None, authentication_method=None, custom_headers=None, raw=False, **operation_config): + vpn_client_params = models.VirtualWanVpnProfileParameters(vpn_server_configuration_resource_id=vpn_server_configuration_resource_id, authentication_method=authentication_method) + + api_version = "2019-09-01" + + # Construct URL + url = self.generatevirtualwanvpnserverconfigurationvpnprofile.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualWANName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpn_client_params, 'VirtualWanVpnProfileParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnProfileResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def generatevirtualwanvpnserverconfigurationvpnprofile( + self, resource_group_name, virtual_wan_name, vpn_server_configuration_resource_id=None, authentication_method=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Generates a unique VPN profile for P2S clients for VirtualWan and + associated VpnServerConfiguration combination in the specified resource + group. + + :param resource_group_name: The resource group name. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWAN whose associated + VpnServerConfigurations is needed. + :type virtual_wan_name: str + :param vpn_server_configuration_resource_id: VpnServerConfiguration + partial resource uri with which VirtualWan is associated to. + :type vpn_server_configuration_resource_id: str + :param authentication_method: VPN client authentication method. + Possible values include: 'EAPTLS', 'EAPMSCHAPv2' + :type authentication_method: str or + ~azure.mgmt.network.v2019_09_01.models.AuthenticationMethod + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VpnProfileResponse or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VpnProfileResponse] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VpnProfileResponse]] + :raises: :class:`CloudError` + """ + raw_result = self._generatevirtualwanvpnserverconfigurationvpnprofile_initial( + resource_group_name=resource_group_name, + virtual_wan_name=virtual_wan_name, + vpn_server_configuration_resource_id=vpn_server_configuration_resource_id, + authentication_method=authentication_method, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnProfileResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + generatevirtualwanvpnserverconfigurationvpnprofile.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/GenerateVpnProfile'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_profiles_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_profiles_operations.py new file mode 100644 index 000000000000..c7a320742c99 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_profiles_operations.py @@ -0,0 +1,494 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class NetworkProfilesOperations(object): + """NetworkProfilesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, network_profile_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkProfileName': self._serialize.url("network_profile_name", network_profile_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_profile_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified network profile. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_profile_name: The name of the NetworkProfile. + :type network_profile_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_profile_name=network_profile_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles/{networkProfileName}'} + + def get( + self, resource_group_name, network_profile_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified network profile in a specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_profile_name: The name of the public IP prefix. + :type network_profile_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkProfile or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.NetworkProfile or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkProfileName': self._serialize.url("network_profile_name", network_profile_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('NetworkProfile', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles/{networkProfileName}'} + + + def _create_or_update_initial( + self, resource_group_name, network_profile_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkProfileName': self._serialize.url("network_profile_name", network_profile_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'NetworkProfile') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkProfile', response) + if response.status_code == 201: + deserialized = self._deserialize('NetworkProfile', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, network_profile_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a network profile. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_profile_name: The name of the network profile. + :type network_profile_name: str + :param parameters: Parameters supplied to the create or update network + profile operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.NetworkProfile + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns NetworkProfile or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.NetworkProfile] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.NetworkProfile]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + network_profile_name=network_profile_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NetworkProfile', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles/{networkProfileName}'} + + def update_tags( + self, resource_group_name, network_profile_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates network profile tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_profile_name: The name of the network profile. + :type network_profile_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkProfile or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.NetworkProfile or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkProfileName': self._serialize.url("network_profile_name", network_profile_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('NetworkProfile', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles/{networkProfileName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the network profiles in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkProfile + :rtype: + ~azure.mgmt.network.v2019_09_01.models.NetworkProfilePaged[~azure.mgmt.network.v2019_09_01.models.NetworkProfile] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.NetworkProfilePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkProfiles'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all network profiles in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkProfile + :rtype: + ~azure.mgmt.network.v2019_09_01.models.NetworkProfilePaged[~azure.mgmt.network.v2019_09_01.models.NetworkProfile] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.NetworkProfilePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkProfiles'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_security_groups_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_security_groups_operations.py new file mode 100644 index 000000000000..b3bac2cd674b --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_security_groups_operations.py @@ -0,0 +1,499 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class NetworkSecurityGroupsOperations(object): + """NetworkSecurityGroupsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, network_security_group_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_security_group_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified network security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_security_group_name=network_security_group_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}'} + + def get( + self, resource_group_name, network_security_group_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified network security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkSecurityGroup or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.NetworkSecurityGroup or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('NetworkSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}'} + + + def _create_or_update_initial( + self, resource_group_name, network_security_group_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'NetworkSecurityGroup') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkSecurityGroup', response) + if response.status_code == 201: + deserialized = self._deserialize('NetworkSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, network_security_group_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a network security group in the specified resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param parameters: Parameters supplied to the create or update network + security group operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.NetworkSecurityGroup + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns NetworkSecurityGroup or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.NetworkSecurityGroup] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.NetworkSecurityGroup]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + network_security_group_name=network_security_group_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NetworkSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}'} + + def update_tags( + self, resource_group_name, network_security_group_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates a network security group tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkSecurityGroup or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.NetworkSecurityGroup or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('NetworkSecurityGroup', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all network security groups in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkSecurityGroup + :rtype: + ~azure.mgmt.network.v2019_09_01.models.NetworkSecurityGroupPaged[~azure.mgmt.network.v2019_09_01.models.NetworkSecurityGroup] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.NetworkSecurityGroupPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkSecurityGroups'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all network security groups in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkSecurityGroup + :rtype: + ~azure.mgmt.network.v2019_09_01.models.NetworkSecurityGroupPaged[~azure.mgmt.network.v2019_09_01.models.NetworkSecurityGroup] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.NetworkSecurityGroupPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_watchers_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_watchers_operations.py new file mode 100644 index 000000000000..153abd7b26cd --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_network_watchers_operations.py @@ -0,0 +1,1672 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class NetworkWatchersOperations(object): + """NetworkWatchersOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def create_or_update( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + """Creates or updates a network watcher in the specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param parameters: Parameters that define the network watcher + resource. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.NetworkWatcher + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkWatcher or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.NetworkWatcher or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'NetworkWatcher') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('NetworkWatcher', response) + if response.status_code == 201: + deserialized = self._deserialize('NetworkWatcher', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}'} + + def get( + self, resource_group_name, network_watcher_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified network watcher by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkWatcher or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.NetworkWatcher or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('NetworkWatcher', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}'} + + + def _delete_initial( + self, resource_group_name, network_watcher_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [202, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_watcher_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified network watcher resource. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}'} + + def update_tags( + self, resource_group_name, network_watcher_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates a network watcher tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: NetworkWatcher or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.NetworkWatcher or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('NetworkWatcher', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all network watchers by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkWatcher + :rtype: + ~azure.mgmt.network.v2019_09_01.models.NetworkWatcherPaged[~azure.mgmt.network.v2019_09_01.models.NetworkWatcher] + :raises: + :class:`ErrorResponseException` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.NetworkWatcherPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all network watchers by subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of NetworkWatcher + :rtype: + ~azure.mgmt.network.v2019_09_01.models.NetworkWatcherPaged[~azure.mgmt.network.v2019_09_01.models.NetworkWatcher] + :raises: + :class:`ErrorResponseException` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.NetworkWatcherPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkWatchers'} + + def get_topology( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + """Gets the current network topology by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param parameters: Parameters that define the representation of + topology. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.TopologyParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Topology or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.Topology or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get_topology.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TopologyParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('Topology', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_topology.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/topology'} + + + def _verify_ip_flow_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.verify_ip_flow.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VerificationIPFlowParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VerificationIPFlowResult', response) + if response.status_code == 202: + deserialized = self._deserialize('VerificationIPFlowResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def verify_ip_flow( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Verify IP flow from the specified VM to a location given the currently + configured NSG rules. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param parameters: Parameters that define the IP flow to be verified. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.VerificationIPFlowParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VerificationIPFlowResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VerificationIPFlowResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VerificationIPFlowResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._verify_ip_flow_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VerificationIPFlowResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + verify_ip_flow.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/ipFlowVerify'} + + + def _get_next_hop_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_next_hop.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'NextHopParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NextHopResult', response) + if response.status_code == 202: + deserialized = self._deserialize('NextHopResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_next_hop( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the next hop from the specified VM. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param parameters: Parameters that define the source and destination + endpoint. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.NextHopParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns NextHopResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.NextHopResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.NextHopResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_next_hop_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NextHopResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_next_hop.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/nextHop'} + + + def _get_vm_security_rules_initial( + self, resource_group_name, network_watcher_name, target_resource_id, custom_headers=None, raw=False, **operation_config): + parameters = models.SecurityGroupViewParameters(target_resource_id=target_resource_id) + + # Construct URL + url = self.get_vm_security_rules.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'SecurityGroupViewParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecurityGroupViewResult', response) + if response.status_code == 202: + deserialized = self._deserialize('SecurityGroupViewResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_vm_security_rules( + self, resource_group_name, network_watcher_name, target_resource_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the configured and effective security group rules on the specified + VM. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param target_resource_id: ID of the target VM. + :type target_resource_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns SecurityGroupViewResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.SecurityGroupViewResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.SecurityGroupViewResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_vm_security_rules_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + target_resource_id=target_resource_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('SecurityGroupViewResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_vm_security_rules.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/securityGroupView'} + + + def _get_troubleshooting_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_troubleshooting.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TroubleshootingParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('TroubleshootingResult', response) + if response.status_code == 202: + deserialized = self._deserialize('TroubleshootingResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_troubleshooting( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Initiate troubleshooting on a specified resource. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param parameters: Parameters that define the resource to + troubleshoot. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.TroubleshootingParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns TroubleshootingResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.TroubleshootingResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.TroubleshootingResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_troubleshooting_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('TroubleshootingResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_troubleshooting.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/troubleshoot'} + + + def _get_troubleshooting_result_initial( + self, resource_group_name, network_watcher_name, target_resource_id, custom_headers=None, raw=False, **operation_config): + parameters = models.QueryTroubleshootingParameters(target_resource_id=target_resource_id) + + # Construct URL + url = self.get_troubleshooting_result.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'QueryTroubleshootingParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('TroubleshootingResult', response) + if response.status_code == 202: + deserialized = self._deserialize('TroubleshootingResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_troubleshooting_result( + self, resource_group_name, network_watcher_name, target_resource_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Get the last completed troubleshooting result on a specified resource. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param target_resource_id: The target resource ID to query the + troubleshooting result. + :type target_resource_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns TroubleshootingResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.TroubleshootingResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.TroubleshootingResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_troubleshooting_result_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + target_resource_id=target_resource_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('TroubleshootingResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_troubleshooting_result.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryTroubleshootResult'} + + + def _set_flow_log_configuration_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.set_flow_log_configuration.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'FlowLogInformation') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('FlowLogInformation', response) + if response.status_code == 202: + deserialized = self._deserialize('FlowLogInformation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def set_flow_log_configuration( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Configures flow log and traffic analytics (optional) on a specified + resource. + + :param resource_group_name: The name of the network watcher resource + group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param parameters: Parameters that define the configuration of flow + log. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.FlowLogInformation + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns FlowLogInformation or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.FlowLogInformation] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.FlowLogInformation]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._set_flow_log_configuration_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('FlowLogInformation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + set_flow_log_configuration.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/configureFlowLog'} + + + def _get_flow_log_status_initial( + self, resource_group_name, network_watcher_name, target_resource_id, custom_headers=None, raw=False, **operation_config): + parameters = models.FlowLogStatusParameters(target_resource_id=target_resource_id) + + # Construct URL + url = self.get_flow_log_status.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'FlowLogStatusParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('FlowLogInformation', response) + if response.status_code == 202: + deserialized = self._deserialize('FlowLogInformation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_flow_log_status( + self, resource_group_name, network_watcher_name, target_resource_id, custom_headers=None, raw=False, polling=True, **operation_config): + """Queries status of flow log and traffic analytics (optional) on a + specified resource. + + :param resource_group_name: The name of the network watcher resource + group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param target_resource_id: The target resource where getting the flow + log and traffic analytics (optional) status. + :type target_resource_id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns FlowLogInformation or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.FlowLogInformation] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.FlowLogInformation]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_flow_log_status_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + target_resource_id=target_resource_id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('FlowLogInformation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_flow_log_status.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/queryFlowLogStatus'} + + + def _check_connectivity_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.check_connectivity.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ConnectivityParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectivityInformation', response) + if response.status_code == 202: + deserialized = self._deserialize('ConnectivityInformation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def check_connectivity( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Verifies the possibility of establishing a direct TCP connection from a + virtual machine to a given endpoint including another VM or an + arbitrary remote server. + + :param resource_group_name: The name of the network watcher resource + group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param parameters: Parameters that determine how the connectivity + check will be performed. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.ConnectivityParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ConnectivityInformation + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ConnectivityInformation] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ConnectivityInformation]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._check_connectivity_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ConnectivityInformation', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + check_connectivity.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/connectivityCheck'} + + + def _get_azure_reachability_report_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_azure_reachability_report.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AzureReachabilityReportParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AzureReachabilityReport', response) + if response.status_code == 202: + deserialized = self._deserialize('AzureReachabilityReport', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_azure_reachability_report( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the relative latency score for internet service providers from a + specified location to Azure regions. + + :param resource_group_name: The name of the network watcher resource + group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param parameters: Parameters that determine Azure reachability report + configuration. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.AzureReachabilityReportParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns AzureReachabilityReport + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.AzureReachabilityReport] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.AzureReachabilityReport]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_azure_reachability_report_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('AzureReachabilityReport', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_azure_reachability_report.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/azureReachabilityReport'} + + + def _list_available_providers_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list_available_providers.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'AvailableProvidersListParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('AvailableProvidersList', response) + if response.status_code == 202: + deserialized = self._deserialize('AvailableProvidersList', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list_available_providers( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Lists all available internet service providers for a specified Azure + region. + + :param resource_group_name: The name of the network watcher resource + group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher resource. + :type network_watcher_name: str + :param parameters: Parameters that scope the list of available + providers. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.AvailableProvidersListParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns AvailableProvidersList + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.AvailableProvidersList] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.AvailableProvidersList]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._list_available_providers_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('AvailableProvidersList', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list_available_providers.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/availableProvidersList'} + + + def _get_network_configuration_diagnostic_initial( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_network_configuration_diagnostic.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'NetworkConfigurationDiagnosticParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('NetworkConfigurationDiagnosticResponse', response) + if response.status_code == 202: + deserialized = self._deserialize('NetworkConfigurationDiagnosticResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_network_configuration_diagnostic( + self, resource_group_name, network_watcher_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets Network Configuration Diagnostic data to help customers understand + and debug network behavior. It provides detailed information on what + security rules were applied to a specified traffic flow and the result + of evaluating these rules. Customers must provide details of a flow + like source, destination, protocol, etc. The API returns whether + traffic was allowed or denied, the rules evaluated for the specified + flow and the evaluation results. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param parameters: Parameters to get network configuration diagnostic. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.NetworkConfigurationDiagnosticParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + NetworkConfigurationDiagnosticResponse or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.NetworkConfigurationDiagnosticResponse] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.NetworkConfigurationDiagnosticResponse]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_network_configuration_diagnostic_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('NetworkConfigurationDiagnosticResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_network_configuration_diagnostic.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/networkConfigurationDiagnostic'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_operations.py new file mode 100644 index 000000000000..2d04105db297 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_operations.py @@ -0,0 +1,102 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class Operations(object): + """Operations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all of the available Network Rest API operations. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Operation + :rtype: + ~azure.mgmt.network.v2019_09_01.models.OperationPaged[~azure.mgmt.network.v2019_09_01.models.Operation] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.OperationPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/providers/Microsoft.Network/operations'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_p2s_vpn_gateways_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_p2s_vpn_gateways_operations.py new file mode 100644 index 000000000000..462c9b32ae2b --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_p2s_vpn_gateways_operations.py @@ -0,0 +1,803 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class P2sVpnGatewaysOperations(object): + """P2sVpnGatewaysOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def get( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a virtual wan p2s vpn gateway. + + :param resource_group_name: The resource group name of the + P2SVpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: P2SVpnGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.P2SVpnGateway or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('P2SVpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}'} + + + def _create_or_update_initial( + self, resource_group_name, gateway_name, p2_svpn_gateway_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(p2_svpn_gateway_parameters, 'P2SVpnGateway') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('P2SVpnGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('P2SVpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, gateway_name, p2_svpn_gateway_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a virtual wan p2s vpn gateway if it doesn't exist else updates + the existing gateway. + + :param resource_group_name: The resource group name of the + P2SVpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param p2_svpn_gateway_parameters: Parameters supplied to create or + Update a virtual wan p2s vpn gateway. + :type p2_svpn_gateway_parameters: + ~azure.mgmt.network.v2019_09_01.models.P2SVpnGateway + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns P2SVpnGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.P2SVpnGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.P2SVpnGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + p2_svpn_gateway_parameters=p2_svpn_gateway_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('P2SVpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}'} + + def update_tags( + self, resource_group_name, gateway_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates virtual wan p2s vpn gateway tags. + + :param resource_group_name: The resource group name of the + P2SVpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: P2SVpnGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.P2SVpnGateway or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + p2_svpn_gateway_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(p2_svpn_gateway_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('P2SVpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}'} + + + def _delete_initial( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a virtual wan p2s vpn gateway. + + :param resource_group_name: The resource group name of the + P2SVpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all the P2SVpnGateways in a resource group. + + :param resource_group_name: The resource group name of the + P2SVpnGateway. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of P2SVpnGateway + :rtype: + ~azure.mgmt.network.v2019_09_01.models.P2SVpnGatewayPaged[~azure.mgmt.network.v2019_09_01.models.P2SVpnGateway] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.P2SVpnGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all the P2SVpnGateways in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of P2SVpnGateway + :rtype: + ~azure.mgmt.network.v2019_09_01.models.P2SVpnGatewayPaged[~azure.mgmt.network.v2019_09_01.models.P2SVpnGateway] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.P2SVpnGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/p2svpnGateways'} + + + def _generate_vpn_profile_initial( + self, resource_group_name, gateway_name, authentication_method=None, custom_headers=None, raw=False, **operation_config): + parameters = models.P2SVpnProfileParameters(authentication_method=authentication_method) + + # Construct URL + url = self.generate_vpn_profile.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'P2SVpnProfileParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnProfileResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def generate_vpn_profile( + self, resource_group_name, gateway_name, authentication_method=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Generates VPN profile for P2S client of the P2SVpnGateway in the + specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param gateway_name: The name of the P2SVpnGateway. + :type gateway_name: str + :param authentication_method: VPN client authentication method. + Possible values include: 'EAPTLS', 'EAPMSCHAPv2' + :type authentication_method: str or + ~azure.mgmt.network.v2019_09_01.models.AuthenticationMethod + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VpnProfileResponse or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VpnProfileResponse] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VpnProfileResponse]] + :raises: :class:`CloudError` + """ + raw_result = self._generate_vpn_profile_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + authentication_method=authentication_method, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnProfileResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + generate_vpn_profile.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/generatevpnprofile'} + + + def _get_p2s_vpn_connection_health_initial( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_p2s_vpn_connection_health.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('P2SVpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_p2s_vpn_connection_health( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the connection health of P2S clients of the virtual wan + P2SVpnGateway in the specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param gateway_name: The name of the P2SVpnGateway. + :type gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns P2SVpnGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.P2SVpnGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.P2SVpnGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._get_p2s_vpn_connection_health_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('P2SVpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_p2s_vpn_connection_health.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/getP2sVpnConnectionHealth'} + + + def _get_p2s_vpn_connection_health_detailed_initial( + self, resource_group_name, gateway_name, vpn_user_names_filter=None, output_blob_sas_url=None, custom_headers=None, raw=False, **operation_config): + request = models.P2SVpnConnectionHealthRequest(vpn_user_names_filter=vpn_user_names_filter, output_blob_sas_url=output_blob_sas_url) + + # Construct URL + url = self.get_p2s_vpn_connection_health_detailed.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(request, 'P2SVpnConnectionHealthRequest') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('P2SVpnConnectionHealth', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_p2s_vpn_connection_health_detailed( + self, resource_group_name, gateway_name, vpn_user_names_filter=None, output_blob_sas_url=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets the sas url to get the connection health detail of P2S clients of + the virtual wan P2SVpnGateway in the specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param gateway_name: The name of the P2SVpnGateway. + :type gateway_name: str + :param vpn_user_names_filter: The list of p2s vpn user names whose p2s + vpn connection detailed health to retrieve for. + :type vpn_user_names_filter: list[str] + :param output_blob_sas_url: The sas-url to download the P2S Vpn + connection health detail. + :type output_blob_sas_url: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns P2SVpnConnectionHealth + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.P2SVpnConnectionHealth] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.P2SVpnConnectionHealth]] + :raises: :class:`CloudError` + """ + raw_result = self._get_p2s_vpn_connection_health_detailed_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + vpn_user_names_filter=vpn_user_names_filter, + output_blob_sas_url=output_blob_sas_url, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('P2SVpnConnectionHealth', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_p2s_vpn_connection_health_detailed.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/p2svpnGateways/{gatewayName}/getP2sVpnConnectionHealthDetailed'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_packet_captures_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_packet_captures_operations.py new file mode 100644 index 000000000000..022e05c48315 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_packet_captures_operations.py @@ -0,0 +1,543 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class PacketCapturesOperations(object): + """PacketCapturesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _create_initial( + self, resource_group_name, network_watcher_name, packet_capture_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'packetCaptureName': self._serialize.url("packet_capture_name", packet_capture_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PacketCapture') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [201]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 201: + deserialized = self._deserialize('PacketCaptureResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create( + self, resource_group_name, network_watcher_name, packet_capture_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Create and start a packet capture on the specified VM. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param packet_capture_name: The name of the packet capture session. + :type packet_capture_name: str + :param parameters: Parameters that define the create packet capture + operation. + :type parameters: ~azure.mgmt.network.v2019_09_01.models.PacketCapture + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns PacketCaptureResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.PacketCaptureResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.PacketCaptureResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._create_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + packet_capture_name=packet_capture_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('PacketCaptureResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}'} + + def get( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, **operation_config): + """Gets a packet capture session by name. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param packet_capture_name: The name of the packet capture session. + :type packet_capture_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PacketCaptureResult or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.PacketCaptureResult or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorResponseException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'packetCaptureName': self._serialize.url("packet_capture_name", packet_capture_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('PacketCaptureResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}'} + + + def _delete_initial( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'packetCaptureName': self._serialize.url("packet_capture_name", packet_capture_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [202, 204]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified packet capture session. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param packet_capture_name: The name of the packet capture session. + :type packet_capture_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + packet_capture_name=packet_capture_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}'} + + + def _stop_initial( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.stop.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'packetCaptureName': self._serialize.url("packet_capture_name", packet_capture_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def stop( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Stops a specified packet capture session. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the network watcher. + :type network_watcher_name: str + :param packet_capture_name: The name of the packet capture session. + :type packet_capture_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._stop_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + packet_capture_name=packet_capture_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + stop.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/stop'} + + + def _get_status_initial( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_status.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'packetCaptureName': self._serialize.url("packet_capture_name", packet_capture_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorResponseException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PacketCaptureQueryStatusResult', response) + if response.status_code == 202: + deserialized = self._deserialize('PacketCaptureQueryStatusResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_status( + self, resource_group_name, network_watcher_name, packet_capture_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Query the status of a running packet capture session. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param packet_capture_name: The name given to the packet capture + session. + :type packet_capture_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + PacketCaptureQueryStatusResult or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.PacketCaptureQueryStatusResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.PacketCaptureQueryStatusResult]] + :raises: + :class:`ErrorResponseException` + """ + raw_result = self._get_status_initial( + resource_group_name=resource_group_name, + network_watcher_name=network_watcher_name, + packet_capture_name=packet_capture_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('PacketCaptureQueryStatusResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_status.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures/{packetCaptureName}/queryStatus'} + + def list( + self, resource_group_name, network_watcher_name, custom_headers=None, raw=False, **operation_config): + """Lists all packet capture sessions within the specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_watcher_name: The name of the Network Watcher resource. + :type network_watcher_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PacketCaptureResult + :rtype: + ~azure.mgmt.network.v2019_09_01.models.PacketCaptureResultPaged[~azure.mgmt.network.v2019_09_01.models.PacketCaptureResult] + :raises: + :class:`ErrorResponseException` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkWatcherName': self._serialize.url("network_watcher_name", network_watcher_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorResponseException(self._deserialize, response) + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.PacketCaptureResultPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkWatchers/{networkWatcherName}/packetCaptures'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_peer_express_route_circuit_connections_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_peer_express_route_circuit_connections_operations.py new file mode 100644 index 000000000000..ea4335a10bc5 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_peer_express_route_circuit_connections_operations.py @@ -0,0 +1,188 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class PeerExpressRouteCircuitConnectionsOperations(object): + """PeerExpressRouteCircuitConnectionsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def get( + self, resource_group_name, circuit_name, peering_name, connection_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified Peer Express Route Circuit Connection from the + specified express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the express route circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param connection_name: The name of the peer express route circuit + connection. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PeerExpressRouteCircuitConnection or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.PeerExpressRouteCircuitConnection + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('PeerExpressRouteCircuitConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/peerConnections/{connectionName}'} + + def list( + self, resource_group_name, circuit_name, peering_name, custom_headers=None, raw=False, **operation_config): + """Gets all global reach peer connections associated with a private + peering in an express route circuit. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param circuit_name: The name of the circuit. + :type circuit_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of + PeerExpressRouteCircuitConnection + :rtype: + ~azure.mgmt.network.v2019_09_01.models.PeerExpressRouteCircuitConnectionPaged[~azure.mgmt.network.v2019_09_01.models.PeerExpressRouteCircuitConnection] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'circuitName': self._serialize.url("circuit_name", circuit_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.PeerExpressRouteCircuitConnectionPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRouteCircuits/{circuitName}/peerings/{peeringName}/peerConnections'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_private_endpoints_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_private_endpoints_operations.py new file mode 100644 index 000000000000..a1049704093b --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_private_endpoints_operations.py @@ -0,0 +1,419 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class PrivateEndpointsOperations(object): + """PrivateEndpointsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, private_endpoint_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'privateEndpointName': self._serialize.url("private_endpoint_name", private_endpoint_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, private_endpoint_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified private endpoint. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param private_endpoint_name: The name of the private endpoint. + :type private_endpoint_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + private_endpoint_name=private_endpoint_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints/{privateEndpointName}'} + + def get( + self, resource_group_name, private_endpoint_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified private endpoint by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param private_endpoint_name: The name of the private endpoint. + :type private_endpoint_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PrivateEndpoint or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.PrivateEndpoint or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'privateEndpointName': self._serialize.url("private_endpoint_name", private_endpoint_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('PrivateEndpoint', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints/{privateEndpointName}'} + + + def _create_or_update_initial( + self, resource_group_name, private_endpoint_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'privateEndpointName': self._serialize.url("private_endpoint_name", private_endpoint_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PrivateEndpoint') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PrivateEndpoint', response) + if response.status_code == 201: + deserialized = self._deserialize('PrivateEndpoint', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, private_endpoint_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates an private endpoint in the specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param private_endpoint_name: The name of the private endpoint. + :type private_endpoint_name: str + :param parameters: Parameters supplied to the create or update private + endpoint operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.PrivateEndpoint + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns PrivateEndpoint or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.PrivateEndpoint] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.PrivateEndpoint]] + :raises: + :class:`ErrorException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + private_endpoint_name=private_endpoint_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('PrivateEndpoint', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints/{privateEndpointName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all private endpoints in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PrivateEndpoint + :rtype: + ~azure.mgmt.network.v2019_09_01.models.PrivateEndpointPaged[~azure.mgmt.network.v2019_09_01.models.PrivateEndpoint] + :raises: + :class:`ErrorException` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.PrivateEndpointPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints'} + + def list_by_subscription( + self, custom_headers=None, raw=False, **operation_config): + """Gets all private endpoints in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PrivateEndpoint + :rtype: + ~azure.mgmt.network.v2019_09_01.models.PrivateEndpointPaged[~azure.mgmt.network.v2019_09_01.models.PrivateEndpoint] + :raises: + :class:`ErrorException` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_subscription.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.PrivateEndpointPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_subscription.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/privateEndpoints'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_private_link_services_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_private_link_services_operations.py new file mode 100644 index 000000000000..855159310af6 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_private_link_services_operations.py @@ -0,0 +1,1006 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class PrivateLinkServicesOperations(object): + """PrivateLinkServicesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, service_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified private link service. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the private link service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + service_name=service_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}'} + + def get( + self, resource_group_name, service_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified private link service by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the private link service. + :type service_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PrivateLinkService or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.PrivateLinkService or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('PrivateLinkService', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}'} + + + def _create_or_update_initial( + self, resource_group_name, service_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PrivateLinkService') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PrivateLinkService', response) + if response.status_code == 201: + deserialized = self._deserialize('PrivateLinkService', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, service_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates an private link service in the specified resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the private link service. + :type service_name: str + :param parameters: Parameters supplied to the create or update private + link service operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.PrivateLinkService + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns PrivateLinkService or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.PrivateLinkService] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.PrivateLinkService]] + :raises: + :class:`ErrorException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + service_name=service_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('PrivateLinkService', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all private link services in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PrivateLinkService + :rtype: + ~azure.mgmt.network.v2019_09_01.models.PrivateLinkServicePaged[~azure.mgmt.network.v2019_09_01.models.PrivateLinkService] + :raises: + :class:`ErrorException` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.PrivateLinkServicePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices'} + + def list_by_subscription( + self, custom_headers=None, raw=False, **operation_config): + """Gets all private link service in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PrivateLinkService + :rtype: + ~azure.mgmt.network.v2019_09_01.models.PrivateLinkServicePaged[~azure.mgmt.network.v2019_09_01.models.PrivateLinkService] + :raises: + :class:`ErrorException` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_subscription.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.PrivateLinkServicePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_subscription.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/privateLinkServices'} + + def get_private_endpoint_connection( + self, resource_group_name, service_name, pe_connection_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Get the specific private end point connection by specific private link + service in the resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the private link service. + :type service_name: str + :param pe_connection_name: The name of the private end point + connection. + :type pe_connection_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PrivateEndpointConnection or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.PrivateEndpointConnection or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get_private_endpoint_connection.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str'), + 'peConnectionName': self._serialize.url("pe_connection_name", pe_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('PrivateEndpointConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_private_endpoint_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}/privateEndpointConnections/{peConnectionName}'} + + def update_private_endpoint_connection( + self, resource_group_name, service_name, pe_connection_name, parameters, custom_headers=None, raw=False, **operation_config): + """Approve or reject private end point connection for a private link + service in a subscription. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the private link service. + :type service_name: str + :param pe_connection_name: The name of the private end point + connection. + :type pe_connection_name: str + :param parameters: Parameters supplied to approve or reject the + private end point connection. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.PrivateEndpointConnection + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PrivateEndpointConnection or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.PrivateEndpointConnection or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.update_private_endpoint_connection.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str'), + 'peConnectionName': self._serialize.url("pe_connection_name", pe_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PrivateEndpointConnection') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('PrivateEndpointConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_private_endpoint_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}/privateEndpointConnections/{peConnectionName}'} + + + def _delete_private_endpoint_connection_initial( + self, resource_group_name, service_name, pe_connection_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete_private_endpoint_connection.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str'), + 'peConnectionName': self._serialize.url("pe_connection_name", pe_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete_private_endpoint_connection( + self, resource_group_name, service_name, pe_connection_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Delete private end point connection for a private link service in a + subscription. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the private link service. + :type service_name: str + :param pe_connection_name: The name of the private end point + connection. + :type pe_connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._delete_private_endpoint_connection_initial( + resource_group_name=resource_group_name, + service_name=service_name, + pe_connection_name=pe_connection_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete_private_endpoint_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}/privateEndpointConnections/{peConnectionName}'} + + def list_private_endpoint_connections( + self, resource_group_name, service_name, custom_headers=None, raw=False, **operation_config): + """Gets all private end point connections for a specific private link + service. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_name: The name of the private link service. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PrivateEndpointConnection + :rtype: + ~azure.mgmt.network.v2019_09_01.models.PrivateEndpointConnectionPaged[~azure.mgmt.network.v2019_09_01.models.PrivateEndpointConnection] + :raises: + :class:`ErrorException` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_private_endpoint_connections.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceName': self._serialize.url("service_name", service_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.PrivateEndpointConnectionPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_private_endpoint_connections.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateLinkServices/{serviceName}/privateEndpointConnections'} + + def check_private_link_service_visibility( + self, location, private_link_service_alias=None, custom_headers=None, raw=False, **operation_config): + """Checks whether the subscription is visible to private link service. + + :param location: The location of the domain name. + :type location: str + :param private_link_service_alias: The alias of the private link + service. + :type private_link_service_alias: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PrivateLinkServiceVisibility or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.PrivateLinkServiceVisibility or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.CheckPrivateLinkServiceVisibilityRequest(private_link_service_alias=private_link_service_alias) + + # Construct URL + url = self.check_private_link_service_visibility.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'CheckPrivateLinkServiceVisibilityRequest') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('PrivateLinkServiceVisibility', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + check_private_link_service_visibility.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/checkPrivateLinkServiceVisibility'} + + def check_private_link_service_visibility_by_resource_group( + self, location, resource_group_name, private_link_service_alias=None, custom_headers=None, raw=False, **operation_config): + """Checks whether the subscription is visible to private link service in + the specified resource group. + + :param location: The location of the domain name. + :type location: str + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param private_link_service_alias: The alias of the private link + service. + :type private_link_service_alias: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PrivateLinkServiceVisibility or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.PrivateLinkServiceVisibility or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.CheckPrivateLinkServiceVisibilityRequest(private_link_service_alias=private_link_service_alias) + + # Construct URL + url = self.check_private_link_service_visibility_by_resource_group.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'CheckPrivateLinkServiceVisibilityRequest') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('PrivateLinkServiceVisibility', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + check_private_link_service_visibility_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/checkPrivateLinkServiceVisibility'} + + def list_auto_approved_private_link_services( + self, location, custom_headers=None, raw=False, **operation_config): + """Returns all of the private link service ids that can be linked to a + Private Endpoint with auto approved in this subscription in this + region. + + :param location: The location of the domain name. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AutoApprovedPrivateLinkService + :rtype: + ~azure.mgmt.network.v2019_09_01.models.AutoApprovedPrivateLinkServicePaged[~azure.mgmt.network.v2019_09_01.models.AutoApprovedPrivateLinkService] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_auto_approved_private_link_services.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.AutoApprovedPrivateLinkServicePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_auto_approved_private_link_services.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/autoApprovedPrivateLinkServices'} + + def list_auto_approved_private_link_services_by_resource_group( + self, location, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Returns all of the private link service ids that can be linked to a + Private Endpoint with auto approved in this subscription in this + region. + + :param location: The location of the domain name. + :type location: str + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of AutoApprovedPrivateLinkService + :rtype: + ~azure.mgmt.network.v2019_09_01.models.AutoApprovedPrivateLinkServicePaged[~azure.mgmt.network.v2019_09_01.models.AutoApprovedPrivateLinkService] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_auto_approved_private_link_services_by_resource_group.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.AutoApprovedPrivateLinkServicePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_auto_approved_private_link_services_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/locations/{location}/autoApprovedPrivateLinkServices'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_public_ip_addresses_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_public_ip_addresses_operations.py new file mode 100644 index 000000000000..5f6da91c1f7b --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_public_ip_addresses_operations.py @@ -0,0 +1,745 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class PublicIPAddressesOperations(object): + """PublicIPAddressesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + + self.config = config + + + def _delete_initial( + self, resource_group_name, public_ip_address_name, custom_headers=None, raw=False, **operation_config): + api_version = "2019-09-01" + + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpAddressName': self._serialize.url("public_ip_address_name", public_ip_address_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, public_ip_address_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified public IP address. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_address_name: The name of the subnet. + :type public_ip_address_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + public_ip_address_name=public_ip_address_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses/{publicIpAddressName}'} + + def get( + self, resource_group_name, public_ip_address_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified public IP address in a specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_address_name: The name of the subnet. + :type public_ip_address_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PublicIPAddress or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.PublicIPAddress or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2019-09-01" + + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpAddressName': self._serialize.url("public_ip_address_name", public_ip_address_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('PublicIPAddress', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses/{publicIpAddressName}'} + + + def _create_or_update_initial( + self, resource_group_name, public_ip_address_name, parameters, custom_headers=None, raw=False, **operation_config): + api_version = "2019-09-01" + + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpAddressName': self._serialize.url("public_ip_address_name", public_ip_address_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PublicIPAddress') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PublicIPAddress', response) + if response.status_code == 201: + deserialized = self._deserialize('PublicIPAddress', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, public_ip_address_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a static or dynamic public IP address. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_address_name: The name of the public IP address. + :type public_ip_address_name: str + :param parameters: Parameters supplied to the create or update public + IP address operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.PublicIPAddress + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns PublicIPAddress or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.PublicIPAddress] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.PublicIPAddress]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + public_ip_address_name=public_ip_address_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('PublicIPAddress', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses/{publicIpAddressName}'} + + def update_tags( + self, resource_group_name, public_ip_address_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates public IP address tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_address_name: The name of the public IP address. + :type public_ip_address_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PublicIPAddress or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.PublicIPAddress or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.TagsObject(tags=tags) + + api_version = "2019-09-01" + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpAddressName': self._serialize.url("public_ip_address_name", public_ip_address_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('PublicIPAddress', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses/{publicIpAddressName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the public IP addresses in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PublicIPAddress + :rtype: + ~azure.mgmt.network.v2019_09_01.models.PublicIPAddressPaged[~azure.mgmt.network.v2019_09_01.models.PublicIPAddress] + :raises: :class:`CloudError` + """ + api_version = "2019-09-01" + + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPAddresses'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all public IP addresses in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PublicIPAddress + :rtype: + ~azure.mgmt.network.v2019_09_01.models.PublicIPAddressPaged[~azure.mgmt.network.v2019_09_01.models.PublicIPAddress] + :raises: :class:`CloudError` + """ + api_version = "2019-09-01" + + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPAddresses'} + + def list_virtual_machine_scale_set_public_ip_addresses( + self, resource_group_name, virtual_machine_scale_set_name, custom_headers=None, raw=False, **operation_config): + """Gets information about all public IP addresses on a virtual machine + scale set level. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PublicIPAddress + :rtype: + ~azure.mgmt.network.v2019_09_01.models.PublicIPAddressPaged[~azure.mgmt.network.v2019_09_01.models.PublicIPAddress] + :raises: :class:`CloudError` + """ + api_version = "2018-10-01" + + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_virtual_machine_scale_set_public_ip_addresses.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_virtual_machine_scale_set_public_ip_addresses.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/publicipaddresses'} + + def list_virtual_machine_scale_set_vm_public_ip_addresses( + self, resource_group_name, virtual_machine_scale_set_name, virtualmachine_index, network_interface_name, ip_configuration_name, custom_headers=None, raw=False, **operation_config): + """Gets information about all public IP addresses in a virtual machine IP + configuration in a virtual machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param virtualmachine_index: The virtual machine index. + :type virtualmachine_index: str + :param network_interface_name: The network interface name. + :type network_interface_name: str + :param ip_configuration_name: The IP configuration name. + :type ip_configuration_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PublicIPAddress + :rtype: + ~azure.mgmt.network.v2019_09_01.models.PublicIPAddressPaged[~azure.mgmt.network.v2019_09_01.models.PublicIPAddress] + :raises: :class:`CloudError` + """ + api_version = "2018-10-01" + + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_virtual_machine_scale_set_vm_public_ip_addresses.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'virtualmachineIndex': self._serialize.url("virtualmachine_index", virtualmachine_index, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'ipConfigurationName': self._serialize.url("ip_configuration_name", ip_configuration_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.PublicIPAddressPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_virtual_machine_scale_set_vm_public_ip_addresses.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses'} + + def get_virtual_machine_scale_set_public_ip_address( + self, resource_group_name, virtual_machine_scale_set_name, virtualmachine_index, network_interface_name, ip_configuration_name, public_ip_address_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Get the specified public IP address in a virtual machine scale set. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_machine_scale_set_name: The name of the virtual machine + scale set. + :type virtual_machine_scale_set_name: str + :param virtualmachine_index: The virtual machine index. + :type virtualmachine_index: str + :param network_interface_name: The name of the network interface. + :type network_interface_name: str + :param ip_configuration_name: The name of the IP configuration. + :type ip_configuration_name: str + :param public_ip_address_name: The name of the public IP Address. + :type public_ip_address_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PublicIPAddress or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.PublicIPAddress or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + api_version = "2018-10-01" + + # Construct URL + url = self.get_virtual_machine_scale_set_public_ip_address.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualMachineScaleSetName': self._serialize.url("virtual_machine_scale_set_name", virtual_machine_scale_set_name, 'str'), + 'virtualmachineIndex': self._serialize.url("virtualmachine_index", virtualmachine_index, 'str'), + 'networkInterfaceName': self._serialize.url("network_interface_name", network_interface_name, 'str'), + 'ipConfigurationName': self._serialize.url("ip_configuration_name", ip_configuration_name, 'str'), + 'publicIpAddressName': self._serialize.url("public_ip_address_name", public_ip_address_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("api_version", api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('PublicIPAddress', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_virtual_machine_scale_set_public_ip_address.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{virtualMachineScaleSetName}/virtualMachines/{virtualmachineIndex}/networkInterfaces/{networkInterfaceName}/ipconfigurations/{ipConfigurationName}/publicipaddresses/{publicIpAddressName}'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_public_ip_prefixes_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_public_ip_prefixes_operations.py new file mode 100644 index 000000000000..e5bbbe0612ed --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_public_ip_prefixes_operations.py @@ -0,0 +1,494 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class PublicIPPrefixesOperations(object): + """PublicIPPrefixesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, public_ip_prefix_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpPrefixName': self._serialize.url("public_ip_prefix_name", public_ip_prefix_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, public_ip_prefix_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified public IP prefix. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_prefix_name: The name of the PublicIpPrefix. + :type public_ip_prefix_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + public_ip_prefix_name=public_ip_prefix_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIpPrefixName}'} + + def get( + self, resource_group_name, public_ip_prefix_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified public IP prefix in a specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_prefix_name: The name of the public IP prefix. + :type public_ip_prefix_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PublicIPPrefix or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.PublicIPPrefix or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpPrefixName': self._serialize.url("public_ip_prefix_name", public_ip_prefix_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('PublicIPPrefix', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIpPrefixName}'} + + + def _create_or_update_initial( + self, resource_group_name, public_ip_prefix_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpPrefixName': self._serialize.url("public_ip_prefix_name", public_ip_prefix_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'PublicIPPrefix') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('PublicIPPrefix', response) + if response.status_code == 201: + deserialized = self._deserialize('PublicIPPrefix', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, public_ip_prefix_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a static or dynamic public IP prefix. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_prefix_name: The name of the public IP prefix. + :type public_ip_prefix_name: str + :param parameters: Parameters supplied to the create or update public + IP prefix operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.PublicIPPrefix + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns PublicIPPrefix or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.PublicIPPrefix] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.PublicIPPrefix]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + public_ip_prefix_name=public_ip_prefix_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('PublicIPPrefix', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIpPrefixName}'} + + def update_tags( + self, resource_group_name, public_ip_prefix_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates public IP prefix tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param public_ip_prefix_name: The name of the public IP prefix. + :type public_ip_prefix_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: PublicIPPrefix or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.PublicIPPrefix or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'publicIpPrefixName': self._serialize.url("public_ip_prefix_name", public_ip_prefix_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('PublicIPPrefix', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIpPrefixName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the public IP prefixes in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PublicIPPrefix + :rtype: + ~azure.mgmt.network.v2019_09_01.models.PublicIPPrefixPaged[~azure.mgmt.network.v2019_09_01.models.PublicIPPrefix] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.PublicIPPrefixPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPPrefixes'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all public IP prefixes in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of PublicIPPrefix + :rtype: + ~azure.mgmt.network.v2019_09_01.models.PublicIPPrefixPaged[~azure.mgmt.network.v2019_09_01.models.PublicIPPrefix] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.PublicIPPrefixPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_resource_navigation_links_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_resource_navigation_links_operations.py new file mode 100644 index 000000000000..593b2d383b56 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_resource_navigation_links_operations.py @@ -0,0 +1,106 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class ResourceNavigationLinksOperations(object): + """ResourceNavigationLinksOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, resource_group_name, virtual_network_name, subnet_name, custom_headers=None, raw=False, **operation_config): + """Gets a list of resource navigation links for a subnet. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param subnet_name: The name of the subnet. + :type subnet_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ResourceNavigationLinksListResult or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ResourceNavigationLinksListResult + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subnetName': self._serialize.url("subnet_name", subnet_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ResourceNavigationLinksListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/ResourceNavigationLinks'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_route_filter_rules_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_route_filter_rules_operations.py new file mode 100644 index 000000000000..522f1c2b23d0 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_route_filter_rules_operations.py @@ -0,0 +1,369 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class RouteFilterRulesOperations(object): + """RouteFilterRulesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, route_filter_name, rule_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'ruleName': self._serialize.url("rule_name", rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, route_filter_name, rule_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified rule from a route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param rule_name: The name of the rule. + :type rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + route_filter_name=route_filter_name, + rule_name=rule_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules/{ruleName}'} + + def get( + self, resource_group_name, route_filter_name, rule_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified rule from a route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param rule_name: The name of the rule. + :type rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RouteFilterRule or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.RouteFilterRule or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'ruleName': self._serialize.url("rule_name", rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('RouteFilterRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules/{ruleName}'} + + + def _create_or_update_initial( + self, resource_group_name, route_filter_name, rule_name, route_filter_rule_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'ruleName': self._serialize.url("rule_name", rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(route_filter_rule_parameters, 'RouteFilterRule') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteFilterRule', response) + if response.status_code == 201: + deserialized = self._deserialize('RouteFilterRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, route_filter_name, rule_name, route_filter_rule_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a route in the specified route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param rule_name: The name of the route filter rule. + :type rule_name: str + :param route_filter_rule_parameters: Parameters supplied to the create + or update route filter rule operation. + :type route_filter_rule_parameters: + ~azure.mgmt.network.v2019_09_01.models.RouteFilterRule + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns RouteFilterRule or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.RouteFilterRule] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.RouteFilterRule]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + route_filter_name=route_filter_name, + rule_name=rule_name, + route_filter_rule_parameters=route_filter_rule_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('RouteFilterRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules/{ruleName}'} + + def list_by_route_filter( + self, resource_group_name, route_filter_name, custom_headers=None, raw=False, **operation_config): + """Gets all RouteFilterRules in a route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RouteFilterRule + :rtype: + ~azure.mgmt.network.v2019_09_01.models.RouteFilterRulePaged[~azure.mgmt.network.v2019_09_01.models.RouteFilterRule] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_route_filter.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.RouteFilterRulePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_route_filter.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}/routeFilterRules'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_route_filters_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_route_filters_operations.py new file mode 100644 index 000000000000..0cd6d4ab9eda --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_route_filters_operations.py @@ -0,0 +1,494 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class RouteFiltersOperations(object): + """RouteFiltersOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, route_filter_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, route_filter_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + route_filter_name=route_filter_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}'} + + def get( + self, resource_group_name, route_filter_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param expand: Expands referenced express route bgp peering resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RouteFilter or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.RouteFilter or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('RouteFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}'} + + + def _create_or_update_initial( + self, resource_group_name, route_filter_name, route_filter_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(route_filter_parameters, 'RouteFilter') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteFilter', response) + if response.status_code == 201: + deserialized = self._deserialize('RouteFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, route_filter_name, route_filter_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a route filter in a specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param route_filter_parameters: Parameters supplied to the create or + update route filter operation. + :type route_filter_parameters: + ~azure.mgmt.network.v2019_09_01.models.RouteFilter + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns RouteFilter or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.RouteFilter] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.RouteFilter]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + route_filter_name=route_filter_name, + route_filter_parameters=route_filter_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('RouteFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}'} + + def update_tags( + self, resource_group_name, route_filter_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates tags of a route filter. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_filter_name: The name of the route filter. + :type route_filter_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RouteFilter or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.RouteFilter or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeFilterName': self._serialize.url("route_filter_name", route_filter_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('RouteFilter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters/{routeFilterName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all route filters in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RouteFilter + :rtype: + ~azure.mgmt.network.v2019_09_01.models.RouteFilterPaged[~azure.mgmt.network.v2019_09_01.models.RouteFilter] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.RouteFilterPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeFilters'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets all route filters in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RouteFilter + :rtype: + ~azure.mgmt.network.v2019_09_01.models.RouteFilterPaged[~azure.mgmt.network.v2019_09_01.models.RouteFilter] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.RouteFilterPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeFilters'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_route_tables_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_route_tables_operations.py new file mode 100644 index 000000000000..09a03e014e60 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_route_tables_operations.py @@ -0,0 +1,493 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class RouteTablesOperations(object): + """RouteTablesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, route_table_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, route_table_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified route table. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + route_table_name=route_table_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}'} + + def get( + self, resource_group_name, route_table_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified route table. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RouteTable or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.RouteTable or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('RouteTable', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}'} + + + def _create_or_update_initial( + self, resource_group_name, route_table_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'RouteTable') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('RouteTable', response) + if response.status_code == 201: + deserialized = self._deserialize('RouteTable', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, route_table_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Create or updates a route table in a specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param parameters: Parameters supplied to the create or update route + table operation. + :type parameters: ~azure.mgmt.network.v2019_09_01.models.RouteTable + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns RouteTable or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.RouteTable] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.RouteTable]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + route_table_name=route_table_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('RouteTable', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}'} + + def update_tags( + self, resource_group_name, route_table_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates a route table tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: RouteTable or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.RouteTable or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('RouteTable', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all route tables in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RouteTable + :rtype: + ~azure.mgmt.network.v2019_09_01.models.RouteTablePaged[~azure.mgmt.network.v2019_09_01.models.RouteTable] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.RouteTablePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all route tables in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of RouteTable + :rtype: + ~azure.mgmt.network.v2019_09_01.models.RouteTablePaged[~azure.mgmt.network.v2019_09_01.models.RouteTable] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.RouteTablePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/routeTables'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_routes_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_routes_operations.py new file mode 100644 index 000000000000..1f22e783dc7a --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_routes_operations.py @@ -0,0 +1,368 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class RoutesOperations(object): + """RoutesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, route_table_name, route_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'routeName': self._serialize.url("route_name", route_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, route_table_name, route_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified route from a route table. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param route_name: The name of the route. + :type route_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + route_table_name=route_table_name, + route_name=route_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes/{routeName}'} + + def get( + self, resource_group_name, route_table_name, route_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified route from a route table. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param route_name: The name of the route. + :type route_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Route or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.Route or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'routeName': self._serialize.url("route_name", route_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('Route', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes/{routeName}'} + + + def _create_or_update_initial( + self, resource_group_name, route_table_name, route_name, route_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'routeName': self._serialize.url("route_name", route_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(route_parameters, 'Route') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Route', response) + if response.status_code == 201: + deserialized = self._deserialize('Route', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, route_table_name, route_name, route_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a route in the specified route table. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param route_name: The name of the route. + :type route_name: str + :param route_parameters: Parameters supplied to the create or update + route operation. + :type route_parameters: ~azure.mgmt.network.v2019_09_01.models.Route + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Route or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.Route] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.Route]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + route_table_name=route_table_name, + route_name=route_name, + route_parameters=route_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Route', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes/{routeName}'} + + def list( + self, resource_group_name, route_table_name, custom_headers=None, raw=False, **operation_config): + """Gets all routes in a route table. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param route_table_name: The name of the route table. + :type route_table_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Route + :rtype: + ~azure.mgmt.network.v2019_09_01.models.RoutePaged[~azure.mgmt.network.v2019_09_01.models.Route] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.RoutePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/routeTables/{routeTableName}/routes'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_security_rules_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_security_rules_operations.py new file mode 100644 index 000000000000..f3123894b8db --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_security_rules_operations.py @@ -0,0 +1,374 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class SecurityRulesOperations(object): + """SecurityRulesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, network_security_group_name, security_rule_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'securityRuleName': self._serialize.url("security_rule_name", security_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, network_security_group_name, security_rule_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified network security rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param security_rule_name: The name of the security rule. + :type security_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + network_security_group_name=network_security_group_name, + security_rule_name=security_rule_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules/{securityRuleName}'} + + def get( + self, resource_group_name, network_security_group_name, security_rule_name, custom_headers=None, raw=False, **operation_config): + """Get the specified network security rule. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param security_rule_name: The name of the security rule. + :type security_rule_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: SecurityRule or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.SecurityRule or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'securityRuleName': self._serialize.url("security_rule_name", security_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('SecurityRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules/{securityRuleName}'} + + + def _create_or_update_initial( + self, resource_group_name, network_security_group_name, security_rule_name, security_rule_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'securityRuleName': self._serialize.url("security_rule_name", security_rule_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(security_rule_parameters, 'SecurityRule') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('SecurityRule', response) + if response.status_code == 201: + deserialized = self._deserialize('SecurityRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, network_security_group_name, security_rule_name, security_rule_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a security rule in the specified network security + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param security_rule_name: The name of the security rule. + :type security_rule_name: str + :param security_rule_parameters: Parameters supplied to the create or + update network security rule operation. + :type security_rule_parameters: + ~azure.mgmt.network.v2019_09_01.models.SecurityRule + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns SecurityRule or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.SecurityRule] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.SecurityRule]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + network_security_group_name=network_security_group_name, + security_rule_name=security_rule_name, + security_rule_parameters=security_rule_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('SecurityRule', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules/{securityRuleName}'} + + def list( + self, resource_group_name, network_security_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all security rules in a network security group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param network_security_group_name: The name of the network security + group. + :type network_security_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of SecurityRule + :rtype: + ~azure.mgmt.network.v2019_09_01.models.SecurityRulePaged[~azure.mgmt.network.v2019_09_01.models.SecurityRule] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'networkSecurityGroupName': self._serialize.url("network_security_group_name", network_security_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.SecurityRulePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_service_association_links_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_service_association_links_operations.py new file mode 100644 index 000000000000..f35ff18e0467 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_service_association_links_operations.py @@ -0,0 +1,106 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class ServiceAssociationLinksOperations(object): + """ServiceAssociationLinksOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, resource_group_name, virtual_network_name, subnet_name, custom_headers=None, raw=False, **operation_config): + """Gets a list of service association links for a subnet. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param subnet_name: The name of the subnet. + :type subnet_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ServiceAssociationLinksListResult or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ServiceAssociationLinksListResult + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subnetName': self._serialize.url("subnet_name", subnet_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ServiceAssociationLinksListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/ServiceAssociationLinks'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_service_endpoint_policies_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_service_endpoint_policies_operations.py new file mode 100644 index 000000000000..dbf419f8bcd0 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_service_endpoint_policies_operations.py @@ -0,0 +1,499 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ServiceEndpointPoliciesOperations(object): + """ServiceEndpointPoliciesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, service_endpoint_policy_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, service_endpoint_policy_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified service endpoint policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy. + :type service_endpoint_policy_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + service_endpoint_policy_name=service_endpoint_policy_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}'} + + def get( + self, resource_group_name, service_endpoint_policy_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified service Endpoint Policies in a specified resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy. + :type service_endpoint_policy_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ServiceEndpointPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPolicy + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ServiceEndpointPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}'} + + + def _create_or_update_initial( + self, resource_group_name, service_endpoint_policy_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ServiceEndpointPolicy') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServiceEndpointPolicy', response) + if response.status_code == 201: + deserialized = self._deserialize('ServiceEndpointPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, service_endpoint_policy_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a service Endpoint Policies. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy. + :type service_endpoint_policy_name: str + :param parameters: Parameters supplied to the create or update service + endpoint policy operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPolicy + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ServiceEndpointPolicy + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPolicy] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPolicy]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + service_endpoint_policy_name=service_endpoint_policy_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ServiceEndpointPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}'} + + def update_tags( + self, resource_group_name, service_endpoint_policy_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates tags of a service endpoint policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy. + :type service_endpoint_policy_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ServiceEndpointPolicy or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPolicy + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ServiceEndpointPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the service endpoint policies in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ServiceEndpointPolicy + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPolicyPaged[~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPolicy] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ServiceEndpointPolicyPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/ServiceEndpointPolicies'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all service endpoint Policies in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ServiceEndpointPolicy + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPolicyPaged[~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPolicy] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ServiceEndpointPolicyPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_service_endpoint_policy_definitions_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_service_endpoint_policy_definitions_operations.py new file mode 100644 index 000000000000..242bc295f42f --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_service_endpoint_policy_definitions_operations.py @@ -0,0 +1,382 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class ServiceEndpointPolicyDefinitionsOperations(object): + """ServiceEndpointPolicyDefinitionsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, service_endpoint_policy_name, service_endpoint_policy_definition_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'serviceEndpointPolicyDefinitionName': self._serialize.url("service_endpoint_policy_definition_name", service_endpoint_policy_definition_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, service_endpoint_policy_name, service_endpoint_policy_definition_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified ServiceEndpoint policy definitions. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the Service Endpoint + Policy. + :type service_endpoint_policy_name: str + :param service_endpoint_policy_definition_name: The name of the + service endpoint policy definition. + :type service_endpoint_policy_definition_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + service_endpoint_policy_name=service_endpoint_policy_name, + service_endpoint_policy_definition_name=service_endpoint_policy_definition_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions/{serviceEndpointPolicyDefinitionName}'} + + def get( + self, resource_group_name, service_endpoint_policy_name, service_endpoint_policy_definition_name, custom_headers=None, raw=False, **operation_config): + """Get the specified service endpoint policy definitions from service + endpoint policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy name. + :type service_endpoint_policy_name: str + :param service_endpoint_policy_definition_name: The name of the + service endpoint policy definition name. + :type service_endpoint_policy_definition_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ServiceEndpointPolicyDefinition or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPolicyDefinition + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'serviceEndpointPolicyDefinitionName': self._serialize.url("service_endpoint_policy_definition_name", service_endpoint_policy_definition_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ServiceEndpointPolicyDefinition', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions/{serviceEndpointPolicyDefinitionName}'} + + + def _create_or_update_initial( + self, resource_group_name, service_endpoint_policy_name, service_endpoint_policy_definition_name, service_endpoint_policy_definitions, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'serviceEndpointPolicyDefinitionName': self._serialize.url("service_endpoint_policy_definition_name", service_endpoint_policy_definition_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(service_endpoint_policy_definitions, 'ServiceEndpointPolicyDefinition') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ServiceEndpointPolicyDefinition', response) + if response.status_code == 201: + deserialized = self._deserialize('ServiceEndpointPolicyDefinition', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, service_endpoint_policy_name, service_endpoint_policy_definition_name, service_endpoint_policy_definitions, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a service endpoint policy definition in the + specified service endpoint policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy. + :type service_endpoint_policy_name: str + :param service_endpoint_policy_definition_name: The name of the + service endpoint policy definition name. + :type service_endpoint_policy_definition_name: str + :param service_endpoint_policy_definitions: Parameters supplied to the + create or update service endpoint policy operation. + :type service_endpoint_policy_definitions: + ~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPolicyDefinition + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ServiceEndpointPolicyDefinition or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPolicyDefinition] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPolicyDefinition]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + service_endpoint_policy_name=service_endpoint_policy_name, + service_endpoint_policy_definition_name=service_endpoint_policy_definition_name, + service_endpoint_policy_definitions=service_endpoint_policy_definitions, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ServiceEndpointPolicyDefinition', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions/{serviceEndpointPolicyDefinitionName}'} + + def list_by_resource_group( + self, resource_group_name, service_endpoint_policy_name, custom_headers=None, raw=False, **operation_config): + """Gets all service endpoint policy definitions in a service end point + policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param service_endpoint_policy_name: The name of the service endpoint + policy name. + :type service_endpoint_policy_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of ServiceEndpointPolicyDefinition + :rtype: + ~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPolicyDefinitionPaged[~azure.mgmt.network.v2019_09_01.models.ServiceEndpointPolicyDefinition] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'serviceEndpointPolicyName': self._serialize.url("service_endpoint_policy_name", service_endpoint_policy_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.ServiceEndpointPolicyDefinitionPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/serviceEndpointPolicies/{serviceEndpointPolicyName}/serviceEndpointPolicyDefinitions'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_service_tags_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_service_tags_operations.py new file mode 100644 index 000000000000..849e538c203f --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_service_tags_operations.py @@ -0,0 +1,101 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class ServiceTagsOperations(object): + """ServiceTagsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, location, custom_headers=None, raw=False, **operation_config): + """Gets a list of service tag information resources. + + :param location: The location that will be used as a reference for + version (not as a filter based on location, you will get the list of + service tags with prefix details across all regions but limited to the + cloud that your subscription belongs to). + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ServiceTagsListResult or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.ServiceTagsListResult + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ServiceTagsListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/serviceTags'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_subnets_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_subnets_operations.py new file mode 100644 index 000000000000..798b9cc118c0 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_subnets_operations.py @@ -0,0 +1,563 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class SubnetsOperations(object): + """SubnetsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, virtual_network_name, subnet_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subnetName': self._serialize.url("subnet_name", subnet_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_network_name, subnet_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified subnet. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param subnet_name: The name of the subnet. + :type subnet_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + subnet_name=subnet_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}'} + + def get( + self, resource_group_name, virtual_network_name, subnet_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified subnet by virtual network and resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param subnet_name: The name of the subnet. + :type subnet_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: Subnet or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.Subnet or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subnetName': self._serialize.url("subnet_name", subnet_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('Subnet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}'} + + + def _create_or_update_initial( + self, resource_group_name, virtual_network_name, subnet_name, subnet_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subnetName': self._serialize.url("subnet_name", subnet_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(subnet_parameters, 'Subnet') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('Subnet', response) + if response.status_code == 201: + deserialized = self._deserialize('Subnet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_network_name, subnet_name, subnet_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a subnet in the specified virtual network. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param subnet_name: The name of the subnet. + :type subnet_name: str + :param subnet_parameters: Parameters supplied to the create or update + subnet operation. + :type subnet_parameters: ~azure.mgmt.network.v2019_09_01.models.Subnet + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns Subnet or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.Subnet] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.Subnet]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + subnet_name=subnet_name, + subnet_parameters=subnet_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('Subnet', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}'} + + + def _prepare_network_policies_initial( + self, resource_group_name, virtual_network_name, subnet_name, service_name=None, network_intent_policy_configurations=None, custom_headers=None, raw=False, **operation_config): + prepare_network_policies_request_parameters = models.PrepareNetworkPoliciesRequest(service_name=service_name, network_intent_policy_configurations=network_intent_policy_configurations) + + # Construct URL + url = self.prepare_network_policies.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subnetName': self._serialize.url("subnet_name", subnet_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(prepare_network_policies_request_parameters, 'PrepareNetworkPoliciesRequest') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def prepare_network_policies( + self, resource_group_name, virtual_network_name, subnet_name, service_name=None, network_intent_policy_configurations=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Prepares a subnet by applying network intent policies. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param subnet_name: The name of the subnet. + :type subnet_name: str + :param service_name: The name of the service for which subnet is being + prepared for. + :type service_name: str + :param network_intent_policy_configurations: A list of + NetworkIntentPolicyConfiguration. + :type network_intent_policy_configurations: + list[~azure.mgmt.network.v2019_09_01.models.NetworkIntentPolicyConfiguration] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._prepare_network_policies_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + subnet_name=subnet_name, + service_name=service_name, + network_intent_policy_configurations=network_intent_policy_configurations, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + prepare_network_policies.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/PrepareNetworkPolicies'} + + + def _unprepare_network_policies_initial( + self, resource_group_name, virtual_network_name, subnet_name, service_name=None, custom_headers=None, raw=False, **operation_config): + unprepare_network_policies_request_parameters = models.UnprepareNetworkPoliciesRequest(service_name=service_name) + + # Construct URL + url = self.unprepare_network_policies.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subnetName': self._serialize.url("subnet_name", subnet_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(unprepare_network_policies_request_parameters, 'UnprepareNetworkPoliciesRequest') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def unprepare_network_policies( + self, resource_group_name, virtual_network_name, subnet_name, service_name=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Unprepares a subnet by removing network intent policies. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param subnet_name: The name of the subnet. + :type subnet_name: str + :param service_name: The name of the service for which subnet is being + unprepared for. + :type service_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._unprepare_network_policies_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + subnet_name=subnet_name, + service_name=service_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + unprepare_network_policies.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}/UnprepareNetworkPolicies'} + + def list( + self, resource_group_name, virtual_network_name, custom_headers=None, raw=False, **operation_config): + """Gets all subnets in a virtual network. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Subnet + :rtype: + ~azure.mgmt.network.v2019_09_01.models.SubnetPaged[~azure.mgmt.network.v2019_09_01.models.Subnet] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.SubnetPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_usages_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_usages_operations.py new file mode 100644 index 000000000000..0b4a8d673eb8 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_usages_operations.py @@ -0,0 +1,109 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class UsagesOperations(object): + """UsagesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, location, custom_headers=None, raw=False, **operation_config): + """List network usages for a subscription. + + :param location: The location where resource usage is queried. + :type location: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of Usage + :rtype: + ~azure.mgmt.network.v2019_09_01.models.UsagePaged[~azure.mgmt.network.v2019_09_01.models.Usage] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'location': self._serialize.url("location", location, 'str', pattern=r'^[-\w\._ ]+$'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.UsagePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/usages'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_hub_route_table_v2s_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_hub_route_table_v2s_operations.py new file mode 100644 index 000000000000..cbdb52935d3a --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_hub_route_table_v2s_operations.py @@ -0,0 +1,369 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualHubRouteTableV2sOperations(object): + """VirtualHubRouteTableV2sOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def get( + self, resource_group_name, virtual_hub_name, route_table_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a VirtualHubRouteTableV2. + + :param resource_group_name: The resource group name of the + VirtualHubRouteTableV2. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param route_table_name: The name of the VirtualHubRouteTableV2. + :type route_table_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualHubRouteTableV2 or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VirtualHubRouteTableV2 + or ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VirtualHubRouteTableV2', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/routeTables/{routeTableName}'} + + + def _create_or_update_initial( + self, resource_group_name, virtual_hub_name, route_table_name, virtual_hub_route_table_v2_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(virtual_hub_route_table_v2_parameters, 'VirtualHubRouteTableV2') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualHubRouteTableV2', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualHubRouteTableV2', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_hub_name, route_table_name, virtual_hub_route_table_v2_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a VirtualHubRouteTableV2 resource if it doesn't exist else + updates the existing VirtualHubRouteTableV2. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param route_table_name: The name of the VirtualHubRouteTableV2. + :type route_table_name: str + :param virtual_hub_route_table_v2_parameters: Parameters supplied to + create or update VirtualHubRouteTableV2. + :type virtual_hub_route_table_v2_parameters: + ~azure.mgmt.network.v2019_09_01.models.VirtualHubRouteTableV2 + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualHubRouteTableV2 + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VirtualHubRouteTableV2] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VirtualHubRouteTableV2]] + :raises: + :class:`ErrorException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_hub_name=virtual_hub_name, + route_table_name=route_table_name, + virtual_hub_route_table_v2_parameters=virtual_hub_route_table_v2_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualHubRouteTableV2', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/routeTables/{routeTableName}'} + + + def _delete_initial( + self, resource_group_name, virtual_hub_name, route_table_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str'), + 'routeTableName': self._serialize.url("route_table_name", route_table_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_hub_name, route_table_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a VirtualHubRouteTableV2. + + :param resource_group_name: The resource group name of the + VirtualHubRouteTableV2. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param route_table_name: The name of the VirtualHubRouteTableV2. + :type route_table_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_hub_name=virtual_hub_name, + route_table_name=route_table_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/routeTables/{routeTableName}'} + + def list( + self, resource_group_name, virtual_hub_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of all VirtualHubRouteTableV2s. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualHubRouteTableV2 + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VirtualHubRouteTableV2Paged[~azure.mgmt.network.v2019_09_01.models.VirtualHubRouteTableV2] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VirtualHubRouteTableV2Paged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}/routeTables'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_hubs_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_hubs_operations.py new file mode 100644 index 000000000000..3566fdec8edc --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_hubs_operations.py @@ -0,0 +1,491 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualHubsOperations(object): + """VirtualHubsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def get( + self, resource_group_name, virtual_hub_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a VirtualHub. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualHub or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VirtualHub or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VirtualHub', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}'} + + + def _create_or_update_initial( + self, resource_group_name, virtual_hub_name, virtual_hub_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(virtual_hub_parameters, 'VirtualHub') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualHub', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualHub', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_hub_name, virtual_hub_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a VirtualHub resource if it doesn't exist else updates the + existing VirtualHub. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param virtual_hub_parameters: Parameters supplied to create or update + VirtualHub. + :type virtual_hub_parameters: + ~azure.mgmt.network.v2019_09_01.models.VirtualHub + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualHub or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VirtualHub] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VirtualHub]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_hub_name=virtual_hub_name, + virtual_hub_parameters=virtual_hub_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualHub', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}'} + + def update_tags( + self, resource_group_name, virtual_hub_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates VirtualHub tags. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualHub or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VirtualHub or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + virtual_hub_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(virtual_hub_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VirtualHub', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}'} + + + def _delete_initial( + self, resource_group_name, virtual_hub_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualHubName': self._serialize.url("virtual_hub_name", virtual_hub_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_hub_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a VirtualHub. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param virtual_hub_name: The name of the VirtualHub. + :type virtual_hub_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_hub_name=virtual_hub_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs/{virtualHubName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all the VirtualHubs in a resource group. + + :param resource_group_name: The resource group name of the VirtualHub. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualHub + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VirtualHubPaged[~azure.mgmt.network.v2019_09_01.models.VirtualHub] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VirtualHubPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualHubs'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all the VirtualHubs in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualHub + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VirtualHubPaged[~azure.mgmt.network.v2019_09_01.models.VirtualHub] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VirtualHubPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualHubs'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_network_gateway_connections_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_network_gateway_connections_operations.py new file mode 100644 index 000000000000..85f24dc73c98 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_network_gateway_connections_operations.py @@ -0,0 +1,958 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualNetworkGatewayConnectionsOperations(object): + """VirtualNetworkGatewayConnectionsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, virtual_network_gateway_connection_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualNetworkGatewayConnection') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGatewayConnection', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualNetworkGatewayConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_network_gateway_connection_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a virtual network gateway connection in the + specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The name of the + virtual network gateway connection. + :type virtual_network_gateway_connection_name: str + :param parameters: Parameters supplied to the create or update virtual + network gateway connection operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnection + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VirtualNetworkGatewayConnection or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnection]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_connection_name=virtual_network_gateway_connection_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkGatewayConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}'} + + def get( + self, resource_group_name, virtual_network_gateway_connection_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified virtual network gateway connection by resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The name of the + virtual network gateway connection. + :type virtual_network_gateway_connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualNetworkGatewayConnection or ClientRawResponse if + raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnection + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGatewayConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}'} + + + def _delete_initial( + self, resource_group_name, virtual_network_gateway_connection_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_network_gateway_connection_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified virtual network Gateway connection. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The name of the + virtual network gateway connection. + :type virtual_network_gateway_connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_connection_name=virtual_network_gateway_connection_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}'} + + + def _update_tags_initial( + self, resource_group_name, virtual_network_gateway_connection_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGatewayConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, virtual_network_gateway_connection_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a virtual network gateway connection tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The name of the + virtual network gateway connection. + :type virtual_network_gateway_connection_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VirtualNetworkGatewayConnection or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnection]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_connection_name=virtual_network_gateway_connection_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkGatewayConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}'} + + + def _set_shared_key_initial( + self, resource_group_name, virtual_network_gateway_connection_name, value, id=None, custom_headers=None, raw=False, **operation_config): + parameters = models.ConnectionSharedKey(id=id, value=value) + + # Construct URL + url = self.set_shared_key.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ConnectionSharedKey') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionSharedKey', response) + if response.status_code == 201: + deserialized = self._deserialize('ConnectionSharedKey', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def set_shared_key( + self, resource_group_name, virtual_network_gateway_connection_name, value, id=None, custom_headers=None, raw=False, polling=True, **operation_config): + """The Put VirtualNetworkGatewayConnectionSharedKey operation sets the + virtual network gateway connection shared key for passed virtual + network gateway connection in the specified resource group through + Network resource provider. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The virtual network + gateway connection name. + :type virtual_network_gateway_connection_name: str + :param value: The virtual network connection shared key value. + :type value: str + :param id: Resource ID. + :type id: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns ConnectionSharedKey or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ConnectionSharedKey] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ConnectionSharedKey]] + :raises: :class:`CloudError` + """ + raw_result = self._set_shared_key_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_connection_name=virtual_network_gateway_connection_name, + value=value, + id=id, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ConnectionSharedKey', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + set_shared_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey'} + + def get_shared_key( + self, resource_group_name, virtual_network_gateway_connection_name, custom_headers=None, raw=False, **operation_config): + """The Get VirtualNetworkGatewayConnectionSharedKey operation retrieves + information about the specified virtual network gateway connection + shared key through Network resource provider. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The virtual network + gateway connection shared key name. + :type virtual_network_gateway_connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: ConnectionSharedKey or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.ConnectionSharedKey or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get_shared_key.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('ConnectionSharedKey', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get_shared_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """The List VirtualNetworkGatewayConnections operation retrieves all the + virtual network gateways connections created. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetworkGatewayConnection + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionPaged[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnection] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VirtualNetworkGatewayConnectionPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections'} + + + def _reset_shared_key_initial( + self, resource_group_name, virtual_network_gateway_connection_name, key_length, custom_headers=None, raw=False, **operation_config): + parameters = models.ConnectionResetSharedKey(key_length=key_length) + + # Construct URL + url = self.reset_shared_key.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'ConnectionResetSharedKey') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('ConnectionResetSharedKey', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def reset_shared_key( + self, resource_group_name, virtual_network_gateway_connection_name, key_length, custom_headers=None, raw=False, polling=True, **operation_config): + """The VirtualNetworkGatewayConnectionResetSharedKey operation resets the + virtual network gateway connection shared key for passed virtual + network gateway connection in the specified resource group through + Network resource provider. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The virtual network + gateway connection reset shared key Name. + :type virtual_network_gateway_connection_name: str + :param key_length: The virtual network connection reset shared key + length, should between 1 and 128. + :type key_length: int + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + ConnectionResetSharedKey or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.ConnectionResetSharedKey] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.ConnectionResetSharedKey]] + :raises: :class:`CloudError` + """ + raw_result = self._reset_shared_key_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_connection_name=virtual_network_gateway_connection_name, + key_length=key_length, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('ConnectionResetSharedKey', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + reset_shared_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey/reset'} + + + def _start_packet_capture_initial( + self, resource_group_name, virtual_network_gateway_connection_name, filter_data=None, custom_headers=None, raw=False, **operation_config): + parameters = None + if filter_data is not None: + parameters = models.VpnPacketCaptureStartParameters(filter_data=filter_data) + + # Construct URL + url = self.start_packet_capture.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + if parameters is not None: + body_content = self._serialize.body(parameters, 'VpnPacketCaptureStartParameters') + else: + body_content = None + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def start_packet_capture( + self, resource_group_name, virtual_network_gateway_connection_name, filter_data=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Starts packet capture on virtual network gateway connection in the + specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The name of the + virtual network gateway connection. + :type virtual_network_gateway_connection_name: str + :param filter_data: Start Packet capture parameters. + :type filter_data: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns str or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[str] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[str]] + :raises: + :class:`ErrorException` + """ + raw_result = self._start_packet_capture_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_connection_name=virtual_network_gateway_connection_name, + filter_data=filter_data, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + start_packet_capture.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/startPacketCapture'} + + + def _stop_packet_capture_initial( + self, resource_group_name, virtual_network_gateway_connection_name, sas_url=None, custom_headers=None, raw=False, **operation_config): + parameters = models.VpnPacketCaptureStopParameters(sas_url=sas_url) + + # Construct URL + url = self.stop_packet_capture.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VpnPacketCaptureStopParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def stop_packet_capture( + self, resource_group_name, virtual_network_gateway_connection_name, sas_url=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Stops packet capture on virtual network gateway connection in the + specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The name of the + virtual network gateway Connection. + :type virtual_network_gateway_connection_name: str + :param sas_url: SAS url for packet capture on virtual network gateway. + :type sas_url: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns str or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[str] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[str]] + :raises: + :class:`ErrorException` + """ + raw_result = self._stop_packet_capture_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_connection_name=virtual_network_gateway_connection_name, + sas_url=sas_url, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + stop_packet_capture.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/stopPacketCapture'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_network_gateways_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_network_gateways_operations.py new file mode 100644 index 000000000000..fb103515a8ed --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_network_gateways_operations.py @@ -0,0 +1,1948 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualNetworkGatewaysOperations(object): + """VirtualNetworkGatewaysOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _create_or_update_initial( + self, resource_group_name, virtual_network_gateway_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualNetworkGateway') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_network_gateway_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a virtual network gateway in the specified resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param parameters: Parameters supplied to create or update virtual + network gateway operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGateway + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetworkGateway + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}'} + + def get( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified virtual network gateway by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualNetworkGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGateway + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}'} + + + def _delete_initial( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified virtual network gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}'} + + + def _update_tags_initial( + self, resource_group_name, virtual_network_gateway_name, tags=None, custom_headers=None, raw=False, **operation_config): + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def update_tags( + self, resource_group_name, virtual_network_gateway_name, tags=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Updates a virtual network gateway tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetworkGateway + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._update_tags_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + tags=tags, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all virtual network gateways by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetworkGateway + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayPaged[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGateway] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VirtualNetworkGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways'} + + def list_connections( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + """Gets all the connections in a virtual network gateway. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of + VirtualNetworkGatewayConnectionListEntity + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionListEntityPaged[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGatewayConnectionListEntity] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_connections.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VirtualNetworkGatewayConnectionListEntityPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_connections.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/connections'} + + + def _reset_initial( + self, resource_group_name, virtual_network_gateway_name, gateway_vip=None, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.reset.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if gateway_vip is not None: + query_parameters['gatewayVip'] = self._serialize.query("gateway_vip", gateway_vip, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def reset( + self, resource_group_name, virtual_network_gateway_name, gateway_vip=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Resets the primary of the virtual network gateway in the specified + resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param gateway_vip: Virtual network gateway vip address supplied to + the begin reset of the active-active feature enabled gateway. + :type gateway_vip: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetworkGateway + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._reset_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + gateway_vip=gateway_vip, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + reset.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/reset'} + + + def _reset_vpn_client_shared_key_initial( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.reset_vpn_client_shared_key.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def reset_vpn_client_shared_key( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Resets the VPN client shared key of the virtual network gateway in the + specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._reset_vpn_client_shared_key_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + reset_vpn_client_shared_key.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/resetvpnclientsharedkey'} + + + def _generatevpnclientpackage_initial( + self, resource_group_name, virtual_network_gateway_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.generatevpnclientpackage.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VpnClientParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def generatevpnclientpackage( + self, resource_group_name, virtual_network_gateway_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Generates VPN client package for P2S client of the virtual network + gateway in the specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param parameters: Parameters supplied to the generate virtual network + gateway VPN client package operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.VpnClientParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns str or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[str] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[str]] + :raises: :class:`CloudError` + """ + raw_result = self._generatevpnclientpackage_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + generatevpnclientpackage.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnclientpackage'} + + + def _generate_vpn_profile_initial( + self, resource_group_name, virtual_network_gateway_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.generate_vpn_profile.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VpnClientParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def generate_vpn_profile( + self, resource_group_name, virtual_network_gateway_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Generates VPN profile for P2S client of the virtual network gateway in + the specified resource group. Used for IKEV2 and radius based + authentication. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param parameters: Parameters supplied to the generate virtual network + gateway VPN client package operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.VpnClientParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns str or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[str] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[str]] + :raises: :class:`CloudError` + """ + raw_result = self._generate_vpn_profile_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + generate_vpn_profile.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnprofile'} + + + def _get_vpn_profile_package_url_initial( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_vpn_profile_package_url.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_vpn_profile_package_url( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Gets pre-generated VPN profile for P2S client of the virtual network + gateway in the specified resource group. The profile needs to be + generated first using generateVpnProfile. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns str or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[str] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[str]] + :raises: :class:`CloudError` + """ + raw_result = self._get_vpn_profile_package_url_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_vpn_profile_package_url.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnprofilepackageurl'} + + + def _get_bgp_peer_status_initial( + self, resource_group_name, virtual_network_gateway_name, peer=None, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_bgp_peer_status.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + if peer is not None: + query_parameters['peer'] = self._serialize.query("peer", peer, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('BgpPeerStatusListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_bgp_peer_status( + self, resource_group_name, virtual_network_gateway_name, peer=None, custom_headers=None, raw=False, polling=True, **operation_config): + """The GetBgpPeerStatus operation retrieves the status of all BGP peers. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param peer: The IP address of the peer to retrieve the status of. + :type peer: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns BgpPeerStatusListResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.BgpPeerStatusListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.BgpPeerStatusListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._get_bgp_peer_status_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + peer=peer, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('BgpPeerStatusListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_bgp_peer_status.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getBgpPeerStatus'} + + def supported_vpn_devices( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + """Gets a xml format representation for supported vpn devices. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.supported_vpn_devices.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + supported_vpn_devices.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/supportedvpndevices'} + + + def _get_learned_routes_initial( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_learned_routes.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('GatewayRouteListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_learned_routes( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """This operation retrieves a list of routes the virtual network gateway + has learned, including routes learned from BGP peers. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns GatewayRouteListResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.GatewayRouteListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.GatewayRouteListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._get_learned_routes_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('GatewayRouteListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_learned_routes.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getLearnedRoutes'} + + + def _get_advertised_routes_initial( + self, resource_group_name, virtual_network_gateway_name, peer, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_advertised_routes.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['peer'] = self._serialize.query("peer", peer, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('GatewayRouteListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_advertised_routes( + self, resource_group_name, virtual_network_gateway_name, peer, custom_headers=None, raw=False, polling=True, **operation_config): + """This operation retrieves a list of routes the virtual network gateway + is advertising to the specified peer. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param peer: The IP address of the peer. + :type peer: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns GatewayRouteListResult + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.GatewayRouteListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.GatewayRouteListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._get_advertised_routes_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + peer=peer, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('GatewayRouteListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_advertised_routes.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getAdvertisedRoutes'} + + + def _set_vpnclient_ipsec_parameters_initial( + self, resource_group_name, virtual_network_gateway_name, vpnclient_ipsec_params, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.set_vpnclient_ipsec_parameters.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpnclient_ipsec_params, 'VpnClientIPsecParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnClientIPsecParameters', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def set_vpnclient_ipsec_parameters( + self, resource_group_name, virtual_network_gateway_name, vpnclient_ipsec_params, custom_headers=None, raw=False, polling=True, **operation_config): + """The Set VpnclientIpsecParameters operation sets the vpnclient ipsec + policy for P2S client of virtual network gateway in the specified + resource group through Network resource provider. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param vpnclient_ipsec_params: Parameters supplied to the Begin Set + vpnclient ipsec parameters of Virtual Network Gateway P2S client + operation through Network resource provider. + :type vpnclient_ipsec_params: + ~azure.mgmt.network.v2019_09_01.models.VpnClientIPsecParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VpnClientIPsecParameters or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VpnClientIPsecParameters] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VpnClientIPsecParameters]] + :raises: :class:`CloudError` + """ + raw_result = self._set_vpnclient_ipsec_parameters_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + vpnclient_ipsec_params=vpnclient_ipsec_params, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnClientIPsecParameters', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + set_vpnclient_ipsec_parameters.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/setvpnclientipsecparameters'} + + + def _get_vpnclient_ipsec_parameters_initial( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_vpnclient_ipsec_parameters.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnClientIPsecParameters', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_vpnclient_ipsec_parameters( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """The Get VpnclientIpsecParameters operation retrieves information about + the vpnclient ipsec policy for P2S client of virtual network gateway in + the specified resource group through Network resource provider. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The virtual network gateway name. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VpnClientIPsecParameters or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VpnClientIPsecParameters] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VpnClientIPsecParameters]] + :raises: :class:`CloudError` + """ + raw_result = self._get_vpnclient_ipsec_parameters_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnClientIPsecParameters', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_vpnclient_ipsec_parameters.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnclientipsecparameters'} + + def vpn_device_configuration_script( + self, resource_group_name, virtual_network_gateway_connection_name, parameters, custom_headers=None, raw=False, **operation_config): + """Gets a xml format representation for vpn device configuration script. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_connection_name: The name of the + virtual network gateway connection for which the configuration script + is generated. + :type virtual_network_gateway_connection_name: str + :param parameters: Parameters supplied to the generate vpn device + script operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.VpnDeviceScriptParameters + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: str or ClientRawResponse if raw=true + :rtype: str or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.vpn_device_configuration_script.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayConnectionName': self._serialize.url("virtual_network_gateway_connection_name", virtual_network_gateway_connection_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VpnDeviceScriptParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + vpn_device_configuration_script.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/vpndeviceconfigurationscript'} + + + def _start_packet_capture_initial( + self, resource_group_name, virtual_network_gateway_name, filter_data=None, custom_headers=None, raw=False, **operation_config): + parameters = None + if filter_data is not None: + parameters = models.VpnPacketCaptureStartParameters(filter_data=filter_data) + + # Construct URL + url = self.start_packet_capture.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + if parameters is not None: + body_content = self._serialize.body(parameters, 'VpnPacketCaptureStartParameters') + else: + body_content = None + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def start_packet_capture( + self, resource_group_name, virtual_network_gateway_name, filter_data=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Starts packet capture on virtual network gateway in the specified + resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param filter_data: Start Packet capture parameters. + :type filter_data: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns str or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[str] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[str]] + :raises: + :class:`ErrorException` + """ + raw_result = self._start_packet_capture_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + filter_data=filter_data, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + start_packet_capture.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/startPacketCapture'} + + + def _stop_packet_capture_initial( + self, resource_group_name, virtual_network_gateway_name, sas_url=None, custom_headers=None, raw=False, **operation_config): + parameters = models.VpnPacketCaptureStopParameters(sas_url=sas_url) + + # Construct URL + url = self.stop_packet_capture.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VpnPacketCaptureStopParameters') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def stop_packet_capture( + self, resource_group_name, virtual_network_gateway_name, sas_url=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Stops packet capture on virtual network gateway in the specified + resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param sas_url: SAS url for packet capture on virtual network gateway. + :type sas_url: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns str or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[str] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[str]] + :raises: + :class:`ErrorException` + """ + raw_result = self._stop_packet_capture_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + sas_url=sas_url, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('str', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + stop_packet_capture.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/stopPacketCapture'} + + + def _get_vpnclient_connection_health_initial( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.get_vpnclient_connection_health.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkGatewayName': self._serialize.url("virtual_network_gateway_name", virtual_network_gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnClientConnectionHealthDetailListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def get_vpnclient_connection_health( + self, resource_group_name, virtual_network_gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Get VPN client connection health detail per P2S client connection of + the virtual network gateway in the specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_gateway_name: The name of the virtual network + gateway. + :type virtual_network_gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VpnClientConnectionHealthDetailListResult or + ClientRawResponse if + raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VpnClientConnectionHealthDetailListResult] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VpnClientConnectionHealthDetailListResult]] + :raises: :class:`CloudError` + """ + raw_result = self._get_vpnclient_connection_health_initial( + resource_group_name=resource_group_name, + virtual_network_gateway_name=virtual_network_gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnClientConnectionHealthDetailListResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + get_vpnclient_connection_health.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getVpnClientConnectionHealth'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_network_peerings_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_network_peerings_operations.py new file mode 100644 index 000000000000..58bee572687c --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_network_peerings_operations.py @@ -0,0 +1,371 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualNetworkPeeringsOperations(object): + """VirtualNetworkPeeringsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, virtual_network_name, virtual_network_peering_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'virtualNetworkPeeringName': self._serialize.url("virtual_network_peering_name", virtual_network_peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_network_name, virtual_network_peering_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified virtual network peering. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param virtual_network_peering_name: The name of the virtual network + peering. + :type virtual_network_peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + virtual_network_peering_name=virtual_network_peering_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings/{virtualNetworkPeeringName}'} + + def get( + self, resource_group_name, virtual_network_name, virtual_network_peering_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified virtual network peering. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param virtual_network_peering_name: The name of the virtual network + peering. + :type virtual_network_peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualNetworkPeering or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkPeering + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'virtualNetworkPeeringName': self._serialize.url("virtual_network_peering_name", virtual_network_peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings/{virtualNetworkPeeringName}'} + + + def _create_or_update_initial( + self, resource_group_name, virtual_network_name, virtual_network_peering_name, virtual_network_peering_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'virtualNetworkPeeringName': self._serialize.url("virtual_network_peering_name", virtual_network_peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(virtual_network_peering_parameters, 'VirtualNetworkPeering') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkPeering', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualNetworkPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_network_name, virtual_network_peering_name, virtual_network_peering_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a peering in the specified virtual network. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param virtual_network_peering_name: The name of the peering. + :type virtual_network_peering_name: str + :param virtual_network_peering_parameters: Parameters supplied to the + create or update virtual network peering operation. + :type virtual_network_peering_parameters: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkPeering + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetworkPeering + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkPeering] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkPeering]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + virtual_network_peering_name=virtual_network_peering_name, + virtual_network_peering_parameters=virtual_network_peering_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings/{virtualNetworkPeeringName}'} + + def list( + self, resource_group_name, virtual_network_name, custom_headers=None, raw=False, **operation_config): + """Gets all virtual network peerings in a virtual network. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetworkPeering + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkPeeringPaged[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkPeering] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VirtualNetworkPeeringPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/virtualNetworkPeerings'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_network_taps_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_network_taps_operations.py new file mode 100644 index 000000000000..651171ae2df1 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_network_taps_operations.py @@ -0,0 +1,490 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualNetworkTapsOperations(object): + """VirtualNetworkTapsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, tap_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'tapName': self._serialize.url("tap_name", tap_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, tap_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified virtual network tap. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param tap_name: The name of the virtual network tap. + :type tap_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + tap_name=tap_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps/{tapName}'} + + def get( + self, resource_group_name, tap_name, custom_headers=None, raw=False, **operation_config): + """Gets information about the specified virtual network tap. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param tap_name: The name of virtual network tap. + :type tap_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualNetworkTap or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkTap or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'tapName': self._serialize.url("tap_name", tap_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkTap', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps/{tapName}'} + + + def _create_or_update_initial( + self, resource_group_name, tap_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'tapName': self._serialize.url("tap_name", tap_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualNetworkTap') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkTap', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualNetworkTap', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, tap_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a Virtual Network Tap. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param tap_name: The name of the virtual network tap. + :type tap_name: str + :param parameters: Parameters supplied to the create or update virtual + network tap operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkTap + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetworkTap or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkTap] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkTap]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + tap_name=tap_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetworkTap', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps/{tapName}'} + + def update_tags( + self, resource_group_name, tap_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates an VirtualNetworkTap tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param tap_name: The name of the tap. + :type tap_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualNetworkTap or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkTap or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + tap_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'tapName': self._serialize.url("tap_name", tap_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(tap_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetworkTap', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps/{tapName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the VirtualNetworkTaps in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetworkTap + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkTapPaged[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkTap] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VirtualNetworkTapPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworkTaps'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all the VirtualNetworkTaps in a subscription. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetworkTap + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkTapPaged[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkTap] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VirtualNetworkTapPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkTaps'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_networks_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_networks_operations.py new file mode 100644 index 000000000000..8b1afc03df2d --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_networks_operations.py @@ -0,0 +1,631 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualNetworksOperations(object): + """VirtualNetworksOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, virtual_network_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_network_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified virtual network. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}'} + + def get( + self, resource_group_name, virtual_network_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified virtual network by resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualNetwork or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VirtualNetwork or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetwork', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}'} + + + def _create_or_update_initial( + self, resource_group_name, virtual_network_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualNetwork') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetwork', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualNetwork', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_network_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates a virtual network in the specified resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param parameters: Parameters supplied to the create or update virtual + network operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetwork + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualNetwork or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VirtualNetwork] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VirtualNetwork]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_network_name=virtual_network_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualNetwork', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}'} + + def update_tags( + self, resource_group_name, virtual_network_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates a virtual network tags. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualNetwork or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VirtualNetwork or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VirtualNetwork', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all virtual networks in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetwork + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkPaged[~azure.mgmt.network.v2019_09_01.models.VirtualNetwork] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VirtualNetworkPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualNetworks'} + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Gets all virtual networks in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetwork + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkPaged[~azure.mgmt.network.v2019_09_01.models.VirtualNetwork] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VirtualNetworkPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks'} + + def check_ip_address_availability( + self, resource_group_name, virtual_network_name, ip_address, custom_headers=None, raw=False, **operation_config): + """Checks whether a private IP address is available for use. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param ip_address: The private IP address to be verified. + :type ip_address: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: IPAddressAvailabilityResult or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.IPAddressAvailabilityResult or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.check_ip_address_availability.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['ipAddress'] = self._serialize.query("ip_address", ip_address, 'str') + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('IPAddressAvailabilityResult', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + check_ip_address_availability.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/CheckIPAddressAvailability'} + + def list_usage( + self, resource_group_name, virtual_network_name, custom_headers=None, raw=False, **operation_config): + """Lists usage stats. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_network_name: The name of the virtual network. + :type virtual_network_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualNetworkUsage + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VirtualNetworkUsagePaged[~azure.mgmt.network.v2019_09_01.models.VirtualNetworkUsage] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_usage.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualNetworkName': self._serialize.url("virtual_network_name", virtual_network_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VirtualNetworkUsagePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_usage.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/usages'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_router_peerings_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_router_peerings_operations.py new file mode 100644 index 000000000000..1baf668c63e7 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_router_peerings_operations.py @@ -0,0 +1,364 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualRouterPeeringsOperations(object): + """VirtualRouterPeeringsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, virtual_router_name, peering_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualRouterName': self._serialize.url("virtual_router_name", virtual_router_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_router_name, peering_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified peering from a Virtual Router. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_router_name: The name of the Virtual Router. + :type virtual_router_name: str + :param peering_name: The name of the peering. + :type peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_router_name=virtual_router_name, + peering_name=peering_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}/peerings/{peeringName}'} + + def get( + self, resource_group_name, virtual_router_name, peering_name, custom_headers=None, raw=False, **operation_config): + """Gets the specified Virtual Router Peering. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_router_name: The name of the Virtual Router. + :type virtual_router_name: str + :param peering_name: The name of the Virtual Router Peering. + :type peering_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualRouterPeering or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VirtualRouterPeering or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualRouterName': self._serialize.url("virtual_router_name", virtual_router_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VirtualRouterPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}/peerings/{peeringName}'} + + + def _create_or_update_initial( + self, resource_group_name, virtual_router_name, peering_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualRouterName': self._serialize.url("virtual_router_name", virtual_router_name, 'str'), + 'peeringName': self._serialize.url("peering_name", peering_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualRouterPeering') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualRouterPeering', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualRouterPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_router_name, peering_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates the specified Virtual Router Peering. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_router_name: The name of the Virtual Router. + :type virtual_router_name: str + :param peering_name: The name of the Virtual Router Peering. + :type peering_name: str + :param parameters: Parameters supplied to the create or update Virtual + Router Peering operation. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.VirtualRouterPeering + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualRouterPeering or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VirtualRouterPeering] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VirtualRouterPeering]] + :raises: + :class:`ErrorException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_router_name=virtual_router_name, + peering_name=peering_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualRouterPeering', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}/peerings/{peeringName}'} + + def list( + self, resource_group_name, virtual_router_name, custom_headers=None, raw=False, **operation_config): + """Lists all Virtual Router Peerings in a Virtual Router resource. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_router_name: The name of the Virtual Router. + :type virtual_router_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualRouterPeering + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VirtualRouterPeeringPaged[~azure.mgmt.network.v2019_09_01.models.VirtualRouterPeering] + :raises: + :class:`ErrorException` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualRouterName': self._serialize.url("virtual_router_name", virtual_router_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VirtualRouterPeeringPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}/peerings'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_routers_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_routers_operations.py new file mode 100644 index 000000000000..764db46e48cf --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_routers_operations.py @@ -0,0 +1,418 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualRoutersOperations(object): + """VirtualRoutersOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _delete_initial( + self, resource_group_name, virtual_router_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualRouterName': self._serialize.url("virtual_router_name", virtual_router_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + raise models.ErrorException(self._deserialize, response) + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_router_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes the specified Virtual Router. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_router_name: The name of the Virtual Router. + :type virtual_router_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: + :class:`ErrorException` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_router_name=virtual_router_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}'} + + def get( + self, resource_group_name, virtual_router_name, expand=None, custom_headers=None, raw=False, **operation_config): + """Gets the specified Virtual Router. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_router_name: The name of the Virtual Router. + :type virtual_router_name: str + :param expand: Expands referenced resources. + :type expand: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualRouter or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VirtualRouter or + ~msrest.pipeline.ClientRawResponse + :raises: + :class:`ErrorException` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualRouterName': self._serialize.url("virtual_router_name", virtual_router_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + if expand is not None: + query_parameters['$expand'] = self._serialize.query("expand", expand, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VirtualRouter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}'} + + + def _create_or_update_initial( + self, resource_group_name, virtual_router_name, parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualRouterName': self._serialize.url("virtual_router_name", virtual_router_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'VirtualRouter') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + raise models.ErrorException(self._deserialize, response) + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualRouter', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualRouter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_router_name, parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates or updates the specified Virtual Router. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param virtual_router_name: The name of the Virtual Router. + :type virtual_router_name: str + :param parameters: Parameters supplied to the create or update Virtual + Router. + :type parameters: ~azure.mgmt.network.v2019_09_01.models.VirtualRouter + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualRouter or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VirtualRouter] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VirtualRouter]] + :raises: + :class:`ErrorException` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_router_name=virtual_router_name, + parameters=parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualRouter', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters/{virtualRouterName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all Virtual Routers in a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualRouter + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VirtualRouterPaged[~azure.mgmt.network.v2019_09_01.models.VirtualRouter] + :raises: + :class:`ErrorException` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VirtualRouterPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualRouters'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the Virtual Routers in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualRouter + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VirtualRouterPaged[~azure.mgmt.network.v2019_09_01.models.VirtualRouter] + :raises: + :class:`ErrorException` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + raise models.ErrorException(self._deserialize, response) + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VirtualRouterPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualRouters'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_wans_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_wans_operations.py new file mode 100644 index 000000000000..c853235b77d3 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_virtual_wans_operations.py @@ -0,0 +1,492 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VirtualWansOperations(object): + """VirtualWansOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def get( + self, resource_group_name, virtual_wan_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a VirtualWAN. + + :param resource_group_name: The resource group name of the VirtualWan. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWAN being retrieved. + :type virtual_wan_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualWAN or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VirtualWAN or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'VirtualWANName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VirtualWAN', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{VirtualWANName}'} + + + def _create_or_update_initial( + self, resource_group_name, virtual_wan_name, wan_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'VirtualWANName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(wan_parameters, 'VirtualWAN') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VirtualWAN', response) + if response.status_code == 201: + deserialized = self._deserialize('VirtualWAN', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, virtual_wan_name, wan_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a VirtualWAN resource if it doesn't exist else updates the + existing VirtualWAN. + + :param resource_group_name: The resource group name of the VirtualWan. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWAN being created or + updated. + :type virtual_wan_name: str + :param wan_parameters: Parameters supplied to create or update + VirtualWAN. + :type wan_parameters: + ~azure.mgmt.network.v2019_09_01.models.VirtualWAN + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VirtualWAN or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VirtualWAN] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VirtualWAN]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + virtual_wan_name=virtual_wan_name, + wan_parameters=wan_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VirtualWAN', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{VirtualWANName}'} + + def update_tags( + self, resource_group_name, virtual_wan_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates a VirtualWAN tags. + + :param resource_group_name: The resource group name of the VirtualWan. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWAN being updated. + :type virtual_wan_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VirtualWAN or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VirtualWAN or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + wan_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'VirtualWANName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(wan_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VirtualWAN', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{VirtualWANName}'} + + + def _delete_initial( + self, resource_group_name, virtual_wan_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'VirtualWANName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, virtual_wan_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a VirtualWAN. + + :param resource_group_name: The resource group name of the VirtualWan. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWAN being deleted. + :type virtual_wan_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + virtual_wan_name=virtual_wan_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{VirtualWANName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all the VirtualWANs in a resource group. + + :param resource_group_name: The resource group name of the VirtualWan. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualWAN + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VirtualWANPaged[~azure.mgmt.network.v2019_09_01.models.VirtualWAN] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VirtualWANPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all the VirtualWANs in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VirtualWAN + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VirtualWANPaged[~azure.mgmt.network.v2019_09_01.models.VirtualWAN] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VirtualWANPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/virtualWans'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_connections_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_connections_operations.py new file mode 100644 index 000000000000..f7e2fae4912d --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_connections_operations.py @@ -0,0 +1,370 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VpnConnectionsOperations(object): + """VpnConnectionsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def get( + self, resource_group_name, gateway_name, connection_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a vpn connection. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param connection_name: The name of the vpn connection. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VpnConnection or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VpnConnection or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VpnConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}'} + + + def _create_or_update_initial( + self, resource_group_name, gateway_name, connection_name, vpn_connection_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpn_connection_parameters, 'VpnConnection') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnConnection', response) + if response.status_code == 201: + deserialized = self._deserialize('VpnConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, gateway_name, connection_name, vpn_connection_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a vpn connection to a scalable vpn gateway if it doesn't exist + else updates the existing connection. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param connection_name: The name of the connection. + :type connection_name: str + :param vpn_connection_parameters: Parameters supplied to create or + Update a VPN Connection. + :type vpn_connection_parameters: + ~azure.mgmt.network.v2019_09_01.models.VpnConnection + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VpnConnection or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VpnConnection] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VpnConnection]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + connection_name=connection_name, + vpn_connection_parameters=vpn_connection_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}'} + + + def _delete_initial( + self, resource_group_name, gateway_name, connection_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, gateway_name, connection_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a vpn connection. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param connection_name: The name of the connection. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + connection_name=connection_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}'} + + def list_by_vpn_gateway( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, **operation_config): + """Retrieves all vpn connections for a particular virtual wan vpn gateway. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VpnConnection + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VpnConnectionPaged[~azure.mgmt.network.v2019_09_01.models.VpnConnection] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_vpn_gateway.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VpnConnectionPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_vpn_gateway.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_gateways_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_gateways_operations.py new file mode 100644 index 000000000000..fc74f62140e2 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_gateways_operations.py @@ -0,0 +1,584 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VpnGatewaysOperations(object): + """VpnGatewaysOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def get( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a virtual wan vpn gateway. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VpnGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VpnGateway or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}'} + + + def _create_or_update_initial( + self, resource_group_name, gateway_name, vpn_gateway_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpn_gateway_parameters, 'VpnGateway') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnGateway', response) + if response.status_code == 201: + deserialized = self._deserialize('VpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, gateway_name, vpn_gateway_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a virtual wan vpn gateway if it doesn't exist else updates the + existing gateway. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param vpn_gateway_parameters: Parameters supplied to create or Update + a virtual wan vpn gateway. + :type vpn_gateway_parameters: + ~azure.mgmt.network.v2019_09_01.models.VpnGateway + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VpnGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VpnGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VpnGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + vpn_gateway_parameters=vpn_gateway_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}'} + + def update_tags( + self, resource_group_name, gateway_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates virtual wan vpn gateway tags. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VpnGateway or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VpnGateway or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + vpn_gateway_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpn_gateway_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}'} + + + def _delete_initial( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a virtual wan vpn gateway. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}'} + + + def _reset_initial( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.reset.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def reset( + self, resource_group_name, gateway_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Resets the primary of the vpn gateway in the specified resource group. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VpnGateway or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VpnGateway] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VpnGateway]] + :raises: :class:`CloudError` + """ + raw_result = self._reset_initial( + resource_group_name=resource_group_name, + gateway_name=gateway_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnGateway', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + reset.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/reset'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all the VpnGateways in a resource group. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VpnGateway + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VpnGatewayPaged[~azure.mgmt.network.v2019_09_01.models.VpnGateway] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VpnGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all the VpnGateways in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VpnGateway + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VpnGatewayPaged[~azure.mgmt.network.v2019_09_01.models.VpnGateway] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VpnGatewayPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnGateways'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_link_connections_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_link_connections_operations.py new file mode 100644 index 000000000000..9da6238a80a5 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_link_connections_operations.py @@ -0,0 +1,116 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class VpnLinkConnectionsOperations(object): + """VpnLinkConnectionsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list_by_vpn_connection( + self, resource_group_name, gateway_name, connection_name, custom_headers=None, raw=False, **operation_config): + """Retrieves all vpn site link connections for a particular virtual wan + vpn gateway vpn connection. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param connection_name: The name of the vpn connection. + :type connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VpnSiteLinkConnection + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VpnSiteLinkConnectionPaged[~azure.mgmt.network.v2019_09_01.models.VpnSiteLinkConnection] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_vpn_connection.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VpnSiteLinkConnectionPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_vpn_connection.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}/vpnLinkConnections'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_server_configurations_associated_with_virtual_wan_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_server_configurations_associated_with_virtual_wan_operations.py new file mode 100644 index 000000000000..ecae741ff24e --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_server_configurations_associated_with_virtual_wan_operations.py @@ -0,0 +1,138 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VpnServerConfigurationsAssociatedWithVirtualWanOperations(object): + """VpnServerConfigurationsAssociatedWithVirtualWanOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _list_initial( + self, resource_group_name, virtual_wan_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualWANName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnServerConfigurationsResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def list( + self, resource_group_name, virtual_wan_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Gives the list of VpnServerConfigurations associated with Virtual Wan + in a resource group. + + :param resource_group_name: The resource group name. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWAN whose associated + VpnServerConfigurations is needed. + :type virtual_wan_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns + VpnServerConfigurationsResponse or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VpnServerConfigurationsResponse] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VpnServerConfigurationsResponse]] + :raises: :class:`CloudError` + """ + raw_result = self._list_initial( + resource_group_name=resource_group_name, + virtual_wan_name=virtual_wan_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnServerConfigurationsResponse', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/vpnServerConfigurations'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_server_configurations_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_server_configurations_operations.py new file mode 100644 index 000000000000..192638f13fbb --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_server_configurations_operations.py @@ -0,0 +1,500 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VpnServerConfigurationsOperations(object): + """VpnServerConfigurationsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def get( + self, resource_group_name, vpn_server_configuration_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a VpnServerConfiguration. + + :param resource_group_name: The resource group name of the + VpnServerConfiguration. + :type resource_group_name: str + :param vpn_server_configuration_name: The name of the + VpnServerConfiguration being retrieved. + :type vpn_server_configuration_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VpnServerConfiguration or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VpnServerConfiguration + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vpnServerConfigurationName': self._serialize.url("vpn_server_configuration_name", vpn_server_configuration_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VpnServerConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations/{vpnServerConfigurationName}'} + + + def _create_or_update_initial( + self, resource_group_name, vpn_server_configuration_name, vpn_server_configuration_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vpnServerConfigurationName': self._serialize.url("vpn_server_configuration_name", vpn_server_configuration_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpn_server_configuration_parameters, 'VpnServerConfiguration') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnServerConfiguration', response) + if response.status_code == 201: + deserialized = self._deserialize('VpnServerConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, vpn_server_configuration_name, vpn_server_configuration_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a VpnServerConfiguration resource if it doesn't exist else + updates the existing VpnServerConfiguration. + + :param resource_group_name: The resource group name of the + VpnServerConfiguration. + :type resource_group_name: str + :param vpn_server_configuration_name: The name of the + VpnServerConfiguration being created or updated. + :type vpn_server_configuration_name: str + :param vpn_server_configuration_parameters: Parameters supplied to + create or update VpnServerConfiguration. + :type vpn_server_configuration_parameters: + ~azure.mgmt.network.v2019_09_01.models.VpnServerConfiguration + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VpnServerConfiguration + or ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VpnServerConfiguration] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VpnServerConfiguration]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + vpn_server_configuration_name=vpn_server_configuration_name, + vpn_server_configuration_parameters=vpn_server_configuration_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnServerConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations/{vpnServerConfigurationName}'} + + def update_tags( + self, resource_group_name, vpn_server_configuration_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates VpnServerConfiguration tags. + + :param resource_group_name: The resource group name of the + VpnServerConfiguration. + :type resource_group_name: str + :param vpn_server_configuration_name: The name of the + VpnServerConfiguration being updated. + :type vpn_server_configuration_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VpnServerConfiguration or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VpnServerConfiguration + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + vpn_server_configuration_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vpnServerConfigurationName': self._serialize.url("vpn_server_configuration_name", vpn_server_configuration_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpn_server_configuration_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VpnServerConfiguration', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations/{vpnServerConfigurationName}'} + + + def _delete_initial( + self, resource_group_name, vpn_server_configuration_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vpnServerConfigurationName': self._serialize.url("vpn_server_configuration_name", vpn_server_configuration_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, vpn_server_configuration_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a VpnServerConfiguration. + + :param resource_group_name: The resource group name of the + VpnServerConfiguration. + :type resource_group_name: str + :param vpn_server_configuration_name: The name of the + VpnServerConfiguration being deleted. + :type vpn_server_configuration_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + vpn_server_configuration_name=vpn_server_configuration_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations/{vpnServerConfigurationName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all the vpnServerConfigurations in a resource group. + + :param resource_group_name: The resource group name of the + VpnServerConfiguration. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VpnServerConfiguration + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VpnServerConfigurationPaged[~azure.mgmt.network.v2019_09_01.models.VpnServerConfiguration] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VpnServerConfigurationPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all the VpnServerConfigurations in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VpnServerConfiguration + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VpnServerConfigurationPaged[~azure.mgmt.network.v2019_09_01.models.VpnServerConfiguration] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VpnServerConfigurationPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnServerConfigurations'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_site_link_connections_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_site_link_connections_operations.py new file mode 100644 index 000000000000..b7ddb72cfc7c --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_site_link_connections_operations.py @@ -0,0 +1,107 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class VpnSiteLinkConnectionsOperations(object): + """VpnSiteLinkConnectionsOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def get( + self, resource_group_name, gateway_name, connection_name, link_connection_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a vpn site link connection. + + :param resource_group_name: The resource group name of the VpnGateway. + :type resource_group_name: str + :param gateway_name: The name of the gateway. + :type gateway_name: str + :param connection_name: The name of the vpn connection. + :type connection_name: str + :param link_connection_name: The name of the vpn connection. + :type link_connection_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VpnSiteLinkConnection or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VpnSiteLinkConnection + or ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'gatewayName': self._serialize.url("gateway_name", gateway_name, 'str'), + 'connectionName': self._serialize.url("connection_name", connection_name, 'str'), + 'linkConnectionName': self._serialize.url("link_connection_name", link_connection_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VpnSiteLinkConnection', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnGateways/{gatewayName}/vpnConnections/{connectionName}/vpnLinkConnections/{linkConnectionName}'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_site_links_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_site_links_operations.py new file mode 100644 index 000000000000..6b122d627fc0 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_site_links_operations.py @@ -0,0 +1,177 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError + +from .. import models + + +class VpnSiteLinksOperations(object): + """VpnSiteLinksOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def get( + self, resource_group_name, vpn_site_name, vpn_site_link_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a VPN site link. + + :param resource_group_name: The resource group name of the VpnSite. + :type resource_group_name: str + :param vpn_site_name: The name of the VpnSite. + :type vpn_site_name: str + :param vpn_site_link_name: The name of the VpnSiteLink being + retrieved. + :type vpn_site_link_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VpnSiteLink or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VpnSiteLink or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vpnSiteName': self._serialize.url("vpn_site_name", vpn_site_name, 'str'), + 'vpnSiteLinkName': self._serialize.url("vpn_site_link_name", vpn_site_link_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VpnSiteLink', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}/vpnSiteLinks/{vpnSiteLinkName}'} + + def list_by_vpn_site( + self, resource_group_name, vpn_site_name, custom_headers=None, raw=False, **operation_config): + """Lists all the vpnSiteLinks in a resource group for a vpn site. + + :param resource_group_name: The resource group name of the VpnSite. + :type resource_group_name: str + :param vpn_site_name: The name of the VpnSite. + :type vpn_site_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VpnSiteLink + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VpnSiteLinkPaged[~azure.mgmt.network.v2019_09_01.models.VpnSiteLink] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_vpn_site.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vpnSiteName': self._serialize.url("vpn_site_name", vpn_site_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VpnSiteLinkPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_vpn_site.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}/vpnSiteLinks'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_sites_configuration_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_sites_configuration_operations.py new file mode 100644 index 000000000000..2e60281ecb76 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_sites_configuration_operations.py @@ -0,0 +1,137 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VpnSitesConfigurationOperations(object): + """VpnSitesConfigurationOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + + def _download_initial( + self, resource_group_name, virtual_wan_name, output_blob_sas_url, vpn_sites=None, custom_headers=None, raw=False, **operation_config): + request = models.GetVpnSitesConfigurationRequest(vpn_sites=vpn_sites, output_blob_sas_url=output_blob_sas_url) + + # Construct URL + url = self.download.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'virtualWANName': self._serialize.url("virtual_wan_name", virtual_wan_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(request, 'GetVpnSitesConfigurationRequest') + + # Construct and send request + request = self._client.post(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def download( + self, resource_group_name, virtual_wan_name, output_blob_sas_url, vpn_sites=None, custom_headers=None, raw=False, polling=True, **operation_config): + """Gives the sas-url to download the configurations for vpn-sites in a + resource group. + + :param resource_group_name: The resource group name. + :type resource_group_name: str + :param virtual_wan_name: The name of the VirtualWAN for which + configuration of all vpn-sites is needed. + :type virtual_wan_name: str + :param output_blob_sas_url: The sas-url to download the configurations + for vpn-sites. + :type output_blob_sas_url: str + :param vpn_sites: List of resource-ids of the vpn-sites for which + config is to be downloaded. + :type vpn_sites: list[str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._download_initial( + resource_group_name=resource_group_name, + virtual_wan_name=virtual_wan_name, + output_blob_sas_url=output_blob_sas_url, + vpn_sites=vpn_sites, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, lro_options={'final-state-via': 'location'}, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + download.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualWans/{virtualWANName}/vpnConfiguration'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_sites_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_sites_operations.py new file mode 100644 index 000000000000..b03ae12fffd1 --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_vpn_sites_operations.py @@ -0,0 +1,492 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class VpnSitesOperations(object): + """VpnSitesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def get( + self, resource_group_name, vpn_site_name, custom_headers=None, raw=False, **operation_config): + """Retrieves the details of a VPN site. + + :param resource_group_name: The resource group name of the VpnSite. + :type resource_group_name: str + :param vpn_site_name: The name of the VpnSite being retrieved. + :type vpn_site_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VpnSite or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VpnSite or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vpnSiteName': self._serialize.url("vpn_site_name", vpn_site_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VpnSite', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}'} + + + def _create_or_update_initial( + self, resource_group_name, vpn_site_name, vpn_site_parameters, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vpnSiteName': self._serialize.url("vpn_site_name", vpn_site_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpn_site_parameters, 'VpnSite') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + + if response.status_code == 200: + deserialized = self._deserialize('VpnSite', response) + if response.status_code == 201: + deserialized = self._deserialize('VpnSite', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + def create_or_update( + self, resource_group_name, vpn_site_name, vpn_site_parameters, custom_headers=None, raw=False, polling=True, **operation_config): + """Creates a VpnSite resource if it doesn't exist else updates the + existing VpnSite. + + :param resource_group_name: The resource group name of the VpnSite. + :type resource_group_name: str + :param vpn_site_name: The name of the VpnSite being created or + updated. + :type vpn_site_name: str + :param vpn_site_parameters: Parameters supplied to create or update + VpnSite. + :type vpn_site_parameters: + ~azure.mgmt.network.v2019_09_01.models.VpnSite + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns VpnSite or + ClientRawResponse if raw==True + :rtype: + ~msrestazure.azure_operation.AzureOperationPoller[~azure.mgmt.network.v2019_09_01.models.VpnSite] + or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[~azure.mgmt.network.v2019_09_01.models.VpnSite]] + :raises: :class:`CloudError` + """ + raw_result = self._create_or_update_initial( + resource_group_name=resource_group_name, + vpn_site_name=vpn_site_name, + vpn_site_parameters=vpn_site_parameters, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + deserialized = self._deserialize('VpnSite', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}'} + + def update_tags( + self, resource_group_name, vpn_site_name, tags=None, custom_headers=None, raw=False, **operation_config): + """Updates VpnSite tags. + + :param resource_group_name: The resource group name of the VpnSite. + :type resource_group_name: str + :param vpn_site_name: The name of the VpnSite being updated. + :type vpn_site_name: str + :param tags: Resource tags. + :type tags: dict[str, str] + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: VpnSite or ClientRawResponse if raw=true + :rtype: ~azure.mgmt.network.v2019_09_01.models.VpnSite or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + vpn_site_parameters = models.TagsObject(tags=tags) + + # Construct URL + url = self.update_tags.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vpnSiteName': self._serialize.url("vpn_site_name", vpn_site_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(vpn_site_parameters, 'TagsObject') + + # Construct and send request + request = self._client.patch(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('VpnSite', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + update_tags.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}'} + + + def _delete_initial( + self, resource_group_name, vpn_site_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'vpnSiteName': self._serialize.url("vpn_site_name", vpn_site_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, vpn_site_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes a VpnSite. + + :param resource_group_name: The resource group name of the VpnSite. + :type resource_group_name: str + :param vpn_site_name: The name of the VpnSite being deleted. + :type vpn_site_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + vpn_site_name=vpn_site_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites/{vpnSiteName}'} + + def list_by_resource_group( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all the vpnSites in a resource group. + + :param resource_group_name: The resource group name of the VpnSite. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VpnSite + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VpnSitePaged[~azure.mgmt.network.v2019_09_01.models.VpnSite] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_by_resource_group.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str'), + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VpnSitePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_by_resource_group.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnSites'} + + def list( + self, custom_headers=None, raw=False, **operation_config): + """Lists all the VpnSites in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of VpnSite + :rtype: + ~azure.mgmt.network.v2019_09_01.models.VpnSitePaged[~azure.mgmt.network.v2019_09_01.models.VpnSite] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.VpnSitePaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/vpnSites'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_web_application_firewall_policies_operations.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_web_application_firewall_policies_operations.py new file mode 100644 index 000000000000..4a448030043b --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/operations/_web_application_firewall_policies_operations.py @@ -0,0 +1,390 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +import uuid +from msrest.pipeline import ClientRawResponse +from msrestazure.azure_exceptions import CloudError +from msrest.polling import LROPoller, NoPolling +from msrestazure.polling.arm_polling import ARMPolling + +from .. import models + + +class WebApplicationFirewallPoliciesOperations(object): + """WebApplicationFirewallPoliciesOperations operations. + + You should not instantiate directly this class, but create a Client instance that will create it for you and attach it as attribute. + + :param client: Client for service requests. + :param config: Configuration of service client. + :param serializer: An object model serializer. + :param deserializer: An object model deserializer. + :ivar api_version: Client API version. Constant value: "2019-09-01". + """ + + models = models + + def __init__(self, client, config, serializer, deserializer): + + self._client = client + self._serialize = serializer + self._deserialize = deserializer + self.api_version = "2019-09-01" + + self.config = config + + def list( + self, resource_group_name, custom_headers=None, raw=False, **operation_config): + """Lists all of the protection policies within a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of WebApplicationFirewallPolicy + :rtype: + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallPolicyPaged[~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallPolicy] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.WebApplicationFirewallPolicyPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies'} + + def list_all( + self, custom_headers=None, raw=False, **operation_config): + """Gets all the WAF policies in a subscription. + + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: An iterator like instance of WebApplicationFirewallPolicy + :rtype: + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallPolicyPaged[~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallPolicy] + :raises: :class:`CloudError` + """ + def prepare_request(next_link=None): + if not next_link: + # Construct URL + url = self.list_all.metadata['url'] + path_format_arguments = { + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + else: + url = next_link + query_parameters = {} + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + return request + + def internal_paging(next_link=None): + request = prepare_request(next_link) + + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + return response + + # Deserialize response + header_dict = None + if raw: + header_dict = {} + deserialized = models.WebApplicationFirewallPolicyPaged(internal_paging, self._deserialize.dependencies, header_dict) + + return deserialized + list_all.metadata = {'url': '/subscriptions/{subscriptionId}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies'} + + def get( + self, resource_group_name, policy_name, custom_headers=None, raw=False, **operation_config): + """Retrieve protection policy with specified name within a resource group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param policy_name: The name of the policy. + :type policy_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: WebApplicationFirewallPolicy or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.get.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'policyName': self._serialize.url("policy_name", policy_name, 'str', max_length=128), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.get(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('WebApplicationFirewallPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + get.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/{policyName}'} + + def create_or_update( + self, resource_group_name, policy_name, parameters, custom_headers=None, raw=False, **operation_config): + """Creates or update policy with specified rule set name within a resource + group. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param policy_name: The name of the policy. + :type policy_name: str + :param parameters: Policy to be created. + :type parameters: + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallPolicy + :param dict custom_headers: headers that will be added to the request + :param bool raw: returns the direct response alongside the + deserialized response + :param operation_config: :ref:`Operation configuration + overrides`. + :return: WebApplicationFirewallPolicy or ClientRawResponse if raw=true + :rtype: + ~azure.mgmt.network.v2019_09_01.models.WebApplicationFirewallPolicy or + ~msrest.pipeline.ClientRawResponse + :raises: :class:`CloudError` + """ + # Construct URL + url = self.create_or_update.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'policyName': self._serialize.url("policy_name", policy_name, 'str', max_length=128), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + header_parameters['Accept'] = 'application/json' + header_parameters['Content-Type'] = 'application/json; charset=utf-8' + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct body + body_content = self._serialize.body(parameters, 'WebApplicationFirewallPolicy') + + # Construct and send request + request = self._client.put(url, query_parameters, header_parameters, body_content) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 201]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + deserialized = None + if response.status_code == 200: + deserialized = self._deserialize('WebApplicationFirewallPolicy', response) + if response.status_code == 201: + deserialized = self._deserialize('WebApplicationFirewallPolicy', response) + + if raw: + client_raw_response = ClientRawResponse(deserialized, response) + return client_raw_response + + return deserialized + create_or_update.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/{policyName}'} + + + def _delete_initial( + self, resource_group_name, policy_name, custom_headers=None, raw=False, **operation_config): + # Construct URL + url = self.delete.metadata['url'] + path_format_arguments = { + 'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str'), + 'policyName': self._serialize.url("policy_name", policy_name, 'str', max_length=128), + 'subscriptionId': self._serialize.url("self.config.subscription_id", self.config.subscription_id, 'str') + } + url = self._client.format_url(url, **path_format_arguments) + + # Construct parameters + query_parameters = {} + query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') + + # Construct headers + header_parameters = {} + if self.config.generate_client_request_id: + header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) + if custom_headers: + header_parameters.update(custom_headers) + if self.config.accept_language is not None: + header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') + + # Construct and send request + request = self._client.delete(url, query_parameters, header_parameters) + response = self._client.send(request, stream=False, **operation_config) + + if response.status_code not in [200, 202, 204]: + exp = CloudError(response) + exp.request_id = response.headers.get('x-ms-request-id') + raise exp + + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + def delete( + self, resource_group_name, policy_name, custom_headers=None, raw=False, polling=True, **operation_config): + """Deletes Policy. + + :param resource_group_name: The name of the resource group. + :type resource_group_name: str + :param policy_name: The name of the policy. + :type policy_name: str + :param dict custom_headers: headers that will be added to the request + :param bool raw: The poller return type is ClientRawResponse, the + direct response alongside the deserialized response + :param polling: True for ARMPolling, False for no polling, or a + polling object for personal polling strategy + :return: An instance of LROPoller that returns None or + ClientRawResponse if raw==True + :rtype: ~msrestazure.azure_operation.AzureOperationPoller[None] or + ~msrestazure.azure_operation.AzureOperationPoller[~msrest.pipeline.ClientRawResponse[None]] + :raises: :class:`CloudError` + """ + raw_result = self._delete_initial( + resource_group_name=resource_group_name, + policy_name=policy_name, + custom_headers=custom_headers, + raw=True, + **operation_config + ) + + def get_long_running_output(response): + if raw: + client_raw_response = ClientRawResponse(None, response) + return client_raw_response + + lro_delay = operation_config.get( + 'long_running_operation_timeout', + self.config.long_running_operation_timeout) + if polling is True: polling_method = ARMPolling(lro_delay, **operation_config) + elif polling is False: polling_method = NoPolling() + else: polling_method = polling + return LROPoller(self._client, raw_result, get_long_running_output, polling_method) + delete.metadata = {'url': '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/{policyName}'} diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/version.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/version.py new file mode 100644 index 000000000000..53a203f32aaf --- /dev/null +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/v2019_09_01/version.py @@ -0,0 +1,13 @@ +# coding=utf-8 +# -------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# +# Code generated by Microsoft (R) AutoRest Code Generator. +# Changes may cause incorrect behavior and will be lost if the code is +# regenerated. +# -------------------------------------------------------------------------- + +VERSION = "" + diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_dns_availability.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_dns_availability.yaml index 14576364957d..d3f0c7c22b7d 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_dns_availability.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_dns_availability.yaml @@ -10,11 +10,11 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/CheckDnsNameAvailability?domainNameLabel=pydomain&api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/CheckDnsNameAvailability?domainNameLabel=pydomain&api-version=2019-09-01 response: body: string: "{\r\n \"available\": true\r\n}" @@ -26,7 +26,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:01:44 GMT + - Tue, 22 Oct 2019 06:06:52 GMT expires: - '-1' pragma: @@ -43,7 +43,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - f2604384-2bb3-44b2-a936-372a15a7213b + - 7cc14713-370d-4581-9733-5b5bf3c26618 status: code: 200 message: OK diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_express_route_service_providers.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_express_route_service_providers.yaml index d417728e82f3..1e67b4becef5 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_express_route_service_providers.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_express_route_service_providers.yaml @@ -10,11 +10,11 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/expressRouteServiceProviders?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/expressRouteServiceProviders?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"ARM Test Provider\"\ @@ -590,7 +590,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:01:52 GMT + - Tue, 22 Oct 2019 06:06:56 GMT expires: - '-1' pragma: @@ -607,7 +607,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - a306e6bc-d873-4c59-a983-a01ad7028d05 + - 966ddeee-7e18-48a9-8db5-ecb5f65e4c7b status: code: 200 message: OK diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_load_balancers.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_load_balancers.yaml index b69b1bd2eb31..be92dc333d80 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_load_balancers.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_load_balancers.yaml @@ -15,24 +15,24 @@ interactions: - application/json; charset=utf-8 User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyipname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"14e40771-4af7-400e-9467-3eb90414c4a0\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyipname239e0f35\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ + ,\r\n \"etag\": \"W/\\\"27dc2466-212b-4232-9abd-963ae7c4ac6f\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Updating\",\r\n \"resourceGuid\": \"ecea15e9-0e94-4d0a-a919-4fb3476f38ec\"\ + : \"Updating\",\r\n \"resourceGuid\": \"de2e8db6-131b-40e4-b26f-3ed4a3bf65d4\"\ ,\r\n \"publicIPAddressVersion\": \"IPv4\",\r\n \"publicIPAllocationMethod\"\ : \"Static\",\r\n \"idleTimeoutInMinutes\": 4,\r\n \"ipTags\": []\r\n\ \ },\r\n \"type\": \"Microsoft.Network/publicIPAddresses\",\r\n \"sku\"\ : {\r\n \"name\": \"Basic\",\r\n \"tier\": \"Regional\"\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b8a58000-263d-4049-bd79-93ef3d13f64d?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/cbe321a2-9785-431f-bcc1-0ee9cd8027d4?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -40,7 +40,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:02:06 GMT + - Tue, 22 Oct 2019 06:07:05 GMT expires: - '-1' pragma: @@ -53,9 +53,9 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 6202f636-fc1d-4b83-b27b-e6f19c48072f + - 7c1620e9-a30c-4d6c-84b7-992cd6f0e95d x-ms-ratelimit-remaining-subscription-writes: - - '1199' + - '1196' status: code: 201 message: Created @@ -70,9 +70,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b8a58000-263d-4049-bd79-93ef3d13f64d?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/cbe321a2-9785-431f-bcc1-0ee9cd8027d4?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -84,7 +84,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:02:08 GMT + - Tue, 22 Oct 2019 06:07:07 GMT expires: - '-1' pragma: @@ -101,7 +101,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - f00e4688-4199-4ab2-983c-5267035a5626 + - 8414763d-bbcc-4476-857d-488c14ed649c status: code: 200 message: OK @@ -116,16 +116,16 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyipname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"2cf891cd-d3c8-4c34-8b72-b8c29653d620\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyipname239e0f35\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ + ,\r\n \"etag\": \"W/\\\"d1d9f467-c0a0-4b3b-be21-46dd9ffd74cf\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"ecea15e9-0e94-4d0a-a919-4fb3476f38ec\"\ - ,\r\n \"ipAddress\": \"13.88.183.129\",\r\n \"publicIPAddressVersion\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"de2e8db6-131b-40e4-b26f-3ed4a3bf65d4\"\ + ,\r\n \"ipAddress\": \"104.42.250.221\",\r\n \"publicIPAddressVersion\"\ : \"IPv4\",\r\n \"publicIPAllocationMethod\": \"Static\",\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"ipTags\": []\r\n },\r\n \"type\": \"Microsoft.Network/publicIPAddresses\"\ ,\r\n \"sku\": {\r\n \"name\": \"Basic\",\r\n \"tier\": \"Regional\"\ @@ -134,13 +134,13 @@ interactions: cache-control: - no-cache content-length: - - '710' + - '711' content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:02:08 GMT + - Tue, 22 Oct 2019 06:07:07 GMT etag: - - W/"2cf891cd-d3c8-4c34-8b72-b8c29653d620" + - W/"d1d9f467-c0a0-4b3b-be21-46dd9ffd74cf" expires: - '-1' pragma: @@ -157,25 +157,25 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 47d11a6e-5dbc-4159-b8da-2d90b1823668 + - 8d95e5e4-931f-45d6-9863-953823c4ddb3 status: code: 200 message: OK - request: body: '{"location": "westus", "properties": {"frontendIPConfigurations": [{"properties": - {"privateIPAllocationMethod": "Dynamic", "publicIPAddress": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35"}}, + {"privateIPAllocationMethod": "Dynamic", "publicIPAddress": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35"}}, "name": "pyfipname239e0f35"}], "backendAddressPools": [{"name": "pyapname239e0f35"}], - "loadBalancingRules": [{"properties": {"frontendIPConfiguration": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"}, - "backendAddressPool": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35"}, - "probe": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35"}, + "loadBalancingRules": [{"properties": {"frontendIPConfiguration": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"}, + "backendAddressPool": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35"}, + "probe": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35"}, "protocol": "tcp", "loadDistribution": "Default", "frontendPort": 80, "backendPort": 80, "idleTimeoutInMinutes": 4, "enableFloatingIP": false}, "name": "azure-sample-lb-rule"}], "probes": [{"properties": {"protocol": "Http", "port": 80, "intervalInSeconds": 15, "numberOfProbes": 4, "requestPath": "healthprobe.aspx"}, "name": "pyprobename239e0f35"}], - "inboundNatRules": [{"properties": {"frontendIPConfiguration": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"}, + "inboundNatRules": [{"properties": {"frontendIPConfiguration": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"}, "protocol": "tcp", "frontendPort": 21, "backendPort": 22, "idleTimeoutInMinutes": 4, "enableFloatingIP": false}, "name": "azure-sample-netrule1"}, {"properties": - {"frontendIPConfiguration": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"}, + {"frontendIPConfiguration": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"}, "protocol": "tcp", "frontendPort": 23, "backendPort": 22, "idleTimeoutInMinutes": 4, "enableFloatingIP": false}, "name": "azure-sample-netrule2"}]}}' headers: @@ -191,78 +191,78 @@ interactions: - application/json; charset=utf-8 User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pylbname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\",\r\n \ + string: "{\r\n \"name\": \"pylbname239e0f35\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/loadBalancers\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"a6325f69-7ace-421b-a030-c05dee92324c\",\r\n \"\ + \ \"resourceGuid\": \"3d2dc17e-2603-4a85-a584-76635ab53fbc\",\r\n \"\ frontendIPConfigurations\": [\r\n {\r\n \"name\": \"pyfipname239e0f35\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/frontendIPConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAllocationMethod\": \"Dynamic\",\r\n \"\ - publicIPAddress\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ + publicIPAddress\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ \r\n },\r\n \"loadBalancingRules\": [\r\n {\r\ - \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ],\r\n \"inboundNatRules\": [\r\n\ - \ {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ - \r\n },\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + \ {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + \r\n },\r\n {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ \r\n }\r\n ],\r\n \"privateIPAddressVersion\"\ : \"IPv4\"\r\n }\r\n }\r\n ],\r\n \"backendAddressPools\"\ : [\r\n {\r\n \"name\": \"pyapname239e0f35\",\r\n \"id\"\ - : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\"\ + : \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"loadBalancingRules\": [\r\n {\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/loadBalancers/backendAddressPools\"\ \r\n }\r\n ],\r\n \"loadBalancingRules\": [\r\n {\r\n \ - \ \"name\": \"azure-sample-lb-rule\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\"\ + \ \"name\": \"azure-sample-lb-rule\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/loadBalancingRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 80,\r\n \"backendPort\"\ : 80,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ : false,\r\n \"enableTcpReset\": false,\r\n \"allowBackendPortConflict\"\ : false,\r\n \"loadDistribution\": \"Default\",\r\n \"backendAddressPool\"\ - : {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ - \r\n },\r\n \"probe\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ + : {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + \r\n },\r\n \"probe\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ \r\n }\r\n }\r\n }\r\n ],\r\n \"probes\": [\r\n\ \ {\r\n \"name\": \"pyprobename239e0f35\",\r\n \"id\":\ - \ \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\"\ + \ \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"protocol\": \"Http\",\r\n \"port\": 80,\r\n \ \ \"requestPath\": \"healthprobe.aspx\",\r\n \"intervalInSeconds\"\ : 15,\r\n \"numberOfProbes\": 4,\r\n \"loadBalancingRules\"\ - : [\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + : [\r\n {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/loadBalancers/probes\"\ \r\n }\r\n ],\r\n \"inboundNatRules\": [\r\n {\r\n \ - \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\"\ + \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 21,\r\n \"backendPort\"\ : 22,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ : false,\r\n \"enableTcpReset\": false,\r\n \"allowBackendPortConflict\"\ : false\r\n }\r\n },\r\n {\r\n \"name\": \"azure-sample-netrule2\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 23,\r\n \"backendPort\"\ : 22,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ @@ -272,7 +272,7 @@ interactions: \r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/d759e908-0c83-4940-ba7c-4097d5727fa6?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/593273e7-b9f7-46fb-b436-775579dd8fb1?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -280,7 +280,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:02:10 GMT + - Tue, 22 Oct 2019 06:07:10 GMT expires: - '-1' pragma: @@ -293,9 +293,9 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 1f4b0d70-d916-470b-9272-47302ddc254c + - e63c4228-4792-4803-9b33-c519d00ca6a9 x-ms-ratelimit-remaining-subscription-writes: - - '1198' + - '1195' status: code: 201 message: Created @@ -310,9 +310,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/d759e908-0c83-4940-ba7c-4097d5727fa6?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/593273e7-b9f7-46fb-b436-775579dd8fb1?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -324,7 +324,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:02:41 GMT + - Tue, 22 Oct 2019 06:07:42 GMT expires: - '-1' pragma: @@ -341,7 +341,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 307b362f-804b-4611-97df-2f612e42b4ca + - 0828cd0b-200e-4eec-b47d-64ebc07a8432 status: code: 200 message: OK @@ -356,76 +356,76 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pylbname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\",\r\n \ + string: "{\r\n \"name\": \"pylbname239e0f35\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/loadBalancers\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"a6325f69-7ace-421b-a030-c05dee92324c\",\r\n \"\ + \ \"resourceGuid\": \"3d2dc17e-2603-4a85-a584-76635ab53fbc\",\r\n \"\ frontendIPConfigurations\": [\r\n {\r\n \"name\": \"pyfipname239e0f35\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/frontendIPConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAllocationMethod\": \"Dynamic\",\r\n \"\ - publicIPAddress\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ + publicIPAddress\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ \r\n },\r\n \"loadBalancingRules\": [\r\n {\r\ - \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ],\r\n \"inboundNatRules\": [\r\n\ - \ {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ - \r\n },\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + \ {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + \r\n },\r\n {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ \r\n }\r\n ],\r\n \"privateIPAddressVersion\"\ : \"IPv4\"\r\n }\r\n }\r\n ],\r\n \"backendAddressPools\"\ : [\r\n {\r\n \"name\": \"pyapname239e0f35\",\r\n \"id\"\ - : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\"\ + : \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"loadBalancingRules\": [\r\n {\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/loadBalancers/backendAddressPools\"\ \r\n }\r\n ],\r\n \"loadBalancingRules\": [\r\n {\r\n \ - \ \"name\": \"azure-sample-lb-rule\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\"\ + \ \"name\": \"azure-sample-lb-rule\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/loadBalancingRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 80,\r\n \"backendPort\"\ : 80,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ : false,\r\n \"enableTcpReset\": false,\r\n \"allowBackendPortConflict\"\ : false,\r\n \"loadDistribution\": \"Default\",\r\n \"backendAddressPool\"\ - : {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ - \r\n },\r\n \"probe\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ + : {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + \r\n },\r\n \"probe\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ \r\n }\r\n }\r\n }\r\n ],\r\n \"probes\": [\r\n\ \ {\r\n \"name\": \"pyprobename239e0f35\",\r\n \"id\":\ - \ \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\"\ + \ \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"protocol\": \"Http\",\r\n \"port\": 80,\r\n \ \ \"requestPath\": \"healthprobe.aspx\",\r\n \"intervalInSeconds\"\ : 15,\r\n \"numberOfProbes\": 4,\r\n \"loadBalancingRules\"\ - : [\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + : [\r\n {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/loadBalancers/probes\"\ \r\n }\r\n ],\r\n \"inboundNatRules\": [\r\n {\r\n \ - \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\"\ + \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 21,\r\n \"backendPort\"\ : 22,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ : false,\r\n \"enableTcpReset\": false,\r\n \"allowBackendPortConflict\"\ : false\r\n }\r\n },\r\n {\r\n \"name\": \"azure-sample-netrule2\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 23,\r\n \"backendPort\"\ : 22,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ @@ -441,9 +441,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:02:42 GMT + - Tue, 22 Oct 2019 06:07:42 GMT etag: - - W/"b0ee32aa-32e4-4e61-b7e9-8a24393e9682" + - W/"87545c48-97db-4c27-955e-bd88c9b0a9d5" expires: - '-1' pragma: @@ -460,7 +460,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 71bdfa8e-28a3-42d8-9b71-f00eb76451a1 + - 820b3686-212b-4eb1-87b4-c187310359f3 status: code: 200 message: OK @@ -475,78 +475,78 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pylbname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\",\r\n \ + string: "{\r\n \"name\": \"pylbname239e0f35\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/loadBalancers\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"a6325f69-7ace-421b-a030-c05dee92324c\",\r\n \"\ + \ \"resourceGuid\": \"3d2dc17e-2603-4a85-a584-76635ab53fbc\",\r\n \"\ frontendIPConfigurations\": [\r\n {\r\n \"name\": \"pyfipname239e0f35\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/frontendIPConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAllocationMethod\": \"Dynamic\",\r\n \"\ - publicIPAddress\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ + publicIPAddress\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ \r\n },\r\n \"loadBalancingRules\": [\r\n {\r\ - \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ],\r\n \"inboundNatRules\": [\r\n\ - \ {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ - \r\n },\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + \ {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + \r\n },\r\n {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ \r\n }\r\n ],\r\n \"privateIPAddressVersion\"\ : \"IPv4\"\r\n }\r\n }\r\n ],\r\n \"backendAddressPools\"\ : [\r\n {\r\n \"name\": \"pyapname239e0f35\",\r\n \"id\"\ - : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\"\ + : \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"loadBalancingRules\": [\r\n {\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/loadBalancers/backendAddressPools\"\ \r\n }\r\n ],\r\n \"loadBalancingRules\": [\r\n {\r\n \ - \ \"name\": \"azure-sample-lb-rule\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\"\ + \ \"name\": \"azure-sample-lb-rule\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/loadBalancingRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 80,\r\n \"backendPort\"\ : 80,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ : false,\r\n \"enableTcpReset\": false,\r\n \"allowBackendPortConflict\"\ : false,\r\n \"loadDistribution\": \"Default\",\r\n \"backendAddressPool\"\ - : {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ - \r\n },\r\n \"probe\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ + : {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + \r\n },\r\n \"probe\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ \r\n }\r\n }\r\n }\r\n ],\r\n \"probes\": [\r\n\ \ {\r\n \"name\": \"pyprobename239e0f35\",\r\n \"id\":\ - \ \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\"\ + \ \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"protocol\": \"Http\",\r\n \"port\": 80,\r\n \ \ \"requestPath\": \"healthprobe.aspx\",\r\n \"intervalInSeconds\"\ : 15,\r\n \"numberOfProbes\": 4,\r\n \"loadBalancingRules\"\ - : [\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + : [\r\n {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/loadBalancers/probes\"\ \r\n }\r\n ],\r\n \"inboundNatRules\": [\r\n {\r\n \ - \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\"\ + \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 21,\r\n \"backendPort\"\ : 22,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ : false,\r\n \"enableTcpReset\": false,\r\n \"allowBackendPortConflict\"\ : false\r\n }\r\n },\r\n {\r\n \"name\": \"azure-sample-netrule2\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 23,\r\n \"backendPort\"\ : 22,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ @@ -562,9 +562,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:02:42 GMT + - Tue, 22 Oct 2019 06:07:42 GMT etag: - - W/"b0ee32aa-32e4-4e61-b7e9-8a24393e9682" + - W/"87545c48-97db-4c27-955e-bd88c9b0a9d5" expires: - '-1' pragma: @@ -581,7 +581,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 8b6131f5-2300-41ee-892d-b1bb60779f3a + - 67948b6e-52dd-4e04-8fc4-af1604b7c6d8 status: code: 200 message: OK @@ -596,23 +596,23 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/loadBalancers?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/loadBalancers?api-version=2019-09-01 response: body: - string: '{"value":[{"name":"vmss1LB","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/loadBalancers/vmss1LB","etag":"W/\"e9fe1e5f-a65e-4248-bc63-c78931594694\"","type":"Microsoft.Network/loadBalancers","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"43a8b3ba-6b0d-4c71-9bb1-765be9ffb0f3","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"e9fe1e5f-a65e-4248-bc63-c78931594694\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP"},"inboundNatRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.3"}],"inboundNatPools":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vmss1LBBEPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/loadBalancers/vmss1LB/backendAddressPools/vmss1LBBEPool","etag":"W/\"e9fe1e5f-a65e-4248-bc63-c78931594694\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1c6e6Nic/ipConfigurations/vmss1c6e6IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/vmss1c6e6Nic/ipConfigurations/vmss1c6e6IPConfig"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[{"name":"vmss1LBNatPool.1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.1","etag":"W/\"e9fe1e5f-a65e-4248-bc63-c78931594694\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50001,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1c6e6Nic/ipConfigurations/vmss1c6e6IPConfig"}}},{"name":"vmss1LBNatPool.3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.3","etag":"W/\"e9fe1e5f-a65e-4248-bc63-c78931594694\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50003,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/vmss1c6e6Nic/ipConfigurations/vmss1c6e6IPConfig"}}}],"inboundNatPools":[{"name":"vmss1LBNatPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool","etag":"W/\"e9fe1e5f-a65e-4248-bc63-c78931594694\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"cli-test-vmss-local-1LB","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Network/loadBalancers/cli-test-vmss-local-1LB","etag":"W/\"e68d1445-0202-4306-b0fe-6af576ec87b4\"","type":"Microsoft.Network/loadBalancers","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"57e07b37-3573-4d43-9bf0-28b20a8291d1","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Network/loadBalancers/cli-test-vmss-local-1LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"e68d1445-0202-4306-b0fe-6af576ec87b4\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Network/publicIPAddresses/cli-test-vmss-local-1LBPublicIP"},"inboundNatRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Network/loadBalancers/cli-test-vmss-local-1LB/inboundNatRules/cli-test-vmss-local-1LBNatPool.0"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Network/loadBalancers/cli-test-vmss-local-1LB/inboundNatRules/cli-test-vmss-local-1LBNatPool.1"}],"inboundNatPools":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Network/loadBalancers/cli-test-vmss-local-1LB/inboundNatPools/cli-test-vmss-local-1LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"cli-test-vmss-local-1LBBEPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Network/loadBalancers/cli-test-vmss-local-1LB/backendAddressPools/cli-test-vmss-local-1LBBEPool","etag":"W/\"e68d1445-0202-4306-b0fe-6af576ec87b4\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Compute/virtualMachineScaleSets/cli-test-vmss-local-1/virtualMachines/0/networkInterfaces/clite01dcNic/ipConfigurations/clite01dcIPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Compute/virtualMachineScaleSets/cli-test-vmss-local-1/virtualMachines/1/networkInterfaces/clite01dcNic/ipConfigurations/clite01dcIPConfig"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[{"name":"cli-test-vmss-local-1LBNatPool.0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Network/loadBalancers/cli-test-vmss-local-1LB/inboundNatRules/cli-test-vmss-local-1LBNatPool.0","etag":"W/\"e68d1445-0202-4306-b0fe-6af576ec87b4\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Network/loadBalancers/cli-test-vmss-local-1LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50000,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Compute/virtualMachineScaleSets/cli-test-vmss-local-1/virtualMachines/0/networkInterfaces/clite01dcNic/ipConfigurations/clite01dcIPConfig"}}},{"name":"cli-test-vmss-local-1LBNatPool.1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Network/loadBalancers/cli-test-vmss-local-1LB/inboundNatRules/cli-test-vmss-local-1LBNatPool.1","etag":"W/\"e68d1445-0202-4306-b0fe-6af576ec87b4\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Network/loadBalancers/cli-test-vmss-local-1LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50001,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Compute/virtualMachineScaleSets/cli-test-vmss-local-1/virtualMachines/1/networkInterfaces/clite01dcNic/ipConfigurations/clite01dcIPConfig"}}}],"inboundNatPools":[{"name":"cli-test-vmss-local-1LBNatPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Network/loadBalancers/cli-test-vmss-local-1LB/inboundNatPools/cli-test-vmss-local-1LBNatPool","etag":"W/\"e68d1445-0202-4306-b0fe-6af576ec87b4\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Network/loadBalancers/cli-test-vmss-local-1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"vrflb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_existing_idskfymxzondfqnj5dthktz5642i6kemhpnp2og7r5u7s/providers/Microsoft.Network/loadBalancers/vrflb","etag":"W/\"6200af19-c039-4d0d-9170-ca0652c0cfba\"","type":"Microsoft.Network/loadBalancers","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"6fe62487-824a-432a-a05f-46ea52032153","frontendIPConfigurations":[{"name":"LoadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_existing_idskfymxzondfqnj5dthktz5642i6kemhpnp2og7r5u7s/providers/Microsoft.Network/loadBalancers/vrflb/frontendIPConfigurations/LoadBalancerFrontEnd","etag":"W/\"6200af19-c039-4d0d-9170-ca0652c0cfba\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_existing_idskfymxzondfqnj5dthktz5642i6kemhpnp2og7r5u7s/providers/Microsoft.Network/publicIPAddresses/PublicIPvrflb"},"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"mybepool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_existing_idskfymxzondfqnj5dthktz5642i6kemhpnp2og7r5u7s/providers/Microsoft.Network/loadBalancers/vrflb/backendAddressPools/mybepool","etag":"W/\"6200af19-c039-4d0d-9170-ca0652c0cfba\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_existing_idskfymxzondfqnj5dthktz5642i6kemhpnp2og7r5u7s/providers/Microsoft.Compute/virtualMachineScaleSets/vrfvmss/virtualMachines/2/networkInterfaces/vrfvm4affNic/ipConfigurations/vrfvm4affIPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_existing_idskfymxzondfqnj5dthktz5642i6kemhpnp2og7r5u7s/providers/Microsoft.Compute/virtualMachineScaleSets/vrfvmss/virtualMachines/3/networkInterfaces/vrfvm4affNic/ipConfigurations/vrfvm4affIPConfig"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"inboundNatPools":[]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"vmss1LB","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Network/loadBalancers/vmss1LB","etag":"W/\"09a77588-70f2-4c26-a291-7a4f8c7cf95e\"","type":"Microsoft.Network/loadBalancers","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"3d45fc9d-e065-4948-a1f3-3d0cb8d1494f","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"09a77588-70f2-4c26-a291-7a4f8c7cf95e\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP"},"inboundNatRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.0"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.1"}],"inboundNatPools":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vmss1LBBEPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Network/loadBalancers/vmss1LB/backendAddressPools/vmss1LBBEPool","etag":"W/\"09a77588-70f2-4c26-a291-7a4f8c7cf95e\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss14c8aNic/ipConfigurations/vmss14c8aIPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss14c8aNic/ipConfigurations/vmss14c8aIPConfig"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[{"name":"vmss1LBNatPool.0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.0","etag":"W/\"09a77588-70f2-4c26-a291-7a4f8c7cf95e\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50000,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss14c8aNic/ipConfigurations/vmss14c8aIPConfig"}}},{"name":"vmss1LBNatPool.1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.1","etag":"W/\"09a77588-70f2-4c26-a291-7a4f8c7cf95e\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50001,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss14c8aNic/ipConfigurations/vmss14c8aIPConfig"}}}],"inboundNatPools":[{"name":"vmss1LBNatPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool","etag":"W/\"09a77588-70f2-4c26-a291-7a4f8c7cf95e\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"winvmssLB","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_update_aupwr6f7s56h72i42rtexgc6j3sulqhdjyjcwvdjsvnc2jxtac3z55/providers/Microsoft.Network/loadBalancers/winvmssLB","etag":"W/\"64a28514-244b-4627-9359-e29f42686063\"","type":"Microsoft.Network/loadBalancers","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"634b7759-5155-4c7b-ad6d-37bd8f6b9c49","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_update_aupwr6f7s56h72i42rtexgc6j3sulqhdjyjcwvdjsvnc2jxtac3z55/providers/Microsoft.Network/loadBalancers/winvmssLB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"64a28514-244b-4627-9359-e29f42686063\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_update_aupwr6f7s56h72i42rtexgc6j3sulqhdjyjcwvdjsvnc2jxtac3z55/providers/Microsoft.Network/publicIPAddresses/winvmssLBPublicIP"},"inboundNatRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_update_aupwr6f7s56h72i42rtexgc6j3sulqhdjyjcwvdjsvnc2jxtac3z55/providers/Microsoft.Network/loadBalancers/winvmssLB/inboundNatRules/winvmssLBNatPool.1"}],"inboundNatPools":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_update_aupwr6f7s56h72i42rtexgc6j3sulqhdjyjcwvdjsvnc2jxtac3z55/providers/Microsoft.Network/loadBalancers/winvmssLB/inboundNatPools/winvmssLBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"winvmssLBBEPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_update_aupwr6f7s56h72i42rtexgc6j3sulqhdjyjcwvdjsvnc2jxtac3z55/providers/Microsoft.Network/loadBalancers/winvmssLB/backendAddressPools/winvmssLBBEPool","etag":"W/\"64a28514-244b-4627-9359-e29f42686063\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_update_aupwr6f7s56h72i42rtexgc6j3sulqhdjyjcwvdjsvnc2jxtac3z55/providers/Microsoft.Compute/virtualMachineScaleSets/winvmss/virtualMachines/1/networkInterfaces/winvmd2c1Nic/ipConfigurations/winvmd2c1IPConfig"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[{"name":"winvmssLBNatPool.1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_update_aupwr6f7s56h72i42rtexgc6j3sulqhdjyjcwvdjsvnc2jxtac3z55/providers/Microsoft.Network/loadBalancers/winvmssLB/inboundNatRules/winvmssLBNatPool.1","etag":"W/\"64a28514-244b-4627-9359-e29f42686063\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_update_aupwr6f7s56h72i42rtexgc6j3sulqhdjyjcwvdjsvnc2jxtac3z55/providers/Microsoft.Network/loadBalancers/winvmssLB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50001,"backendPort":3389,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_update_aupwr6f7s56h72i42rtexgc6j3sulqhdjyjcwvdjsvnc2jxtac3z55/providers/Microsoft.Compute/virtualMachineScaleSets/winvmss/virtualMachines/1/networkInterfaces/winvmd2c1Nic/ipConfigurations/winvmd2c1IPConfig"}}}],"inboundNatPools":[{"name":"winvmssLBNatPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_update_aupwr6f7s56h72i42rtexgc6j3sulqhdjyjcwvdjsvnc2jxtac3z55/providers/Microsoft.Network/loadBalancers/winvmssLB/inboundNatPools/winvmssLBNatPool","etag":"W/\"64a28514-244b-4627-9359-e29f42686063\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":3389,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_update_aupwr6f7s56h72i42rtexgc6j3sulqhdjyjcwvdjsvnc2jxtac3z55/providers/Microsoft.Network/loadBalancers/winvmssLB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"vmss1LB","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Network/loadBalancers/vmss1LB","etag":"W/\"3e23d556-542e-4e01-b504-3afc8978d87e\"","type":"Microsoft.Network/loadBalancers","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0bcc1601-6c5b-4347-a2de-0ad2eea5a624","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"3e23d556-542e-4e01-b504-3afc8978d87e\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP"},"inboundNatRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.0"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.2"}],"inboundNatPools":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vmss1LBBEPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Network/loadBalancers/vmss1LB/backendAddressPools/vmss1LBBEPool","etag":"W/\"3e23d556-542e-4e01-b504-3afc8978d87e\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss13e08Nic/ipConfigurations/vmss13e08IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/vmss13e08Nic/ipConfigurations/vmss13e08IPConfig"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[{"name":"vmss1LBNatPool.0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.0","etag":"W/\"3e23d556-542e-4e01-b504-3afc8978d87e\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50000,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss13e08Nic/ipConfigurations/vmss13e08IPConfig"}}},{"name":"vmss1LBNatPool.2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.2","etag":"W/\"3e23d556-542e-4e01-b504-3afc8978d87e\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50002,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/vmss13e08Nic/ipConfigurations/vmss13e08IPConfig"}}}],"inboundNatPools":[{"name":"vmss1LBNatPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool","etag":"W/\"3e23d556-542e-4e01-b504-3afc8978d87e\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"vmss1LB","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss1LB","etag":"W/\"e8b2638a-bdea-41f4-8961-a7cb3c858471\"","type":"Microsoft.Network/loadBalancers","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"23d55955-36b8-48e1-99dc-048c86c603cb","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"e8b2638a-bdea-41f4-8961-a7cb3c858471\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP"},"inboundNatRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.0"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.2"}],"inboundNatPools":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vmss1LBBEPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss1LB/backendAddressPools/vmss1LBBEPool","etag":"W/\"e8b2638a-bdea-41f4-8961-a7cb3c858471\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss11b4cNic/ipConfigurations/vmss11b4cIPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/vmss11b4cNic/ipConfigurations/vmss11b4cIPConfig"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[{"name":"vmss1LBNatPool.0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.0","etag":"W/\"e8b2638a-bdea-41f4-8961-a7cb3c858471\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50000,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss11b4cNic/ipConfigurations/vmss11b4cIPConfig"}}},{"name":"vmss1LBNatPool.2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.2","etag":"W/\"e8b2638a-bdea-41f4-8961-a7cb3c858471\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50002,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/vmss11b4cNic/ipConfigurations/vmss11b4cIPConfig"}}}],"inboundNatPools":[{"name":"vmss1LBNatPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool","etag":"W/\"e8b2638a-bdea-41f4-8961-a7cb3c858471\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"vmss2LB","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss2LB","etag":"W/\"56b60d78-8545-4847-ad34-f87280704401\"","type":"Microsoft.Network/loadBalancers","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a548a549-c09f-43b5-b4a9-344d03e3ce2b","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"56b60d78-8545-4847-ad34-f87280704401\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/publicIPAddresses/vmss2LBPublicIP"},"inboundNatRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatRules/vmss2LBNatPool.0"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatRules/vmss2LBNatPool.1"}],"inboundNatPools":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatPools/vmss2LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vmss2LBBEPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss2LB/backendAddressPools/vmss2LBBEPool","etag":"W/\"56b60d78-8545-4847-ad34-f87280704401\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/0/networkInterfaces/vmss27f47Nic/ipConfigurations/vmss27f47IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/1/networkInterfaces/vmss27f47Nic/ipConfigurations/vmss27f47IPConfig"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[{"name":"vmss2LBNatPool.0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatRules/vmss2LBNatPool.0","etag":"W/\"56b60d78-8545-4847-ad34-f87280704401\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50000,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/0/networkInterfaces/vmss27f47Nic/ipConfigurations/vmss27f47IPConfig"}}},{"name":"vmss2LBNatPool.1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatRules/vmss2LBNatPool.1","etag":"W/\"56b60d78-8545-4847-ad34-f87280704401\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50001,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/1/networkInterfaces/vmss27f47Nic/ipConfigurations/vmss27f47IPConfig"}}}],"inboundNatPools":[{"name":"vmss2LBNatPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatPools/vmss2LBNatPool","etag":"W/\"56b60d78-8545-4847-ad34-f87280704401\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"asdfLB","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB","etag":"W/\"1d7b95ed-66b3-4224-88d8-74316c72a760\"","type":"Microsoft.Network/loadBalancers","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"5bd3ae17-f6a1-4786-85ba-cd442e1af9c1","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"1d7b95ed-66b3-4224-88d8-74316c72a760\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/asdfLBPublicIP"},"inboundNatPools":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/inboundNatPools/asdfLBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"asdfLBBEPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/backendAddressPools/asdfLBBEPool","etag":"W/\"1d7b95ed-66b3-4224-88d8-74316c72a760\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"inboundNatPools":[{"name":"asdfLBNatPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/inboundNatPools/asdfLBNatPool","etag":"W/\"1d7b95ed-66b3-4224-88d8-74316c72a760\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"vm5LB","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB","etag":"W/\"b198e267-5e61-47a2-a7b9-3dafe6425ce6\"","type":"Microsoft.Network/loadBalancers","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"cc41b28b-1e12-4ea3-b2a1-d45c659bae86","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"b198e267-5e61-47a2-a7b9-3dafe6425ce6\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/vm5LBPublicIP"},"inboundNatPools":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/inboundNatPools/vm5LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vm5LBBEPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/backendAddressPools/vm5LBBEPool","etag":"W/\"b198e267-5e61-47a2-a7b9-3dafe6425ce6\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"inboundNatPools":[{"name":"vm5LBNatPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/inboundNatPools/vm5LBNatPool","etag":"W/\"b198e267-5e61-47a2-a7b9-3dafe6425ce6\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"pylbname239e0f35","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35","etag":"W/\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\"","type":"Microsoft.Network/loadBalancers","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"a6325f69-7ace-421b-a030-c05dee92324c","frontendIPConfigurations":[{"name":"pyfipname239e0f35","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35","etag":"W/\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35"},"loadBalancingRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule"}],"inboundNatRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"pyapname239e0f35","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35","etag":"W/\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\"","properties":{"provisioningState":"Succeeded","loadBalancingRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[{"name":"azure-sample-lb-rule","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule","etag":"W/\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\"","type":"Microsoft.Network/loadBalancers/loadBalancingRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"},"frontendPort":80,"backendPort":80,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"loadDistribution":"Default","backendAddressPool":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35"},"probe":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35"}}}],"probes":[{"name":"pyprobename239e0f35","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35","etag":"W/\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\"","properties":{"provisioningState":"Succeeded","protocol":"Http","port":80,"requestPath":"healthprobe.aspx","intervalInSeconds":15,"numberOfProbes":4,"loadBalancingRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule"}]},"type":"Microsoft.Network/loadBalancers/probes"}],"inboundNatRules":[{"name":"azure-sample-netrule1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1","etag":"W/\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"},"frontendPort":21,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false}},{"name":"azure-sample-netrule2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2","etag":"W/\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"},"frontendPort":23,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false}}],"inboundNatPools":[]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"fozippy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"924ede91-f213-4a0f-94c9-d1a17c2d09c7","frontendIPConfigurations":[{"name":"fozippy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/publicIPAddresses/fozippy98"},"loadBalancingRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/loadBalancingRules/fozippy9880"}],"inboundNatRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy983389.0"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy985985.0"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy983389.3"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy985985.3"}],"inboundNatPools":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatPools/fozippy983389"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatPools/fozippy985985"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"fozippy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/backendAddressPools/fozippy98","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/0/networkInterfaces/fozippy98/ipConfigurations/fozippy98"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/3/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}],"loadBalancingRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/loadBalancingRules/fozippy9880"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[{"name":"fozippy9880","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/loadBalancingRules/fozippy9880","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/loadBalancingRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":80,"backendPort":80,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"loadDistribution":"Default","disableOutboundSnat":false,"backendAddressPool":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/backendAddressPools/fozippy98"}}}],"probes":[],"inboundNatRules":[{"name":"fozippy983389.0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy983389.0","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":50000,"backendPort":3389,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/0/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}}},{"name":"fozippy985985.0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy985985.0","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":52000,"backendPort":5985,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/0/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}}},{"name":"fozippy983389.3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy983389.3","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":50003,"backendPort":3389,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/3/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}}},{"name":"fozippy985985.3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy985985.3","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":52003,"backendPort":5985,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/3/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}}}],"outboundRules":[],"inboundNatPools":[{"name":"fozippy983389","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatPools/fozippy983389","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50004,"backendPort":3389,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"},{"name":"fozippy985985","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatPools/fozippy985985","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":52000,"frontendPortRangeEnd":52004,"backendPort":5985,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Standard","tier":"Regional"}},{"name":"vmss1LB","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB","etag":"W/\"8dd74a62-6284-4b7a-b1ba-0be75d680bee\"","type":"Microsoft.Network/loadBalancers","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"e39f2c21-eace-4760-82ac-f224e3772457","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"8dd74a62-6284-4b7a-b1ba-0be75d680bee\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP"},"inboundNatRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.3"}],"inboundNatPools":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vmss1LBBEPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/backendAddressPools/vmss1LBBEPool","etag":"W/\"8dd74a62-6284-4b7a-b1ba-0be75d680bee\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss10282Nic/ipConfigurations/vmss10282IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/vmss10282Nic/ipConfigurations/vmss10282IPConfig"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[{"name":"vmss1LBNatPool.1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.1","etag":"W/\"8dd74a62-6284-4b7a-b1ba-0be75d680bee\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50001,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss10282Nic/ipConfigurations/vmss10282IPConfig"}}},{"name":"vmss1LBNatPool.3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatRules/vmss1LBNatPool.3","etag":"W/\"8dd74a62-6284-4b7a-b1ba-0be75d680bee\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50003,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/vmss10282Nic/ipConfigurations/vmss10282IPConfig"}}}],"inboundNatPools":[{"name":"vmss1LBNatPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool","etag":"W/\"8dd74a62-6284-4b7a-b1ba-0be75d680bee\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"0925lb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0925testpe/providers/Microsoft.Network/loadBalancers/0925lb","etag":"W/\"dd9636b7-4f47-4969-9d95-335120fe8f7c\"","type":"Microsoft.Network/loadBalancers","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"1681b8af-985c-4754-8fa2-363f77a61169","frontendIPConfigurations":[{"name":"LoadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0925testpe/providers/Microsoft.Network/loadBalancers/0925lb/frontendIPConfigurations/LoadBalancerFrontEnd","etag":"W/\"dd9636b7-4f47-4969-9d95-335120fe8f7c\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0925testpe/providers/Microsoft.Network/publicIPAddresses/0925ip"},"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"0925lbbepool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0925testpe/providers/Microsoft.Network/loadBalancers/0925lb/backendAddressPools/0925lbbepool","etag":"W/\"dd9636b7-4f47-4969-9d95-335120fe8f7c\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"outboundRules":[],"inboundNatPools":[]},"sku":{"name":"Standard","tier":"Regional"}},{"name":"lb1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/loadBalancers/lb1","etag":"W/\"2a8a7756-e895-4ac5-aa83-0384620e905d\"","type":"Microsoft.Network/loadBalancers","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"4e520635-d0d8-441b-9448-3e3b2120993e","frontendIPConfigurations":[{"name":"LoadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/LoadBalancerFrontEnd","etag":"W/\"2a8a7756-e895-4ac5-aa83-0384620e905d\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/publicIPAddresses/pubip1"},"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"lb1bepool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/lb1bepool","etag":"W/\"2a8a7756-e895-4ac5-aa83-0384620e905d\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"outboundRules":[],"inboundNatPools":[]},"sku":{"name":"Standard","tier":"Regional"}},{"name":"lb1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpoints5g6w2vswk3ajqexqwta4in3ictwrqwgvneqw3hbnp/providers/Microsoft.Network/loadBalancers/lb1","etag":"W/\"ab1c9245-c067-486c-b338-adf5a34c6830\"","type":"Microsoft.Network/loadBalancers","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0af78665-87f7-4576-b004-79fc79b614d3","frontendIPConfigurations":[{"name":"LoadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpoints5g6w2vswk3ajqexqwta4in3ictwrqwgvneqw3hbnp/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/LoadBalancerFrontEnd","etag":"W/\"ab1c9245-c067-486c-b338-adf5a34c6830\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpoints5g6w2vswk3ajqexqwta4in3ictwrqwgvneqw3hbnp/providers/Microsoft.Network/publicIPAddresses/pubip1"},"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"lb1bepool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpoints5g6w2vswk3ajqexqwta4in3ictwrqwgvneqw3hbnp/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/lb1bepool","etag":"W/\"ab1c9245-c067-486c-b338-adf5a34c6830\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"outboundRules":[],"inboundNatPools":[]},"sku":{"name":"Standard","tier":"Regional"}},{"name":"lb1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/loadBalancers/lb1","etag":"W/\"b02edc18-2215-472c-9c74-91568843251b\"","type":"Microsoft.Network/loadBalancers","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"87edd78c-dea3-42e9-a661-b424ef826188","frontendIPConfigurations":[{"name":"LoadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/LoadBalancerFrontEnd","etag":"W/\"b02edc18-2215-472c-9c74-91568843251b\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/publicIPAddresses/pubip1"},"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"lb1bepool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/lb1bepool","etag":"W/\"b02edc18-2215-472c-9c74-91568843251b\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"outboundRules":[],"inboundNatPools":[]},"sku":{"name":"Standard","tier":"Regional"}}]}' + string: '{"value":[{"name":"vmss1LB","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB","etag":"W/\"9a384036-63c8-4f96-808b-4821b13b1a47\"","type":"Microsoft.Network/loadBalancers","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d8256b75-90ff-4934-abc6-8972d13b010d","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"9a384036-63c8-4f96-808b-4821b13b1a47\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP"},"inboundNatPools":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vmss1LBBEPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB/backendAddressPools/vmss1LBBEPool","etag":"W/\"9a384036-63c8-4f96-808b-4821b13b1a47\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"inboundNatPools":[{"name":"vmss1LBNatPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool","etag":"W/\"9a384036-63c8-4f96-808b-4821b13b1a47\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"asdfLB","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB","etag":"W/\"1d7b95ed-66b3-4224-88d8-74316c72a760\"","type":"Microsoft.Network/loadBalancers","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"5bd3ae17-f6a1-4786-85ba-cd442e1af9c1","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"1d7b95ed-66b3-4224-88d8-74316c72a760\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/asdfLBPublicIP"},"inboundNatPools":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/inboundNatPools/asdfLBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"asdfLBBEPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/backendAddressPools/asdfLBBEPool","etag":"W/\"1d7b95ed-66b3-4224-88d8-74316c72a760\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"inboundNatPools":[{"name":"asdfLBNatPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/inboundNatPools/asdfLBNatPool","etag":"W/\"1d7b95ed-66b3-4224-88d8-74316c72a760\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"vm5LB","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB","etag":"W/\"b198e267-5e61-47a2-a7b9-3dafe6425ce6\"","type":"Microsoft.Network/loadBalancers","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"cc41b28b-1e12-4ea3-b2a1-d45c659bae86","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"b198e267-5e61-47a2-a7b9-3dafe6425ce6\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/vm5LBPublicIP"},"inboundNatPools":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/inboundNatPools/vm5LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vm5LBBEPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/backendAddressPools/vm5LBBEPool","etag":"W/\"b198e267-5e61-47a2-a7b9-3dafe6425ce6\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"inboundNatPools":[{"name":"vm5LBNatPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/inboundNatPools/vm5LBNatPool","etag":"W/\"b198e267-5e61-47a2-a7b9-3dafe6425ce6\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"pylbname239e0f35","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","type":"Microsoft.Network/loadBalancers","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"3d2dc17e-2603-4a85-a584-76635ab53fbc","frontendIPConfigurations":[{"name":"pyfipname239e0f35","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35"},"loadBalancingRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule"}],"inboundNatRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"pyapname239e0f35","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","properties":{"provisioningState":"Succeeded","loadBalancingRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[{"name":"azure-sample-lb-rule","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","type":"Microsoft.Network/loadBalancers/loadBalancingRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"},"frontendPort":80,"backendPort":80,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"loadDistribution":"Default","backendAddressPool":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35"},"probe":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35"}}}],"probes":[{"name":"pyprobename239e0f35","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","properties":{"provisioningState":"Succeeded","protocol":"Http","port":80,"requestPath":"healthprobe.aspx","intervalInSeconds":15,"numberOfProbes":4,"loadBalancingRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule"}]},"type":"Microsoft.Network/loadBalancers/probes"}],"inboundNatRules":[{"name":"azure-sample-netrule1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"},"frontendPort":21,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false}},{"name":"azure-sample-netrule2","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"},"frontendPort":23,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false}}],"inboundNatPools":[]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"fozippy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"924ede91-f213-4a0f-94c9-d1a17c2d09c7","frontendIPConfigurations":[{"name":"fozippy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/publicIPAddresses/fozippy98"},"loadBalancingRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/loadBalancingRules/fozippy9880"}],"inboundNatRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy983389.0"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy985985.0"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy983389.3"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy985985.3"}],"inboundNatPools":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatPools/fozippy983389"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatPools/fozippy985985"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"fozippy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/backendAddressPools/fozippy98","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/0/networkInterfaces/fozippy98/ipConfigurations/fozippy98"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/3/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}],"loadBalancingRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/loadBalancingRules/fozippy9880"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[{"name":"fozippy9880","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/loadBalancingRules/fozippy9880","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/loadBalancingRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":80,"backendPort":80,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"loadDistribution":"Default","disableOutboundSnat":false,"backendAddressPool":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/backendAddressPools/fozippy98"}}}],"probes":[],"inboundNatRules":[{"name":"fozippy983389.0","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy983389.0","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":50000,"backendPort":3389,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/0/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}}},{"name":"fozippy985985.0","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy985985.0","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":52000,"backendPort":5985,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/0/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}}},{"name":"fozippy983389.3","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy983389.3","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":50003,"backendPort":3389,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/3/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}}},{"name":"fozippy985985.3","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy985985.3","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":52003,"backendPort":5985,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/3/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}}}],"outboundRules":[],"inboundNatPools":[{"name":"fozippy983389","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatPools/fozippy983389","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50004,"backendPort":3389,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"},{"name":"fozippy985985","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatPools/fozippy985985","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":52000,"frontendPortRangeEnd":52004,"backendPort":5985,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Standard","tier":"Regional"}},{"name":"vmss1LB","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB","etag":"W/\"320c0978-30d2-42e8-a8da-5c14b479a6cd\"","type":"Microsoft.Network/loadBalancers","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f38ddc5e-493b-4dc0-b253-196c501c24f8","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"320c0978-30d2-42e8-a8da-5c14b479a6cd\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP"},"inboundNatPools":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vmss1LBBEPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/backendAddressPools/vmss1LBBEPool","etag":"W/\"320c0978-30d2-42e8-a8da-5c14b479a6cd\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"inboundNatPools":[{"name":"vmss1LBNatPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool","etag":"W/\"320c0978-30d2-42e8-a8da-5c14b479a6cd\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"vmss2LB","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB","etag":"W/\"dc52a07c-7ab0-4f78-85bf-87824b6189c5\"","type":"Microsoft.Network/loadBalancers","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d5b98044-4b26-49db-a828-7cc77a2fb65a","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"dc52a07c-7ab0-4f78-85bf-87824b6189c5\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/publicIPAddresses/vmss2LBPublicIP"},"inboundNatRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatRules/vmss2LBNatPool.2"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatRules/vmss2LBNatPool.3"}],"inboundNatPools":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatPools/vmss2LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vmss2LBBEPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/backendAddressPools/vmss2LBBEPool","etag":"W/\"dc52a07c-7ab0-4f78-85bf-87824b6189c5\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/2/networkInterfaces/vmss249baNic/ipConfigurations/vmss249baIPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/3/networkInterfaces/vmss249baNic/ipConfigurations/vmss249baIPConfig"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[{"name":"vmss2LBNatPool.2","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatRules/vmss2LBNatPool.2","etag":"W/\"dc52a07c-7ab0-4f78-85bf-87824b6189c5\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50002,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/2/networkInterfaces/vmss249baNic/ipConfigurations/vmss249baIPConfig"}}},{"name":"vmss2LBNatPool.3","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatRules/vmss2LBNatPool.3","etag":"W/\"dc52a07c-7ab0-4f78-85bf-87824b6189c5\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50003,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/3/networkInterfaces/vmss249baNic/ipConfigurations/vmss249baIPConfig"}}}],"inboundNatPools":[{"name":"vmss2LBNatPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatPools/vmss2LBNatPool","etag":"W/\"dc52a07c-7ab0-4f78-85bf-87824b6189c5\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"lb1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/loadBalancers/lb1","etag":"W/\"2a8a7756-e895-4ac5-aa83-0384620e905d\"","type":"Microsoft.Network/loadBalancers","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"4e520635-d0d8-441b-9448-3e3b2120993e","frontendIPConfigurations":[{"name":"LoadBalancerFrontEnd","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/LoadBalancerFrontEnd","etag":"W/\"2a8a7756-e895-4ac5-aa83-0384620e905d\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/publicIPAddresses/pubip1"},"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"lb1bepool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/lb1bepool","etag":"W/\"2a8a7756-e895-4ac5-aa83-0384620e905d\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"outboundRules":[],"inboundNatPools":[]},"sku":{"name":"Standard","tier":"Regional"}},{"name":"vm-ultrassdLB","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"dc0fc1f5-bffa-469f-a982-e86ad42e8c1c","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/publicIPAddresses/vm-ultrassdLBPublicIP"},"loadBalancingRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/loadBalancingRules/LBRule"}],"inboundNatRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.0"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.1"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.2"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.3"}],"inboundNatPools":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatPools/vm-ultrassdLBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vm-ultrassdLBBEPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/backendAddressPools/vm-ultrassdLBBEPool","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/0/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/1/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/2/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/3/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"}],"loadBalancingRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/loadBalancingRules/LBRule"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[{"name":"LBRule","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/loadBalancingRules/LBRule","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers/loadBalancingRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":80,"backendPort":80,"enableFloatingIP":false,"idleTimeoutInMinutes":5,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"loadDistribution":"Default","disableOutboundSnat":false,"backendAddressPool":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/backendAddressPools/vm-ultrassdLBBEPool"}}}],"probes":[],"inboundNatRules":[{"name":"vm-ultrassdLBNatPool.0","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.0","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50000,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/0/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"}}},{"name":"vm-ultrassdLBNatPool.1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.1","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50001,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/1/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"}}},{"name":"vm-ultrassdLBNatPool.2","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.2","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50002,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/2/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"}}},{"name":"vm-ultrassdLBNatPool.3","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.3","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50003,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/3/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"}}}],"outboundRules":[],"inboundNatPools":[{"name":"vm-ultrassdLBNatPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatPools/vm-ultrassdLBNatPool","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Standard","tier":"Regional"}},{"name":"vmss0LB","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","type":"Microsoft.Network/loadBalancers","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0db81372-67a5-44cc-995f-2f7977ee240e","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/publicIPAddresses/vmss0LBPublicIP"},"inboundNatRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.0"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.1"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.2"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.3"}],"inboundNatPools":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatPools/vmss0LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vmss0LBBEPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/backendAddressPools/vmss0LBBEPool","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/0/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/1/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/2/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/3/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[{"name":"vmss0LBNatPool.0","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.0","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50000,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/0/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"}}},{"name":"vmss0LBNatPool.1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.1","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50001,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/1/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"}}},{"name":"vmss0LBNatPool.2","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.2","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50002,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/2/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"}}},{"name":"vmss0LBNatPool.3","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.3","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50003,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/3/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"}}}],"inboundNatPools":[{"name":"vmss0LBNatPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatPools/vmss0LBNatPool","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}}]}' headers: cache-control: - no-cache content-length: - - '79779' + - '55540' content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:02:43 GMT + - Tue, 22 Oct 2019 06:07:42 GMT expires: - '-1' pragma: @@ -624,9 +624,10 @@ interactions: x-content-type-options: - nosniff x-ms-original-request-ids: - - d4e2cbfd-ff43-4858-a77e-128cc0a2dff8 - - d818e56f-a85b-4874-98b1-e739f958b91e - - 6da10d9f-f9de-40c9-9c78-2fba92f88a60 + - bd518a59-0277-4219-98c2-e1316949b447 + - afaa0cad-b455-4988-babe-ddaee2737978 + - b6056b1a-388a-4b30-8f2d-b87c45763d6a + - deb94a2f-697e-438b-b4a4-9ae7362e7cb2 status: code: 200 message: OK @@ -641,90 +642,90 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pylbname239e0f35\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\",\r\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\",\r\ \n \"type\": \"Microsoft.Network/loadBalancers\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"a6325f69-7ace-421b-a030-c05dee92324c\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"3d2dc17e-2603-4a85-a584-76635ab53fbc\"\ ,\r\n \"frontendIPConfigurations\": [\r\n {\r\n \ - \ \"name\": \"pyfipname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\ + \ \"name\": \"pyfipname239e0f35\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\ \",\r\n \"type\": \"Microsoft.Network/loadBalancers/frontendIPConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"privateIPAllocationMethod\": \"Dynamic\"\ - ,\r\n \"publicIPAddress\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ + ,\r\n \"publicIPAddress\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ \r\n },\r\n \"loadBalancingRules\": [\r\n \ - \ {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \ {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ],\r\n \"inboundNatRules\"\ - : [\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + : [\r\n {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ \r\n },\r\n {\r\n \"id\": \"\ - /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + /subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ \r\n }\r\n ],\r\n \"privateIPAddressVersion\"\ : \"IPv4\"\r\n }\r\n }\r\n ],\r\n \"backendAddressPools\"\ : [\r\n {\r\n \"name\": \"pyapname239e0f35\",\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\ + \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\ \",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"loadBalancingRules\": [\r\n \ - \ {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \ {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ]\r\n },\r\n \ \ \"type\": \"Microsoft.Network/loadBalancers/backendAddressPools\"\r\n \ \ }\r\n ],\r\n \"loadBalancingRules\": [\r\n \ \ {\r\n \"name\": \"azure-sample-lb-rule\",\r\n \"\ - id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\ + id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\ \",\r\n \"type\": \"Microsoft.Network/loadBalancers/loadBalancingRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"frontendIPConfiguration\": {\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 80,\r\n \ \ \"backendPort\": 80,\r\n \"enableFloatingIP\": false,\r\n\ \ \"idleTimeoutInMinutes\": 4,\r\n \"protocol\"\ : \"Tcp\",\r\n \"enableDestinationServiceEndpoint\": false,\r\ \n \"enableTcpReset\": false,\r\n \"allowBackendPortConflict\"\ : false,\r\n \"loadDistribution\": \"Default\",\r\n \ - \ \"backendAddressPool\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + \ \"backendAddressPool\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ \r\n },\r\n \"probe\": {\r\n \"id\"\ - : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ + : \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ \r\n }\r\n }\r\n }\r\n ],\r\n \ \ \"probes\": [\r\n {\r\n \"name\": \"pyprobename239e0f35\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\ \",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"protocol\": \"Http\",\r\n \ \ \"port\": 80,\r\n \"requestPath\": \"healthprobe.aspx\",\r\ \n \"intervalInSeconds\": 15,\r\n \"numberOfProbes\"\ : 4,\r\n \"loadBalancingRules\": [\r\n {\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ]\r\n },\r\n \ \ \"type\": \"Microsoft.Network/loadBalancers/probes\"\r\n }\r\n\ \ ],\r\n \"inboundNatRules\": [\r\n {\r\n \ - \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\ + \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\ \",\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"frontendIPConfiguration\": {\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 21,\r\n \ \ \"backendPort\": 22,\r\n \"enableFloatingIP\": false,\r\n\ \ \"idleTimeoutInMinutes\": 4,\r\n \"protocol\"\ : \"Tcp\",\r\n \"enableDestinationServiceEndpoint\": false,\r\ \n \"enableTcpReset\": false,\r\n \"allowBackendPortConflict\"\ : false\r\n }\r\n },\r\n {\r\n \"\ - name\": \"azure-sample-netrule2\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ - ,\r\n \"etag\": \"W/\\\"b0ee32aa-32e4-4e61-b7e9-8a24393e9682\\\"\ + name\": \"azure-sample-netrule2\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\ \",\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"frontendIPConfiguration\": {\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 23,\r\n \ \ \"backendPort\": 22,\r\n \"enableFloatingIP\": false,\r\n\ \ \"idleTimeoutInMinutes\": 4,\r\n \"protocol\"\ @@ -741,7 +742,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:02:43 GMT + - Tue, 22 Oct 2019 06:07:43 GMT expires: - '-1' pragma: @@ -758,7 +759,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 267ce6d1-6a75-4105-966e-9a4dae4c4ae2 + - d5ba49d3-6bd2-4696-8a5d-72f93090b502 status: code: 200 message: OK @@ -775,27 +776,27 @@ interactions: - '0' User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2019-09-01 response: body: string: '' headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f8fe181d-23be-4d9b-af23-6afd559324d1?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/10fc03d1-6336-49d3-9471-4a5a03e2e2ad?api-version=2019-09-01 cache-control: - no-cache content-length: - '0' date: - - Tue, 08 Oct 2019 12:02:44 GMT + - Tue, 22 Oct 2019 06:07:43 GMT expires: - '-1' location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/f8fe181d-23be-4d9b-af23-6afd559324d1?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operationResults/10fc03d1-6336-49d3-9471-4a5a03e2e2ad?api-version=2019-09-01 pragma: - no-cache server: @@ -806,9 +807,9 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 5e94cb85-9541-4016-816f-d09ae59f87fe + - 9cee4402-b20a-42fb-a0b9-11a8c070506c x-ms-ratelimit-remaining-subscription-deletes: - - '14999' + - '14997' status: code: 202 message: Accepted @@ -823,9 +824,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f8fe181d-23be-4d9b-af23-6afd559324d1?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/10fc03d1-6336-49d3-9471-4a5a03e2e2ad?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -837,7 +838,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:02:56 GMT + - Tue, 22 Oct 2019 06:07:55 GMT expires: - '-1' pragma: @@ -854,7 +855,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 8a610a18-7400-4874-b742-efd18c1d3327 + - 4a3fbeb8-d848-40c4-b32d-a658ecc1f464 status: code: 200 message: OK diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_interface_card.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_interface_card.yaml index dedf3a792daa..1eeb5bbefb08 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_interface_card.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_interface_card.yaml @@ -15,25 +15,25 @@ interactions: - application/json; charset=utf-8 User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyvnetb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e\"\ - ,\r\n \"etag\": \"W/\\\"1542f897-1ec9-47c5-9f39-634b154c83ab\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyvnetb046129e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e\"\ + ,\r\n \"etag\": \"W/\\\"f47bd5d0-54d6-4a94-b550-84f0403a5bec\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ - \ \"resourceGuid\": \"fe9110f1-22f9-49d1-bba1-6b509aff431a\",\r\n \"\ + \ \"resourceGuid\": \"b3468ebf-a3d5-478b-9d28-d510879779a4\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ \r\n ]\r\n },\r\n \"subnets\": [],\r\n \"virtualNetworkPeerings\"\ : [],\r\n \"enableDdosProtection\": false,\r\n \"enableVmProtection\"\ : false\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/2c0208a2-6149-4931-829b-52da6f3fa587?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/a91597ec-13bc-43c4-a2be-f435a802999b?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -41,7 +41,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:03:12 GMT + - Tue, 22 Oct 2019 06:08:09 GMT expires: - '-1' pragma: @@ -54,7 +54,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - a6e839f1-f372-4d1f-8e22-bec679e29aa6 + - c49f5e6a-ba57-4af2-9bd5-bd89e546ac6d x-ms-ratelimit-remaining-subscription-writes: - '1199' status: @@ -71,9 +71,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/2c0208a2-6149-4931-829b-52da6f3fa587?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/a91597ec-13bc-43c4-a2be-f435a802999b?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -85,7 +85,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:03:16 GMT + - Tue, 22 Oct 2019 06:08:14 GMT expires: - '-1' pragma: @@ -102,7 +102,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - b83a5f04-1489-479d-9628-30f8c4b85fcd + - 19f02142-6750-48d0-a2e8-e03790468954 status: code: 200 message: OK @@ -117,16 +117,16 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyvnetb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e\"\ - ,\r\n \"etag\": \"W/\\\"647b43fe-be7a-4682-9ce6-91bb79b315c8\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyvnetb046129e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e\"\ + ,\r\n \"etag\": \"W/\\\"2043a502-e168-41c4-a0cf-5e849dd35dca\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"fe9110f1-22f9-49d1-bba1-6b509aff431a\",\r\n \"\ + \ \"resourceGuid\": \"b3468ebf-a3d5-478b-9d28-d510879779a4\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ \r\n ]\r\n },\r\n \"subnets\": [],\r\n \"virtualNetworkPeerings\"\ : [],\r\n \"enableDdosProtection\": false,\r\n \"enableVmProtection\"\ @@ -139,9 +139,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:03:16 GMT + - Tue, 22 Oct 2019 06:08:14 GMT etag: - - W/"647b43fe-be7a-4682-9ce6-91bb79b315c8" + - W/"2043a502-e168-41c4-a0cf-5e849dd35dca" expires: - '-1' pragma: @@ -158,7 +158,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 1877960e-9f1d-470b-8b7a-bd3e77643175 + - 52691a4b-74a4-43b3-bfea-51d50f4da76c status: code: 200 message: OK @@ -177,22 +177,22 @@ interactions: - application/json; charset=utf-8 User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnetb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ - ,\r\n \"etag\": \"W/\\\"89a2c749-621d-4fce-8494-aeb71157b710\\\"\",\r\n \ + string: "{\r\n \"name\": \"pysubnetb046129e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ + ,\r\n \"etag\": \"W/\\\"b4a941f2-d983-40b0-a1f9-8a405947592e\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ : \"Enabled\",\r\n \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\ \n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/2b529e2b-fb54-458e-8473-2d39770145e4?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/a492a002-7cf7-4d25-8b04-67b405788475?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -200,7 +200,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:03:17 GMT + - Tue, 22 Oct 2019 06:08:14 GMT expires: - '-1' pragma: @@ -213,7 +213,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - e34d003e-e82c-4641-b0ba-fd4348b172f6 + - a1e5ec1a-13d1-4b3b-85f0-1df71b14d92a x-ms-ratelimit-remaining-subscription-writes: - '1198' status: @@ -230,9 +230,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/2b529e2b-fb54-458e-8473-2d39770145e4?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/a492a002-7cf7-4d25-8b04-67b405788475?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -244,7 +244,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:03:21 GMT + - Tue, 22 Oct 2019 06:08:18 GMT expires: - '-1' pragma: @@ -261,7 +261,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 2502ed4e-8515-4527-8eaf-4833bd09a89a + - d6a9baef-0762-46fa-96d0-c68d9cb4dd33 status: code: 200 message: OK @@ -276,13 +276,13 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnetb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ - ,\r\n \"etag\": \"W/\\\"149b92d5-6071-44c9-aa36-94aee3aa84ec\\\"\",\r\n \ + string: "{\r\n \"name\": \"pysubnetb046129e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ + ,\r\n \"etag\": \"W/\\\"7f347546-2434-44c4-a8a7-0d4e53a5379c\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ : \"Enabled\",\r\n \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\ @@ -295,9 +295,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:03:22 GMT + - Tue, 22 Oct 2019 06:08:19 GMT etag: - - W/"149b92d5-6071-44c9-aa36-94aee3aa84ec" + - W/"7f347546-2434-44c4-a8a7-0d4e53a5379c" expires: - '-1' pragma: @@ -314,13 +314,13 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 7c4fadb9-bff6-42bf-85ad-11ab6838bfe7 + - 87e44f18-8a0a-43cc-8a66-159a2d044428 status: code: 200 message: OK - request: body: '{"location": "westus", "properties": {"ipConfigurations": [{"properties": - {"subnet": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e"}}, + {"subnet": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e"}}, "name": "MyIpConfig"}]}}' headers: Accept: @@ -335,34 +335,34 @@ interactions: - application/json; charset=utf-8 User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pynicb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ - ,\r\n \"etag\": \"W/\\\"d2a4bce1-93be-44bb-a3c7-4c7d2290d275\\\"\",\r\n \ + string: "{\r\n \"name\": \"pynicb046129e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ + ,\r\n \"etag\": \"W/\\\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"00bb374c-abf8-4a6a-b3b9-e27dda5dbfce\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"fe1dbcae-6e61-446d-8a60-934d6633b35b\"\ ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\": \"MyIpConfig\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ - ,\r\n \"etag\": \"W/\\\"d2a4bce1-93be-44bb-a3c7-4c7d2290d275\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ + ,\r\n \"etag\": \"W/\\\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\"\ - : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ + : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ \r\n },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\"\ : \"IPv4\"\r\n }\r\n }\r\n ],\r\n \"dnsSettings\": {\r\n\ \ \"dnsServers\": [],\r\n \"appliedDnsServers\": [],\r\n \"\ - internalDomainNameSuffix\": \"4eijd5xzeliuto3bnnijv50ddc.dx.internal.cloudapp.net\"\ + internalDomainNameSuffix\": \"x4henm4vuofuphji0uiipf1zue.dx.internal.cloudapp.net\"\ \r\n },\r\n \"enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\"\ : false,\r\n \"hostedWorkloads\": [],\r\n \"tapConfigurations\": []\r\ \n },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/7592cd92-55dd-40a0-92a0-7246a11dac2e?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b2933957-27a5-4a64-b902-03474811a725?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -370,7 +370,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:03:24 GMT + - Tue, 22 Oct 2019 06:08:20 GMT expires: - '-1' pragma: @@ -383,7 +383,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 799e99dc-cfcb-4040-93d6-bf9b24f39af9 + - 702c36e9-049b-46ee-adc8-742bb82a3499 x-ms-ratelimit-remaining-subscription-writes: - '1197' status: @@ -400,9 +400,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/7592cd92-55dd-40a0-92a0-7246a11dac2e?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b2933957-27a5-4a64-b902-03474811a725?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -414,7 +414,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:03:56 GMT + - Tue, 22 Oct 2019 06:08:52 GMT expires: - '-1' pragma: @@ -431,7 +431,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - b14eb5e3-1075-4f4c-a4d1-947f6e259032 + - 4b4a884c-38f4-4f5f-bb9a-ae4e1a1ac391 status: code: 200 message: OK @@ -446,26 +446,26 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pynicb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ - ,\r\n \"etag\": \"W/\\\"d2a4bce1-93be-44bb-a3c7-4c7d2290d275\\\"\",\r\n \ + string: "{\r\n \"name\": \"pynicb046129e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ + ,\r\n \"etag\": \"W/\\\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"00bb374c-abf8-4a6a-b3b9-e27dda5dbfce\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"fe1dbcae-6e61-446d-8a60-934d6633b35b\"\ ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\": \"MyIpConfig\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ - ,\r\n \"etag\": \"W/\\\"d2a4bce1-93be-44bb-a3c7-4c7d2290d275\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ + ,\r\n \"etag\": \"W/\\\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\"\ - : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ + : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ \r\n },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\"\ : \"IPv4\"\r\n }\r\n }\r\n ],\r\n \"dnsSettings\": {\r\n\ \ \"dnsServers\": [],\r\n \"appliedDnsServers\": [],\r\n \"\ - internalDomainNameSuffix\": \"4eijd5xzeliuto3bnnijv50ddc.dx.internal.cloudapp.net\"\ + internalDomainNameSuffix\": \"x4henm4vuofuphji0uiipf1zue.dx.internal.cloudapp.net\"\ \r\n },\r\n \"enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\"\ : false,\r\n \"hostedWorkloads\": [],\r\n \"tapConfigurations\": []\r\ \n },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}" @@ -477,9 +477,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:03:56 GMT + - Tue, 22 Oct 2019 06:08:52 GMT etag: - - W/"d2a4bce1-93be-44bb-a3c7-4c7d2290d275" + - W/"f1b95c75-0354-41ba-83ed-81ee0999c6ca" expires: - '-1' pragma: @@ -496,7 +496,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - d15de271-b9d9-41a4-8cfe-29b62adc8f8d + - 131a9a52-c1eb-4877-9246-4c0178af45fa status: code: 200 message: OK @@ -511,28 +511,28 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pynicb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ - ,\r\n \"etag\": \"W/\\\"d2a4bce1-93be-44bb-a3c7-4c7d2290d275\\\"\",\r\n \ + string: "{\r\n \"name\": \"pynicb046129e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ + ,\r\n \"etag\": \"W/\\\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"00bb374c-abf8-4a6a-b3b9-e27dda5dbfce\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"fe1dbcae-6e61-446d-8a60-934d6633b35b\"\ ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\": \"MyIpConfig\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ - ,\r\n \"etag\": \"W/\\\"d2a4bce1-93be-44bb-a3c7-4c7d2290d275\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ + ,\r\n \"etag\": \"W/\\\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\"\ - : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ + : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ \r\n },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\"\ : \"IPv4\"\r\n }\r\n }\r\n ],\r\n \"dnsSettings\": {\r\n\ \ \"dnsServers\": [],\r\n \"appliedDnsServers\": [],\r\n \"\ - internalDomainNameSuffix\": \"4eijd5xzeliuto3bnnijv50ddc.dx.internal.cloudapp.net\"\ + internalDomainNameSuffix\": \"x4henm4vuofuphji0uiipf1zue.dx.internal.cloudapp.net\"\ \r\n },\r\n \"enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\"\ : false,\r\n \"hostedWorkloads\": [],\r\n \"tapConfigurations\": []\r\ \n },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}" @@ -544,9 +544,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:03:57 GMT + - Tue, 22 Oct 2019 06:08:53 GMT etag: - - W/"d2a4bce1-93be-44bb-a3c7-4c7d2290d275" + - W/"f1b95c75-0354-41ba-83ed-81ee0999c6ca" expires: - '-1' pragma: @@ -563,7 +563,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 1fde1245-cdc4-4929-bef9-c33324bc780e + - 741bd3a9-d5d2-4e02-b866-70bea4eb4d2b status: code: 200 message: OK @@ -578,31 +578,31 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pynicb046129e\",\r\ - \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ - ,\r\n \"etag\": \"W/\\\"d2a4bce1-93be-44bb-a3c7-4c7d2290d275\\\"\",\r\ + \n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ + ,\r\n \"etag\": \"W/\\\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\\\"\",\r\ \n \"location\": \"westus\",\r\n \"properties\": {\r\n \"\ - provisioningState\": \"Succeeded\",\r\n \"resourceGuid\": \"00bb374c-abf8-4a6a-b3b9-e27dda5dbfce\"\ + provisioningState\": \"Succeeded\",\r\n \"resourceGuid\": \"fe1dbcae-6e61-446d-8a60-934d6633b35b\"\ ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\"\ - : \"MyIpConfig\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ - ,\r\n \"etag\": \"W/\\\"d2a4bce1-93be-44bb-a3c7-4c7d2290d275\\\"\ + : \"MyIpConfig\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ + ,\r\n \"etag\": \"W/\\\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\\\"\ \",\r\n \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n\ \ \"privateIPAllocationMethod\": \"Dynamic\",\r\n \ - \ \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ + \ \"subnet\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ \r\n },\r\n \"primary\": true,\r\n \ \ \"privateIPAddressVersion\": \"IPv4\"\r\n }\r\n }\r\n\ \ ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\ \n \"appliedDnsServers\": [],\r\n \"internalDomainNameSuffix\"\ - : \"4eijd5xzeliuto3bnnijv50ddc.dx.internal.cloudapp.net\"\r\n },\r\n\ + : \"x4henm4vuofuphji0uiipf1zue.dx.internal.cloudapp.net\"\r\n },\r\n\ \ \"enableAcceleratedNetworking\": false,\r\n \"enableIPForwarding\"\ : false,\r\n \"hostedWorkloads\": [],\r\n \"tapConfigurations\"\ : []\r\n },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\ @@ -615,7 +615,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:03:57 GMT + - Tue, 22 Oct 2019 06:08:54 GMT expires: - '-1' pragma: @@ -632,7 +632,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - c96f6738-3bc9-4043-a576-9e9bd1f70ec3 + - a8fe4cb3-6944-4f5c-bff3-dd98888bbf17 status: code: 200 message: OK @@ -647,23 +647,23 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/networkInterfaces?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/networkInterfaces?api-version=2019-09-01 response: body: - string: '{"value":[{"name":"vm-nameVMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Network/networkInterfaces/vm-nameVMNic","etag":"W/\"e76189ef-ac83-4c8a-bce7-aed748b2b14c\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"bf51bfd0-5bcd-4a46-852f-3bb2c46cd96c","ipConfigurations":[{"name":"ipconfigvm-name","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Network/networkInterfaces/vm-nameVMNic/ipConfigurations/ipconfigvm-name","etag":"W/\"e76189ef-ac83-4c8a-bce7-aed748b2b14c\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Network/publicIPAddresses/vm-namePublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Network/virtualNetworks/vm-nameVNET/subnets/vm-nameSubnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"isniguey51juxpdlw4pnzfzfje.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-30-59-68","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Network/networkSecurityGroups/vm-nameNSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Compute/virtualMachines/vm-name"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"cli-test-vmmwqr6rnm5pcjxgkxja5VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Network/networkInterfaces/cli-test-vmmwqr6rnm5pcjxgkxja5VMNic","etag":"W/\"1e0bef57-15e9-4f5a-a062-1aefd5f91c89\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"04633bfa-a07c-47b4-b4ce-75c1871fbc08","ipConfigurations":[{"name":"ipconfigcli-test-vmmwqr6rnm5pcjxgkxja5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Network/networkInterfaces/cli-test-vmmwqr6rnm5pcjxgkxja5VMNic/ipConfigurations/ipconfigcli-test-vmmwqr6rnm5pcjxgkxja5","etag":"W/\"1e0bef57-15e9-4f5a-a062-1aefd5f91c89\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Network/publicIPAddresses/cli-test-vmmwqr6rnm5pcjxgkxja5PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Network/virtualNetworks/cli-test-vmmwqr6rnm5pcjxgkxja5VNET/subnets/cli-test-vmmwqr6rnm5pcjxgkxja5Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"qnngllua2jbuxjjiphv0gywxod.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-36-E0-14","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Network/networkSecurityGroups/cli-test-vmmwqr6rnm5pcjxgkxja5NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Compute/virtualMachines/cli-test-vmmwqr6rnm5pcjxgkxja5"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"vm1VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkInterfaces/vm1VMNic","etag":"W/\"03822a9b-2193-4378-a290-289a270d67ac\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"c02e8a22-1968-4e3f-97f5-cd227090d24b","ipConfigurations":[{"name":"ipconfigvm1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkInterfaces/vm1VMNic/ipConfigurations/ipconfigvm1","etag":"W/\"03822a9b-2193-4378-a290-289a270d67ac\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/publicIPAddresses/vm1PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/virtualNetworks/vm1VNET/subnets/vm1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"ksvgtmrdltie5pcfbplyhah0uf.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-30-1A-07","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkSecurityGroups/vm1NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Compute/virtualMachines/vm1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"vm2VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkInterfaces/vm2VMNic","etag":"W/\"d6dcacce-c022-477e-8ee6-cb3c29b48d64\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f45543f0-687b-4ff1-950c-9332d7bc7306","ipConfigurations":[{"name":"ipconfigvm2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkInterfaces/vm2VMNic/ipConfigurations/ipconfigvm2","etag":"W/\"d6dcacce-c022-477e-8ee6-cb3c29b48d64\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/publicIPAddresses/vm2PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/virtualNetworks/vm1VNET/subnets/vm1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"ksvgtmrdltie5pcfbplyhah0uf.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-30-18-6E","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkSecurityGroups/vm2NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Compute/virtualMachines/vm2"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"fromimage1VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/fromimage1VMNic","etag":"W/\"aaad8970-c25e-4003-85f8-0e24e895f95d\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"1415f85d-9646-4de8-a84f-8a39321eb1b0","ipConfigurations":[{"name":"ipconfigfromimage1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/fromimage1VMNic/ipConfigurations/ipconfigfromimage1","etag":"W/\"aaad8970-c25e-4003-85f8-0e24e895f95d\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.6","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/publicIPAddresses/fromimage1PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/virtualNetworks/vm-unmanaged-diskVNET/subnets/vm-unmanaged-diskSubnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"oazx2t55wjye1izslryv3q2dzc.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-3B-E2-7D","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/fromimage1NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Compute/virtualMachines/fromimage1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"fromimage2VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/fromimage2VMNic","etag":"W/\"49a49187-e3d0-439c-b0ca-ae5c8c51dd22\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"34193041-7c3c-4854-930a-fd5603d7bcb2","ipConfigurations":[{"name":"ipconfigfromimage2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/fromimage2VMNic/ipConfigurations/ipconfigfromimage2","etag":"W/\"49a49187-e3d0-439c-b0ca-ae5c8c51dd22\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.8","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/publicIPAddresses/fromimage2PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/virtualNetworks/vm-unmanaged-diskVNET/subnets/vm-unmanaged-diskSubnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"oazx2t55wjye1izslryv3q2dzc.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-59-12-66","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/fromimage2NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Compute/virtualMachines/fromimage2"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"vm-managed-diskVMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/vm-managed-diskVMNic","etag":"W/\"605bd301-1c35-4371-9523-ca9e45158d95\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"93d07112-a172-4b3a-9bc1-f67ddfc941e4","ipConfigurations":[{"name":"ipconfigvm-managed-disk","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/vm-managed-diskVMNic/ipConfigurations/ipconfigvm-managed-disk","etag":"W/\"605bd301-1c35-4371-9523-ca9e45158d95\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/publicIPAddresses/vm-managed-diskPublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/virtualNetworks/vm-unmanaged-diskVNET/subnets/vm-unmanaged-diskSubnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-3A-EA-BD","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm-managed-diskNSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Compute/virtualMachines/vm-managed-disk"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"vm-unmanaged-diskVMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/vm-unmanaged-diskVMNic","etag":"W/\"84c4c10f-e4b2-4535-89bb-fe80d37c7e46\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0d182243-fcc2-4d33-b751-37f8f16f24cb","ipConfigurations":[{"name":"ipconfigvm-unmanaged-disk","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/vm-unmanaged-diskVMNic/ipConfigurations/ipconfigvm-unmanaged-disk","etag":"W/\"84c4c10f-e4b2-4535-89bb-fe80d37c7e46\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/publicIPAddresses/vm-unmanaged-diskPublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/virtualNetworks/vm-unmanaged-diskVNET/subnets/vm-unmanaged-diskSubnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-59-58-02","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm-unmanaged-diskNSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Compute/virtualMachines/vm-unmanaged-disk"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"vm3VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/vm3VMNic","etag":"W/\"c6032e23-2eee-4453-a094-c51bac6c10ef\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"939a2ec5-a9e2-4827-bec3-4df680346c15","ipConfigurations":[{"name":"ipconfigvm3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/vm3VMNic/ipConfigurations/ipconfigvm3","etag":"W/\"c6032e23-2eee-4453-a094-c51bac6c10ef\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.10","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/publicIPAddresses/vm3PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/virtualNetworks/vm-unmanaged-diskVNET/subnets/vm-unmanaged-diskSubnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"oazx2t55wjye1izslryv3q2dzc.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-3B-E9-43","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm3NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Compute/virtualMachines/vm3"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"fengubuntu523","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/fengubuntu523","etag":"W/\"328305d3-2c4c-4c78-bc7c-8daebaa07c19\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"f18ad2bf-5872-43f1-861e-68aed88583fb","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/fengubuntu523/ipConfigurations/ipconfig1","etag":"W/\"328305d3-2c4c-4c78-bc7c-8daebaa07c19\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.6.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/fengubuntuip681"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/fengtest-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-59-25-EC","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Compute/virtualMachines/fengubuntu"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"fengubuntu763","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/fengubuntu763","etag":"W/\"3c26d867-53ee-4411-9ab6-e3b53f9c2aba\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"b6bfde32-e1df-4a31-b346-8f9758c092b5","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/fengubuntu763/ipConfigurations/ipconfig1","etag":"W/\"3c26d867-53ee-4411-9ab6-e3b53f9c2aba\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.6.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/fengubuntu-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/fengtest-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"aVMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic","etag":"W/\"1391908c-f1ad-4953-9909-319d4ddc92fa\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"ad720304-2c44-4706-95c8-19b21f162f79","ipConfigurations":[{"name":"ipconfiga","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic/ipConfigurations/ipconfiga","etag":"W/\"1391908c-f1ad-4953-9909-319d4ddc92fa\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/aPublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/virtualNetworks/start-1VNET/subnets/start-1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"cd5godij43kejjlr0tcsqbsckh.dx.internal.cloudapp.net"},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"start-1VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic","etag":"W/\"96af507e-fe39-4541-a295-1aa3e95863e6\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a4bf8a33-2737-46b6-91fc-e7b335c8f957","ipConfigurations":[{"name":"ipconfigstart-1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic/ipConfigurations/ipconfigstart-1","etag":"W/\"96af507e-fe39-4541-a295-1aa3e95863e6\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/start-1PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/virtualNetworks/start-1VNET/subnets/start-1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-36-17-80","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Compute/virtualMachines/start-1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"pynicb046129e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e","etag":"W/\"d2a4bce1-93be-44bb-a3c7-4c7d2290d275\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"00bb374c-abf8-4a6a-b3b9-e27dda5dbfce","ipConfigurations":[{"name":"MyIpConfig","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig","etag":"W/\"d2a4bce1-93be-44bb-a3c7-4c7d2290d275\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"4eijd5xzeliuto3bnnijv50ddc.dx.internal.cloudapp.net"},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"workspacetestvmVMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/networkInterfaces/workspacetestvmVMNic","etag":"W/\"97f9e2f3-cbe2-4948-b8fe-2a6e45de9438\"","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"c4641c05-2fe7-4076-af68-7ef8a2116f45","ipConfigurations":[{"name":"ipconfigworkspacetestvm","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/networkInterfaces/workspacetestvmVMNic/ipConfigurations/ipconfigworkspacetestvm","etag":"W/\"97f9e2f3-cbe2-4948-b8fe-2a6e45de9438\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/publicIPAddresses/workspacetestvmPublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/virtualNetworks/workspacetestvmVNET/subnets/workspacetestvmSubnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"0bfuyojwfi5e3hfsbgplsfgaca.bx.internal.cloudapp.net"},"macAddress":"00-0D-3A-4F-B7-0E","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/networkSecurityGroups/workspacetestvmNSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Compute/virtualMachines/workspacetestvm"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"ubuntuVMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkInterfaces/ubuntuVMNic","etag":"W/\"b5b541dc-fb45-43a6-8070-fd7ec4ec119b\"","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"1856a234-73d3-40c3-90c8-4f2966297b85","ipConfigurations":[{"name":"ipconfigubuntu","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkInterfaces/ubuntuVMNic/ipConfigurations/ipconfigubuntu","etag":"W/\"b5b541dc-fb45-43a6-8070-fd7ec4ec119b\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/publicIPAddresses/ubuntuPublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/virtualNetworks/vmss1VNET/subnets/vmss1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"wmlvzbqlqobetfqsp22v2fndqh.bx.internal.cloudapp.net"},"macAddress":"00-0D-3A-17-3C-1C","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/ubuntuNSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachines/ubuntu"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"vm1VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkInterfaces/vm1VMNic","etag":"W/\"34554e2b-a3a5-47ed-b224-23c9a6a17f50\"","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"971f0b70-4f04-485b-a43c-3a0f681a93f0","ipConfigurations":[{"name":"ipconfigvm1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkInterfaces/vm1VMNic/ipConfigurations/ipconfigvm1","etag":"W/\"34554e2b-a3a5-47ed-b224-23c9a6a17f50\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/publicIPAddresses/vm1PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/virtualNetworks/vmss1VNET/subnets/vmss1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"wmlvzbqlqobetfqsp22v2fndqh.bx.internal.cloudapp.net"},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/vm1NSG"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhlinux359","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359","etag":"W/\"1231ec84-ffcf-452c-8cf7-ea0bfa4338c1\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"f9b28136-8dab-423d-9091-33210eccc288","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359/ipConfigurations/ipconfig1","etag":"W/\"1231ec84-ffcf-452c-8cf7-ea0bfa4338c1\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.4.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhlinux-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/storagerule/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"tz4zcgygejzedk5dtuntfbct0h.bx.internal.cloudapp.net"},"macAddress":"00-0D-3A-54-09-6E","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Compute/virtualMachines/zuhlinux"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhtestvm638","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638","etag":"W/\"2b832c08-2053-4d73-ae66-ce39d6766430\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"e6a3accb-1e48-4fb7-bb66-161f0d50e6c7","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638/ipConfigurations/ipconfig1","etag":"W/\"2b832c08-2053-4d73-ae66-ce39d6766430\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.4.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhtestvm-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/storagerule/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-10-D9-B3","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Compute/virtualMachines/zuhtestvm"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhubuntu26","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26","etag":"W/\"fbd94511-2e10-4fef-84ed-29e2b2a8ac86\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"81443a59-3f65-4a92-90c6-9e3f05e48f7c","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26/ipConfigurations/ipconfig1","etag":"W/\"fbd94511-2e10-4fef-84ed-29e2b2a8ac86\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhUbuntu-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuh-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-55-26-74","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"vm22523","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523","etag":"W/\"f1af1f02-b85a-45bc-8afc-e68a00741aaf\"","location":"eastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"a3258816-793d-4b67-917f-ecd46735d922","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523/ipConfigurations/ipconfig1","etag":"W/\"f1af1f02-b85a-45bc-8afc-e68a00741aaf\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.4.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/publicIPAddresses/vm22-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1vnet623/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-85-12-9D","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Compute/virtualMachines/vm22"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"acrtest-vm1VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm1VMNic","etag":"W/\"a28bc2d9-04e5-444e-9e5d-6b2272344798\"","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"94cc88f5-3c6e-468c-afe6-d49c0c10b50b","ipConfigurations":[{"name":"ipconfigacrtest-vm1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm1VMNic/ipConfigurations/ipconfigacrtest-vm1","etag":"W/\"a28bc2d9-04e5-444e-9e5d-6b2272344798\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/publicIPAddresses/acrtest-vm1PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/virtualNetworks/acrtest-vm1VNET/subnets/acrtest-vm1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"51ygxivhd1be3pwfg4ifrifzqa.ix.internal.cloudapp.net"},"macAddress":"00-0D-3A-08-F2-7B","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm1NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Compute/virtualMachines/acrtest-vm1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"acrtest-vm2VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm2VMNic","etag":"W/\"3a6beeb1-7ee2-484f-b2c6-4a75b4519539\"","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f73ff7d6-74e8-4710-9a12-176219825245","ipConfigurations":[{"name":"ipconfigacrtest-vm2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm2VMNic/ipConfigurations/ipconfigacrtest-vm2","etag":"W/\"3a6beeb1-7ee2-484f-b2c6-4a75b4519539\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.3.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/publicIPAddresses/acrtest-vm2PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/virtualNetworks/acrtest-vm1vnet/subnets/arctets-vm1subnet2"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"51ygxivhd1be3pwfg4ifrifzqa.ix.internal.cloudapp.net"},"macAddress":"00-0D-3A-08-7A-4E","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm2NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Compute/virtualMachines/acrtest-vm2"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"acrtest-vm3VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm3VMNic","etag":"W/\"0ca15e6b-f452-4024-9529-b1cddf61785d\"","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"db067f87-858a-471f-a7f0-04523b8e28a6","ipConfigurations":[{"name":"ipconfigacrtest-vm3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm3VMNic/ipConfigurations/ipconfigacrtest-vm3","etag":"W/\"0ca15e6b-f452-4024-9529-b1cddf61785d\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.3.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/publicIPAddresses/acrtest-vm3PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/virtualNetworks/acrtest-vm1VNET/subnets/arctets-vm1subnet2"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"51ygxivhd1be3pwfg4ifrifzqa.ix.internal.cloudapp.net"},"macAddress":"00-0D-3A-A3-74-B5","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm3NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Compute/virtualMachines/acrtest-vm3"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"acrtest-vm4VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm4VMNic","etag":"W/\"64b50697-cb0a-4b88-ae2e-eae25fe2e76a\"","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"7eb6dc46-19fb-4ae7-af48-388367496ec6","ipConfigurations":[{"name":"ipconfigacrtest-vm4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm4VMNic/ipConfigurations/ipconfigacrtest-vm4","etag":"W/\"64b50697-cb0a-4b88-ae2e-eae25fe2e76a\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.3.6","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/publicIPAddresses/acrtest-vm4PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/virtualNetworks/acrtest-vm1VNET/subnets/arctets-vm1subnet2"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"51ygxivhd1be3pwfg4ifrifzqa.ix.internal.cloudapp.net"},"macAddress":"00-0D-3A-08-01-D4","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm4NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Compute/virtualMachines/acrtest-vm4"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"helm-1VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Network/networkInterfaces/helm-1VMNic","etag":"W/\"45e90737-ce35-440c-a731-3e8c905282d1\"","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"5db3f8bf-c085-4d87-9fd7-5645149ecd79","ipConfigurations":[{"name":"ipconfighelm-1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Network/networkInterfaces/helm-1VMNic/ipConfigurations/ipconfighelm-1","etag":"W/\"45e90737-ce35-440c-a731-3e8c905282d1\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Network/publicIPAddresses/helm-1PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Network/virtualNetworks/helm-1VNET/subnets/helm-1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"ujmw4eyuq55edluhwbamqzywwc.ix.internal.cloudapp.net"},"macAddress":"00-0D-3A-A3-6A-EF","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Network/networkSecurityGroups/helm-1NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Compute/virtualMachines/helm-1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"jlvmwin1184","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184","etag":"W/\"4956cf64-1c70-455b-901b-0dff5cc9c013\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9f67d029-e4a2-4011-a328-6fc7b3bad722","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184/ipConfigurations/ipconfig1","etag":"W/\"4956cf64-1c70-455b-901b-0dff5cc9c013\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.5.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/publicIPAddresses/jlvmwin1-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/virtualNetworks/jlwvmrg-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-08-79-79","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Compute/virtualMachines/jlvmwin1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"yugangw-vm1VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw-vm1VMNic","etag":"W/\"7ed2155b-9ea7-4176-befc-277615b3bfa4\"","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"1f70ad5c-0ecb-46ed-836c-bb0a8797bb0a","ipConfigurations":[{"name":"ipconfigyugangw-vm1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw-vm1VMNic/ipConfigurations/ipconfigyugangw-vm1","etag":"W/\"7ed2155b-9ea7-4176-befc-277615b3bfa4\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/publicIPAddresses/yugangw-vm1PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/virtualNetworks/yugangw-vm1VNET/subnets/yugangw-vm1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-A2-04-2D","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw-vm1NSG"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhwin154","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154","etag":"W/\"79c969e0-afe1-421c-a30e-20ef3c57eee1\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9bd34bc5-6f44-4e98-89bd-ea08f8095294","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154/ipConfigurations/ipconfig1","etag":"W/\"79c969e0-afe1-421c-a30e-20ef3c57eee1\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.1.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhWin-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet584/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-A2-9B-01","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Compute/virtualMachines/zuhWin"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"monitorVmVMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkInterfaces/monitorVmVMNic","etag":"W/\"5b62d30f-7673-4805-abe3-466a32568895\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"8d2dc543-ad57-44ad-b1fd-f2299bde4fc6","ipConfigurations":[{"name":"ipconfigmonitorVm","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkInterfaces/monitorVmVMNic/ipConfigurations/ipconfigmonitorVm","etag":"W/\"5b62d30f-7673-4805-abe3-466a32568895\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/publicIPAddresses/monitorVmPublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/virtualNetworks/monitor_vmVNET/subnets/monitor_vmSubnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"4fhvqi2mm3me1jxq1dnn3vcs5f.gx.internal.cloudapp.net"},"macAddress":"00-0D-3A-91-D3-A4","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkSecurityGroups/monitorVmNSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Compute/virtualMachines/monitorVm"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"monitor_vmVMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkInterfaces/monitor_vmVMNic","etag":"W/\"8f4987aa-57dd-4d46-9800-7e25d316699d\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"8e55ce1d-1a81-435e-8a98-f8ed5e08e92e","ipConfigurations":[{"name":"ipconfigmonitor_vm","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkInterfaces/monitor_vmVMNic/ipConfigurations/ipconfigmonitor_vm","etag":"W/\"8f4987aa-57dd-4d46-9800-7e25d316699d\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/publicIPAddresses/monitor_vmPublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/virtualNetworks/monitor_vmVNET/subnets/monitor_vmSubnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"4fhvqi2mm3me1jxq1dnn3vcs5f.gx.internal.cloudapp.net"},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkSecurityGroups/monitor_vmNSG"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"lks1.nic.7f9003f5-5e86-42b9-9979-80a9797cf484","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/lks1.nic.7f9003f5-5e86-42b9-9979-80a9797cf484","etag":"W/\"e003152b-5900-4cec-b700-e07f88af632d\"","properties":{"provisioningState":"Succeeded","resourceGuid":"b6a42b0e-dd0e-47f2-bd46-5e345ca749fc","ipConfigurations":[{"name":"lks1_ipconfig_0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/lks1.nic.7f9003f5-5e86-42b9-9979-80a9797cf484/ipConfigurations/lks1_ipconfig_0","etag":"W/\"e003152b-5900-4cec-b700-e07f88af632d\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"qoy2lv2czybuhevorvq0mrpqrc.gx.internal.cloudapp.net"},"macAddress":"","enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[],"privateLinkService":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/privateLinkServices/lks1"}},"type":"Microsoft.Network/networkInterfaces"},{"name":"pe1.nic.42302fcd-0ffa-4e8d-8094-9f06c8639a3e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/pe1.nic.42302fcd-0ffa-4e8d-8094-9f06c8639a3e","etag":"W/\"3b8ae29d-153d-4dcd-9a17-d846b50a8121\"","properties":{"provisioningState":"Succeeded","resourceGuid":"c2ada8e6-a192-4d0c-a07d-452a851fe03f","ipConfigurations":[{"name":"privateEndpointIpConfig","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/pe1.nic.42302fcd-0ffa-4e8d-8094-9f06c8639a3e/ipConfigurations/privateEndpointIpConfig","etag":"W/\"3b8ae29d-153d-4dcd-9a17-d846b50a8121\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.2.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet2"},"primary":true,"privateIPAddressVersion":"IPv4","privateLinkConnectionProperties":{"groupId":"","requiredMemberName":"","fqdns":[]}}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"qoy2lv2czybuhevorvq0mrpqrc.gx.internal.cloudapp.net"},"macAddress":"","enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[],"privateEndpoint":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/privateEndpoints/pe1"}},"type":"Microsoft.Network/networkInterfaces"},{"name":"lks1.nic.65156728-e757-4204-9c0e-c3abd60fa974","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpoints5g6w2vswk3ajqexqwta4in3ictwrqwgvneqw3hbnp/providers/Microsoft.Network/networkInterfaces/lks1.nic.65156728-e757-4204-9c0e-c3abd60fa974","etag":"W/\"0f36e17d-77bb-4cbe-848b-3fc65c9cf921\"","properties":{"provisioningState":"Succeeded","resourceGuid":"a1874aa2-add3-4f3b-8af8-9727a37574fd","ipConfigurations":[{"name":"lks1_ipconfig_0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpoints5g6w2vswk3ajqexqwta4in3ictwrqwgvneqw3hbnp/providers/Microsoft.Network/networkInterfaces/lks1.nic.65156728-e757-4204-9c0e-c3abd60fa974/ipConfigurations/lks1_ipconfig_0","etag":"W/\"0f36e17d-77bb-4cbe-848b-3fc65c9cf921\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpoints5g6w2vswk3ajqexqwta4in3ictwrqwgvneqw3hbnp/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"ffyoygas1pfednmfan2yw1p5ed.gx.internal.cloudapp.net"},"macAddress":"","enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[],"privateLinkService":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpoints5g6w2vswk3ajqexqwta4in3ictwrqwgvneqw3hbnp/providers/Microsoft.Network/privateLinkServices/lks1"}},"type":"Microsoft.Network/networkInterfaces"},{"name":"lks1.nic.e277358c-ae81-4320-a600-be2f5fb9f560","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/networkInterfaces/lks1.nic.e277358c-ae81-4320-a600-be2f5fb9f560","etag":"W/\"274884cd-63b9-475d-9b40-a96541974314\"","properties":{"provisioningState":"Succeeded","resourceGuid":"02e93bc6-152c-4de0-8658-84023b366bc2","ipConfigurations":[{"name":"lks1_ipconfig_0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/networkInterfaces/lks1.nic.e277358c-ae81-4320-a600-be2f5fb9f560/ipConfigurations/lks1_ipconfig_0","etag":"W/\"274884cd-63b9-475d-9b40-a96541974314\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"mj1joqilki1ergis05rt2xf4vb.gx.internal.cloudapp.net"},"macAddress":"","enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[],"privateLinkService":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/privateLinkServices/lks1"}},"type":"Microsoft.Network/networkInterfaces"},{"name":"pe1.nic.44995400-c039-4ef7-b5cd-9fcf4f8e4403","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/networkInterfaces/pe1.nic.44995400-c039-4ef7-b5cd-9fcf4f8e4403","etag":"W/\"a955ca2e-90fe-44fe-95c3-edd3280f4a8d\"","properties":{"provisioningState":"Succeeded","resourceGuid":"72552cb0-6632-4dba-b571-b20a4ca58f0c","ipConfigurations":[{"name":"privateEndpointIpConfig","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/networkInterfaces/pe1.nic.44995400-c039-4ef7-b5cd-9fcf4f8e4403/ipConfigurations/privateEndpointIpConfig","etag":"W/\"a955ca2e-90fe-44fe-95c3-edd3280f4a8d\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.2.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet2"},"primary":true,"privateIPAddressVersion":"IPv4","privateLinkConnectionProperties":{"groupId":"","requiredMemberName":"","fqdns":[]}}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"mj1joqilki1ergis05rt2xf4vb.gx.internal.cloudapp.net"},"macAddress":"","enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[],"privateEndpoint":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/privateEndpoints/pe1"}},"type":"Microsoft.Network/networkInterfaces"},{"name":"sdfsdfsdf.nic.483f3d12-3ba8-4789-92dd-b7ed9c4d43db","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/networkInterfaces/sdfsdfsdf.nic.483f3d12-3ba8-4789-92dd-b7ed9c4d43db","etag":"W/\"3bbee30b-95f7-405e-8381-1d9abf9b4c0a\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"724714f7-43b7-4ffc-998f-9c65823ba090","ipConfigurations":[{"name":"sdfsdfsdf_ipconfig_0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/networkInterfaces/sdfsdfsdf.nic.483f3d12-3ba8-4789-92dd-b7ed9c4d43db/ipConfigurations/sdfsdfsdf_ipconfig_0","etag":"W/\"3bbee30b-95f7-405e-8381-1d9abf9b4c0a\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.1.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"xqkjibutxwqupf1ofzivpcrmoc.gx.internal.cloudapp.net"},"macAddress":"","enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[],"privateLinkService":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/privateLinkServices/sdfsdfsdf"}},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhcentos285","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285","etag":"W/\"624add92-0972-43f9-acc0-940c129b40c2\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"68322b51-ca64-42a4-9320-d0c1e79be92b","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285/ipConfigurations/ipconfig1","etag":"W/\"624add92-0972-43f9-acc0-940c129b40c2\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.3.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhCentOSip151"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet370/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-92-AF-02","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhwindows2016246","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246","etag":"W/\"0fccc225-356c-4ac3-9b19-3655145b924c\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"889673be-6ac0-44ce-b815-9b68d2bc8268","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246/ipConfigurations/ipconfig1","etag":"W/\"0fccc225-356c-4ac3-9b19-3655145b924c\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.3.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhWindows2016-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet370/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-96-A2-2A","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"fooziipy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98","etag":"W/\"8d14e003-dc6f-4ea2-b58e-5af4cb19f8d1\"","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"eb3d07ad-0fb9-4c18-8754-cd996f1d6553","ipConfigurations":[{"name":"fooziipy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98/ipConfigurations/fooziipy98","etag":"W/\"8d14e003-dc6f-4ea2-b58e-5af4cb19f8d1\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"192.168.1.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/publicIPAddresses/fooziipy98"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/virtualNetworks/fooziipy98/subnets/fooziipy98"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-02-48-1D","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Compute/virtualMachines/fooziipy98"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"fooziipy99","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99","etag":"W/\"c20678a2-9c37-41d3-9fdb-d4a014a85d0d\"","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"0b41838c-3baa-45aa-bfc1-7bfdfefed133","ipConfigurations":[{"name":"fooziipy99","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99/ipConfigurations/fooziipy99","etag":"W/\"c20678a2-9c37-41d3-9fdb-d4a014a85d0d\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"192.168.1.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/publicIPAddresses/fooziipy99"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/virtualNetworks/fooziipy99/subnets/fooziipy99"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-02-C5-15","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Compute/virtualMachines/fooziipy99"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"anf-sdk-vnet-nic-VLB5RZ","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/networkInterfaces/anf-sdk-vnet-nic-VLB5RZ","etag":"W/\"a4268957-31af-497a-8856-8d01bdafff95\"","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"22a0f747-010a-4888-a399-437e428797e3","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/networkInterfaces/anf-sdk-vnet-nic-VLB5RZ/ipConfigurations/ipconfig1","etag":"W/\"a4268957-31af-497a-8856-8d01bdafff95\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.6.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/virtualNetworks/sdk-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"mouto3xzohwuvec1rqhuv1kfxb.xx.internal.cloudapp.net"},"macAddress":"","enableAcceleratedNetworking":false,"enableIPForwarding":false,"linkedResourceType":"Microsoft.Netapp/volumes","primary":true,"hostedWorkloads":["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.NetApp/netAppAccounts/sdk-py-tests-acc-1/capacityPools/sdk-py-tests-pool-1/volumes/sdk-py-tests-vol-1"],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"}]}' + string: '{"value":[{"name":"feng-rhel-8VMNic","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-rhel-8VMNic","etag":"W/\"7a9698bd-fc73-4a94-b649-b13954f77c98\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"e3a7c6f4-6867-4bc1-ad6f-8bf9f4051ff8","ipConfigurations":[{"name":"ipconfigfeng-rhel-8","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-rhel-8VMNic/ipConfigurations/ipconfigfeng-rhel-8","etag":"W/\"7a9698bd-fc73-4a94-b649-b13954f77c98\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/feng-rhel-8PublicIP"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/feng_rhel_8VNET/subnets/feng_rhel_8Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-36-3C-A2","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Compute/virtualMachines/feng-rhel-8"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"feng_rhel_8VMNic","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng_rhel_8VMNic","etag":"W/\"8c7a1d3e-f54a-48e4-bf25-8f13b2176138\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a3c76119-0317-43f2-b8f5-73a7dbb8e9bd","ipConfigurations":[{"name":"ipconfigfeng_rhel_8","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng_rhel_8VMNic/ipConfigurations/ipconfigfeng_rhel_8","etag":"W/\"8c7a1d3e-f54a-48e4-bf25-8f13b2176138\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/feng_rhel_8PublicIP"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/feng_rhel_8VNET/subnets/feng_rhel_8Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"udqd5j0cpk2ujjmd4ykldlf42c.dx.internal.cloudapp.net"},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"vm-01543","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-01543","etag":"W/\"8e5d9aa9-8e65-47dd-81c1-d76e02da4c17\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"36c07bd9-5047-4484-a724-382fbaaeaccb","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-01543/ipConfigurations/ipconfig1","etag":"W/\"8e5d9aa9-8e65-47dd-81c1-d76e02da4c17\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.7.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/vm-01-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-01/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"44fdgqth3nnupiqwwb1vtts4ka.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-36-83-75","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Compute/virtualMachines/vm-01"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"vm-02540","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-02540","etag":"W/\"21993c34-b5d5-4f59-a454-9d029f2d380a\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"4a669b33-d2ec-465c-8968-8c6d68fcc0c5","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-02540/ipConfigurations/ipconfig1","etag":"W/\"21993c34-b5d5-4f59-a454-9d029f2d380a\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.7.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/vm-02-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-01/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"44fdgqth3nnupiqwwb1vtts4ka.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-30-70-22","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Compute/virtualMachines/vm-02"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"aVMNic","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic","etag":"W/\"1391908c-f1ad-4953-9909-319d4ddc92fa\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"ad720304-2c44-4706-95c8-19b21f162f79","ipConfigurations":[{"name":"ipconfiga","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic/ipConfigurations/ipconfiga","etag":"W/\"1391908c-f1ad-4953-9909-319d4ddc92fa\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/aPublicIP"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/virtualNetworks/start-1VNET/subnets/start-1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"cd5godij43kejjlr0tcsqbsckh.dx.internal.cloudapp.net"},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"start-1VMNic","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic","etag":"W/\"d273d36c-179c-4644-b606-8b6219c7f6a5\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a4bf8a33-2737-46b6-91fc-e7b335c8f957","ipConfigurations":[{"name":"ipconfigstart-1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic/ipConfigurations/ipconfigstart-1","etag":"W/\"d273d36c-179c-4644-b606-8b6219c7f6a5\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/start-1PublicIP"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/virtualNetworks/start-1VNET/subnets/start-1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-36-17-80","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Compute/virtualMachines/start-1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"pyvmextnic15a60f10","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10","etag":"W/\"f3e14d8d-009e-4a1c-9540-184aacb71166\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"24a1db82-87d6-4258-8281-db423e1d6a9e","ipConfigurations":[{"name":"pyarmconfig","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10/ipConfigurations/pyarmconfig","etag":"W/\"f3e14d8d-009e-4a1c-9540-184aacb71166\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10/subnets/pyvmextsub15a60f10"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"m45dve4iaz3uliden4mw3qsqod.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-3B-D3-41","enableAcceleratedNetworking":false,"enableIPForwarding":false,"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"pynicb046129e","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e","etag":"W/\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"fe1dbcae-6e61-446d-8a60-934d6633b35b","ipConfigurations":[{"name":"MyIpConfig","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig","etag":"W/\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"x4henm4vuofuphji0uiipf1zue.dx.internal.cloudapp.net"},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zimsvm64","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkInterfaces/zimsvm64","etag":"W/\"424fad23-e124-4cd4-99ac-08d4bc1922f0\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"12f5071f-0b35-4148-9ac0-7216d5d82553","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkInterfaces/zimsvm64/ipConfigurations/ipconfig1","etag":"W/\"424fad23-e124-4cd4-99ac-08d4bc1922f0\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.8.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/publicIPAddresses/zimsvm-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/virtualNetworks/zimsstuff-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"gruxbvaiqdyunp5kzbfi4wi4yd.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-36-78-C1","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Compute/virtualMachines/zimsvm"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhlinux359","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359","etag":"W/\"46ae9efb-f525-4c4e-a9be-c62c588d5f9b\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"f9b28136-8dab-423d-9091-33210eccc288","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359/ipConfigurations/ipconfig1","etag":"W/\"46ae9efb-f525-4c4e-a9be-c62c588d5f9b\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.4.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhlinux-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/storagerule/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"tz4zcgygejzedk5dtuntfbct0h.bx.internal.cloudapp.net"},"macAddress":"00-0D-3A-54-09-6E","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Compute/virtualMachines/zuhlinux"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhtestvm638","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638","etag":"W/\"f0b2b81c-fc36-4cc8-897a-c6ab8e7144a1\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"e6a3accb-1e48-4fb7-bb66-161f0d50e6c7","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638/ipConfigurations/ipconfig1","etag":"W/\"f0b2b81c-fc36-4cc8-897a-c6ab8e7144a1\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.4.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhtestvm-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/storagerule/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-10-D9-B3","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Compute/virtualMachines/zuhtestvm"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhubuntu26","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26","etag":"W/\"fbd94511-2e10-4fef-84ed-29e2b2a8ac86\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"81443a59-3f65-4a92-90c6-9e3f05e48f7c","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26/ipConfigurations/ipconfig1","etag":"W/\"fbd94511-2e10-4fef-84ed-29e2b2a8ac86\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhUbuntu-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuh-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-55-26-74","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"vm22523","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523","etag":"W/\"cb1a4fc0-7fab-437f-b5b6-2c1bdea2251c\"","location":"eastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"a3258816-793d-4b67-917f-ecd46735d922","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523/ipConfigurations/ipconfig1","etag":"W/\"cb1a4fc0-7fab-437f-b5b6-2c1bdea2251c\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.4.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/publicIPAddresses/vm22-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1vnet623/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-85-12-9D","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Compute/virtualMachines/vm22"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"feng-ubuntu388","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-ubuntu388","etag":"W/\"732cea5d-db2a-4564-9ed8-7f1d2d99a46e\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"c57553b2-64cf-4cf5-8f82-0d8e9f033192","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-ubuntu388/ipConfigurations/ipconfig1","etag":"W/\"732cea5d-db2a-4564-9ed8-7f1d2d99a46e\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.7.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/feng-ubuntu-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/fengtestvnet658/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-08-78-DD","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Compute/virtualMachines/feng-ubuntu"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"jlvmwin1184","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184","etag":"W/\"447e5c05-f50d-4db9-b916-de48795a7608\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9f67d029-e4a2-4011-a328-6fc7b3bad722","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184/ipConfigurations/ipconfig1","etag":"W/\"447e5c05-f50d-4db9-b916-de48795a7608\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.5.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/publicIPAddresses/jlvmwin1-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/virtualNetworks/jlwvmrg-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-08-79-79","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Compute/virtualMachines/jlvmwin1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"yugangw1VMNic","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw1VMNic","etag":"W/\"242894a5-aa6b-43f6-b5f0-be9d0bde48c6\"","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0ae03145-7282-4c29-97ba-94c954cf5550","ipConfigurations":[{"name":"ipconfigyugangw1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw1VMNic/ipConfigurations/ipconfigyugangw1","etag":"W/\"242894a5-aa6b-43f6-b5f0-be9d0bde48c6\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/publicIPAddresses/yugangw1PublicIP"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/virtualNetworks/yugangw1VNET/subnets/yugangw1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"jecaegluw31exfan0jeixyf2jc.ix.internal.cloudapp.net"},"macAddress":"00-0D-3A-A2-33-47","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Compute/virtualMachines/yugangw1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhwin154","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154","etag":"W/\"9afdb254-3b49-4931-a7ca-ae01889a107a\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9bd34bc5-6f44-4e98-89bd-ea08f8095294","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154/ipConfigurations/ipconfig1","etag":"W/\"9afdb254-3b49-4931-a7ca-ae01889a107a\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.1.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhWin-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet584/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-A2-9B-01","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Compute/virtualMachines/zuhWin"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"lks1.nic.7f9003f5-5e86-42b9-9979-80a9797cf484","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/lks1.nic.7f9003f5-5e86-42b9-9979-80a9797cf484","etag":"W/\"e003152b-5900-4cec-b700-e07f88af632d\"","properties":{"provisioningState":"Succeeded","resourceGuid":"b6a42b0e-dd0e-47f2-bd46-5e345ca749fc","ipConfigurations":[{"name":"lks1_ipconfig_0","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/lks1.nic.7f9003f5-5e86-42b9-9979-80a9797cf484/ipConfigurations/lks1_ipconfig_0","etag":"W/\"e003152b-5900-4cec-b700-e07f88af632d\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"qoy2lv2czybuhevorvq0mrpqrc.gx.internal.cloudapp.net"},"macAddress":"","enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[],"privateLinkService":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/privateLinkServices/lks1"}},"type":"Microsoft.Network/networkInterfaces"},{"name":"pe1.nic.42302fcd-0ffa-4e8d-8094-9f06c8639a3e","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/pe1.nic.42302fcd-0ffa-4e8d-8094-9f06c8639a3e","etag":"W/\"3b8ae29d-153d-4dcd-9a17-d846b50a8121\"","properties":{"provisioningState":"Succeeded","resourceGuid":"c2ada8e6-a192-4d0c-a07d-452a851fe03f","ipConfigurations":[{"name":"privateEndpointIpConfig","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/pe1.nic.42302fcd-0ffa-4e8d-8094-9f06c8639a3e/ipConfigurations/privateEndpointIpConfig","etag":"W/\"3b8ae29d-153d-4dcd-9a17-d846b50a8121\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.2.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet2"},"primary":true,"privateIPAddressVersion":"IPv4","privateLinkConnectionProperties":{"groupId":"","requiredMemberName":"","fqdns":[]}}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"qoy2lv2czybuhevorvq0mrpqrc.gx.internal.cloudapp.net"},"macAddress":"","enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[],"privateEndpoint":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/privateEndpoints/pe1"}},"type":"Microsoft.Network/networkInterfaces"},{"name":"test_vm1VMNic","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm1VMNic","etag":"W/\"86d951c9-c84f-4214-8066-76b125139932\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"1b8b3641-fc9b-421d-ad9f-0148955733c0","ipConfigurations":[{"name":"ipconfigtest_vm1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm1VMNic/ipConfigurations/ipconfigtest_vm1","etag":"W/\"86d951c9-c84f-4214-8066-76b125139932\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/publicIPAddresses/test_vm1PublicIP"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/virtualNetworks/test_vm1VNET/subnets/test_vm1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"bpy4eesldc1ebii0hxdhcyxiqc.gx.internal.cloudapp.net"},"macAddress":"00-0D-3A-97-89-CD","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Compute/virtualMachines/test_vm1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"test_vm2VMNic","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm2VMNic","etag":"W/\"367659e0-c8da-44ed-8974-b74d8fd43647\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"7dcdeea4-5af1-497b-89a5-be1d32487b7f","ipConfigurations":[{"name":"ipconfigtest_vm2","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm2VMNic/ipConfigurations/ipconfigtest_vm2","etag":"W/\"367659e0-c8da-44ed-8974-b74d8fd43647\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/publicIPAddresses/test_vm2PublicIP"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/virtualNetworks/test_vm1VNET/subnets/test_vm1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"bpy4eesldc1ebii0hxdhcyxiqc.gx.internal.cloudapp.net"},"macAddress":"00-0D-3A-97-81-3B","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Compute/virtualMachines/test_vm2"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"sdfsdfsdf.nic.483f3d12-3ba8-4789-92dd-b7ed9c4d43db","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/networkInterfaces/sdfsdfsdf.nic.483f3d12-3ba8-4789-92dd-b7ed9c4d43db","etag":"W/\"3bbee30b-95f7-405e-8381-1d9abf9b4c0a\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"724714f7-43b7-4ffc-998f-9c65823ba090","ipConfigurations":[{"name":"sdfsdfsdf_ipconfig_0","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/networkInterfaces/sdfsdfsdf.nic.483f3d12-3ba8-4789-92dd-b7ed9c4d43db/ipConfigurations/sdfsdfsdf_ipconfig_0","etag":"W/\"3bbee30b-95f7-405e-8381-1d9abf9b4c0a\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.1.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"xqkjibutxwqupf1ofzivpcrmoc.gx.internal.cloudapp.net"},"macAddress":"","enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[],"privateLinkService":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/privateLinkServices/sdfsdfsdf"}},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhcentos285","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285","etag":"W/\"624add92-0972-43f9-acc0-940c129b40c2\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"68322b51-ca64-42a4-9320-d0c1e79be92b","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285/ipConfigurations/ipconfig1","etag":"W/\"624add92-0972-43f9-acc0-940c129b40c2\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.3.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhCentOSip151"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet370/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-92-AF-02","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhwindows2016246","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246","etag":"W/\"0fccc225-356c-4ac3-9b19-3655145b924c\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"889673be-6ac0-44ce-b815-9b68d2bc8268","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246/ipConfigurations/ipconfig1","etag":"W/\"0fccc225-356c-4ac3-9b19-3655145b924c\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.3.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhWindows2016-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet370/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-96-A2-2A","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"vm-storage-sku-testVMNic","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkInterfaces/vm-storage-sku-testVMNic","etag":"W/\"80e84427-5292-4292-a843-4d1a1e4470d4\"","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a164a80c-d348-4802-9a85-12c1e616ce6e","ipConfigurations":[{"name":"ipconfigvm-storage-sku-test","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkInterfaces/vm-storage-sku-testVMNic/ipConfigurations/ipconfigvm-storage-sku-test","etag":"W/\"80e84427-5292-4292-a843-4d1a1e4470d4\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/publicIPAddresses/vm-storage-sku-testPublicIP"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/virtualNetworks/vm-storage-sku-testVNET/subnets/vm-storage-sku-testSubnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG"},"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Compute/virtualMachines/vm-storage-sku-test"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"fooziipy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98","etag":"W/\"3d1f7ae5-7539-4e68-932e-51c477ef91b3\"","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"eb3d07ad-0fb9-4c18-8754-cd996f1d6553","ipConfigurations":[{"name":"fooziipy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98/ipConfigurations/fooziipy98","etag":"W/\"3d1f7ae5-7539-4e68-932e-51c477ef91b3\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"192.168.1.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/publicIPAddresses/fooziipy98"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/virtualNetworks/fooziipy98/subnets/fooziipy98"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-02-48-1D","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Compute/virtualMachines/fooziipy98"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"fooziipy99","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99","etag":"W/\"c28bce2e-56ae-4edc-b659-2254cfbf3eec\"","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"0b41838c-3baa-45aa-bfc1-7bfdfefed133","ipConfigurations":[{"name":"fooziipy99","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99/ipConfigurations/fooziipy99","etag":"W/\"c28bce2e-56ae-4edc-b659-2254cfbf3eec\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"192.168.1.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/publicIPAddresses/fooziipy99"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/virtualNetworks/fooziipy99/subnets/fooziipy99"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-02-C5-15","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Compute/virtualMachines/fooziipy99"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"anf-sdk-vnet-nic-VLB5RZ","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/networkInterfaces/anf-sdk-vnet-nic-VLB5RZ","etag":"W/\"a4268957-31af-497a-8856-8d01bdafff95\"","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"22a0f747-010a-4888-a399-437e428797e3","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/networkInterfaces/anf-sdk-vnet-nic-VLB5RZ/ipConfigurations/ipconfig1","etag":"W/\"a4268957-31af-497a-8856-8d01bdafff95\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.6.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/virtualNetworks/sdk-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"mouto3xzohwuvec1rqhuv1kfxb.xx.internal.cloudapp.net"},"macAddress":"","enableAcceleratedNetworking":false,"enableIPForwarding":false,"linkedResourceType":"Microsoft.Netapp/volumes","primary":true,"hostedWorkloads":["/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.NetApp/netAppAccounts/sdk-py-tests-acc-1/capacityPools/sdk-py-tests-pool-1/volumes/sdk-py-tests-vol-1"],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"}]}' headers: cache-control: - no-cache content-length: - - '77150' + - '48121' content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:03:58 GMT + - Tue, 22 Oct 2019 06:08:54 GMT expires: - '-1' pragma: @@ -675,13 +675,13 @@ interactions: x-content-type-options: - nosniff x-ms-original-request-ids: - - 0f1b9fb7-10bf-409c-b7b0-59be00b72dd2 - - 1ace6711-ecf5-4352-91cc-205a4df40406 - - 23aa45a8-efb5-465d-b149-7d0511c1e1f6 - - 19eca6a9-cffc-4423-b216-a62860a9314a - - 0353a3e5-0c70-45be-bbee-9fd18bc6da08 - - 66721a37-a4eb-4c4a-995f-437a6b8f33c8 - - 0b3bfd3e-941e-4bfa-92ab-b3ac9274a95d + - 708954fd-574a-485c-9571-a634f176593e + - 31242f3e-9a69-401e-8c2d-b7bb3f3c7d22 + - 5c2a4df9-48ee-4dd5-9f9f-b1f491bb231a + - 264cc56c-5a4c-45f1-900f-936efd0161cd + - 6e6e6091-9cea-4960-9f66-108debc275d1 + - f3d10d4b-a6d9-4f2e-b6e6-64516f1a8354 + - aba94bcd-2d96-4c1c-8994-4de5a7fb8328 status: code: 200 message: OK @@ -698,27 +698,27 @@ interactions: - '0' User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2019-09-01 response: body: string: '' headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/98da8f6d-adc9-4de2-b795-3b3c8b56bfef?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/babbc11d-4324-4878-86dd-85df7d2561c3?api-version=2019-09-01 cache-control: - no-cache content-length: - '0' date: - - Tue, 08 Oct 2019 12:03:58 GMT + - Tue, 22 Oct 2019 06:08:55 GMT expires: - '-1' location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/98da8f6d-adc9-4de2-b795-3b3c8b56bfef?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operationResults/babbc11d-4324-4878-86dd-85df7d2561c3?api-version=2019-09-01 pragma: - no-cache server: @@ -729,7 +729,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - ee2beddb-a3e9-4d5f-996f-237980ac31b3 + - ec529651-ad90-44ad-acc2-5bf8047ca01d x-ms-ratelimit-remaining-subscription-deletes: - '14999' status: @@ -746,9 +746,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/98da8f6d-adc9-4de2-b795-3b3c8b56bfef?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/babbc11d-4324-4878-86dd-85df7d2561c3?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -760,7 +760,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:04:29 GMT + - Tue, 22 Oct 2019 06:09:26 GMT expires: - '-1' pragma: @@ -777,7 +777,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 55598a6d-d8ea-46d9-9ee1-ee3699c4f6fd + - abb657a8-d590-4ee5-8db3-5338c9ba2978 status: code: 200 message: OK diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_security_groups.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_security_groups.yaml index f3cb9e24bed4..5d044100335f 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_security_groups.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_security_groups.yaml @@ -17,21 +17,21 @@ interactions: - application/json; charset=utf-8 User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysecgroupc575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ - ,\r\n \"etag\": \"W/\\\"98c40422-a1d1-471b-acf9-976683604397\\\"\",\r\n \ + string: "{\r\n \"name\": \"pysecgroupc575136b\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ + ,\r\n \"etag\": \"W/\\\"17484af3-6a03-49c5-ae72-3a2fdf917064\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/networkSecurityGroups\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ - ,\r\n \"resourceGuid\": \"f8bfc101-76c4-46cf-af49-34e4a565e4ee\",\r\n \ + ,\r\n \"resourceGuid\": \"e27f296d-8a46-499c-9b5a-fca4878210c6\",\r\n \ \ \"securityRules\": [\r\n {\r\n \"name\": \"pysecgrouprulec575136b\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ - ,\r\n \"etag\": \"W/\\\"98c40422-a1d1-471b-acf9-976683604397\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ + ,\r\n \"etag\": \"W/\\\"17484af3-6a03-49c5-ae72-3a2fdf917064\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"description\": \"Test security rule\",\r\n \"protocol\"\ @@ -43,8 +43,8 @@ interactions: : [],\r\n \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n }\r\n ],\r\n \"defaultSecurityRules\": [\r\ \n {\r\n \"name\": \"AllowVnetInBound\",\r\n \"id\": \"\ - /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ - ,\r\n \"etag\": \"W/\\\"98c40422-a1d1-471b-acf9-976683604397\\\"\"\ + /subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ + ,\r\n \"etag\": \"W/\\\"17484af3-6a03-49c5-ae72-3a2fdf917064\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"description\": \"Allow inbound traffic from all VMs in VNET\"\ @@ -56,8 +56,8 @@ interactions: \ [],\r\n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"AllowAzureLoadBalancerInBound\",\r\ - \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ - ,\r\n \"etag\": \"W/\\\"98c40422-a1d1-471b-acf9-976683604397\\\"\"\ + \n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ + ,\r\n \"etag\": \"W/\\\"17484af3-6a03-49c5-ae72-3a2fdf917064\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"description\": \"Allow inbound traffic from azure load balancer\"\ @@ -69,8 +69,8 @@ interactions: \ [],\r\n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"DenyAllInBound\",\r\n \"id\"\ - : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ - ,\r\n \"etag\": \"W/\\\"98c40422-a1d1-471b-acf9-976683604397\\\"\"\ + : \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ + ,\r\n \"etag\": \"W/\\\"17484af3-6a03-49c5-ae72-3a2fdf917064\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"description\": \"Deny all inbound traffic\",\r\n \ @@ -81,8 +81,8 @@ interactions: : \"Inbound\",\r\n \"sourcePortRanges\": [],\r\n \"destinationPortRanges\"\ : [],\r\n \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n },\r\n {\r\n \"name\": \"AllowVnetOutBound\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ - ,\r\n \"etag\": \"W/\\\"98c40422-a1d1-471b-acf9-976683604397\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ + ,\r\n \"etag\": \"W/\\\"17484af3-6a03-49c5-ae72-3a2fdf917064\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"description\": \"Allow outbound traffic from all VMs to all\ @@ -94,8 +94,8 @@ interactions: : [],\r\n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"AllowInternetOutBound\",\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ - ,\r\n \"etag\": \"W/\\\"98c40422-a1d1-471b-acf9-976683604397\\\"\"\ + \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ + ,\r\n \"etag\": \"W/\\\"17484af3-6a03-49c5-ae72-3a2fdf917064\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"description\": \"Allow outbound traffic from all VMs to Internet\"\ @@ -107,8 +107,8 @@ interactions: \n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"DenyAllOutBound\",\r\n \"\ - id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ - ,\r\n \"etag\": \"W/\\\"98c40422-a1d1-471b-acf9-976683604397\\\"\"\ + id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ + ,\r\n \"etag\": \"W/\\\"17484af3-6a03-49c5-ae72-3a2fdf917064\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"description\": \"Deny all outbound traffic\",\r\n \ @@ -121,7 +121,7 @@ interactions: : []\r\n }\r\n }\r\n ]\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f665c0b0-4496-473d-8bd8-295861f0b7bd?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/2fec0f55-e689-4170-a513-25387ec49726?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -129,7 +129,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:04:48 GMT + - Tue, 22 Oct 2019 06:09:41 GMT expires: - '-1' pragma: @@ -142,9 +142,9 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 90fd44f6-f686-4360-8a98-450b17e46c87 + - 12538c26-6867-47af-9ed2-ffd0ee32f6a0 x-ms-ratelimit-remaining-subscription-writes: - - '1199' + - '1198' status: code: 201 message: Created @@ -159,9 +159,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f665c0b0-4496-473d-8bd8-295861f0b7bd?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/2fec0f55-e689-4170-a513-25387ec49726?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -173,7 +173,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:04:52 GMT + - Tue, 22 Oct 2019 06:09:45 GMT expires: - '-1' pragma: @@ -190,7 +190,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 4567b826-03c2-4a6f-9687-dbe390df8b28 + - a7fe36cc-e849-4ff0-839f-641fbdba5493 status: code: 200 message: OK @@ -205,19 +205,19 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysecgroupc575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\",\r\n \ + string: "{\r\n \"name\": \"pysecgroupc575136b\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/networkSecurityGroups\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"resourceGuid\": \"f8bfc101-76c4-46cf-af49-34e4a565e4ee\",\r\n \ + ,\r\n \"resourceGuid\": \"e27f296d-8a46-499c-9b5a-fca4878210c6\",\r\n \ \ \"securityRules\": [\r\n {\r\n \"name\": \"pysecgrouprulec575136b\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Test security rule\",\r\n \"protocol\"\ @@ -229,8 +229,8 @@ interactions: : [],\r\n \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n }\r\n ],\r\n \"defaultSecurityRules\": [\r\ \n {\r\n \"name\": \"AllowVnetInBound\",\r\n \"id\": \"\ - /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\"\ + /subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Allow inbound traffic from all VMs in VNET\"\ @@ -242,8 +242,8 @@ interactions: \ [],\r\n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"AllowAzureLoadBalancerInBound\",\r\ - \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\"\ + \n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Allow inbound traffic from azure load balancer\"\ @@ -255,8 +255,8 @@ interactions: \ [],\r\n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"DenyAllInBound\",\r\n \"id\"\ - : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\"\ + : \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Deny all inbound traffic\",\r\n \ @@ -267,8 +267,8 @@ interactions: : \"Inbound\",\r\n \"sourcePortRanges\": [],\r\n \"destinationPortRanges\"\ : [],\r\n \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n },\r\n {\r\n \"name\": \"AllowVnetOutBound\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Allow outbound traffic from all VMs to all\ @@ -280,8 +280,8 @@ interactions: : [],\r\n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"AllowInternetOutBound\",\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\"\ + \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Allow outbound traffic from all VMs to Internet\"\ @@ -293,8 +293,8 @@ interactions: \n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"DenyAllOutBound\",\r\n \"\ - id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\"\ + id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Deny all outbound traffic\",\r\n \ @@ -313,9 +313,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:04:52 GMT + - Tue, 22 Oct 2019 06:09:46 GMT etag: - - W/"8b84958e-f5c0-4973-9b32-2abddde7255d" + - W/"a5bda48e-6700-460b-bd33-c6019913f435" expires: - '-1' pragma: @@ -332,7 +332,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - a2af2b62-3d56-4d6e-8c01-b254c3699247 + - e437fc1e-4a61-4239-998c-b41cc5ecb474 status: code: 200 message: OK @@ -347,21 +347,21 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysecgroupc575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\",\r\n \ + string: "{\r\n \"name\": \"pysecgroupc575136b\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/networkSecurityGroups\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"resourceGuid\": \"f8bfc101-76c4-46cf-af49-34e4a565e4ee\",\r\n \ + ,\r\n \"resourceGuid\": \"e27f296d-8a46-499c-9b5a-fca4878210c6\",\r\n \ \ \"securityRules\": [\r\n {\r\n \"name\": \"pysecgrouprulec575136b\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Test security rule\",\r\n \"protocol\"\ @@ -373,8 +373,8 @@ interactions: : [],\r\n \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n }\r\n ],\r\n \"defaultSecurityRules\": [\r\ \n {\r\n \"name\": \"AllowVnetInBound\",\r\n \"id\": \"\ - /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\"\ + /subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Allow inbound traffic from all VMs in VNET\"\ @@ -386,8 +386,8 @@ interactions: \ [],\r\n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"AllowAzureLoadBalancerInBound\",\r\ - \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\"\ + \n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Allow inbound traffic from azure load balancer\"\ @@ -399,8 +399,8 @@ interactions: \ [],\r\n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"DenyAllInBound\",\r\n \"id\"\ - : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\"\ + : \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Deny all inbound traffic\",\r\n \ @@ -411,8 +411,8 @@ interactions: : \"Inbound\",\r\n \"sourcePortRanges\": [],\r\n \"destinationPortRanges\"\ : [],\r\n \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n },\r\n {\r\n \"name\": \"AllowVnetOutBound\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Allow outbound traffic from all VMs to all\ @@ -424,8 +424,8 @@ interactions: : [],\r\n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"AllowInternetOutBound\",\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\"\ + \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Allow outbound traffic from all VMs to Internet\"\ @@ -437,8 +437,8 @@ interactions: \n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"DenyAllOutBound\",\r\n \"\ - id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\"\ + id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Deny all outbound traffic\",\r\n \ @@ -457,9 +457,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:04:53 GMT + - Tue, 22 Oct 2019 06:09:46 GMT etag: - - W/"8b84958e-f5c0-4973-9b32-2abddde7255d" + - W/"a5bda48e-6700-460b-bd33-c6019913f435" expires: - '-1' pragma: @@ -476,7 +476,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 7f532dba-3e46-4291-b701-4c9b15e75cbd + - dbe0dc29-825c-41b4-a6f5-75b7c4d67bb1 status: code: 200 message: OK @@ -491,22 +491,22 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pysecgroupc575136b\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\",\r\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\",\r\ \n \"type\": \"Microsoft.Network/networkSecurityGroups\",\r\n \"\ location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"f8bfc101-76c4-46cf-af49-34e4a565e4ee\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"e27f296d-8a46-499c-9b5a-fca4878210c6\"\ ,\r\n \"securityRules\": [\r\n {\r\n \"name\":\ - \ \"pysecgrouprulec575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\ + \ \"pysecgrouprulec575136b\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\ \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"description\": \"Test security rule\"\ @@ -519,8 +519,8 @@ interactions: sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n }\r\n ],\r\n \"defaultSecurityRules\"\ : [\r\n {\r\n \"name\": \"AllowVnetInBound\",\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\ + \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\ \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"description\": \"Allow inbound traffic\ @@ -533,8 +533,8 @@ interactions: : [],\r\n \"destinationPortRanges\": [],\r\n \"\ sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n },\r\n {\r\n \"name\"\ - : \"AllowAzureLoadBalancerInBound\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\ + : \"AllowAzureLoadBalancerInBound\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\ \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"description\": \"Allow inbound traffic\ @@ -547,8 +547,8 @@ interactions: \ \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\ \n },\r\n {\r\n \"name\": \"DenyAllInBound\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\ \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"description\": \"Deny all inbound traffic\"\ @@ -560,8 +560,8 @@ interactions: sourcePortRanges\": [],\r\n \"destinationPortRanges\": [],\r\n\ \ \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n },\r\n {\r\n \"name\"\ - : \"AllowVnetOutBound\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\ + : \"AllowVnetOutBound\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\ \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"description\": \"Allow outbound traffic\ @@ -574,8 +574,8 @@ interactions: : [],\r\n \"destinationPortRanges\": [],\r\n \"\ sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n },\r\n {\r\n \"name\"\ - : \"AllowInternetOutBound\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\ + : \"AllowInternetOutBound\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\ \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"description\": \"Allow outbound traffic\ @@ -588,8 +588,8 @@ interactions: \ \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\ \n },\r\n {\r\n \"name\": \"DenyAllOutBound\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ - ,\r\n \"etag\": \"W/\\\"8b84958e-f5c0-4973-9b32-2abddde7255d\\\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ + ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\ \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"description\": \"Deny all outbound traffic\"\ @@ -610,7 +610,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:04:53 GMT + - Tue, 22 Oct 2019 06:09:46 GMT expires: - '-1' pragma: @@ -627,7 +627,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - a2292873-edb8-4718-a53d-653a1892cafc + - 220d4604-9eeb-4e0b-8e20-97fd6ab0b5c7 status: code: 200 message: OK @@ -642,258 +642,187 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/networkSecurityGroups?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/networkSecurityGroups?api-version=2019-09-01 response: body: - string: '{"value":[{"name":"vm-nameNSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Network/networkSecurityGroups/vm-nameNSG","etag":"W/\"abf4f0c4-4ee1-4c0c-a394-abf508b93518\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"c26df998-950a-4437-9e62-adb26a68521e","securityRules":[{"name":"rdp","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Network/networkSecurityGroups/vm-nameNSG/securityRules/rdp","etag":"W/\"abf4f0c4-4ee1-4c0c-a394-abf508b93518\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Network/networkSecurityGroups/vm-nameNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"abf4f0c4-4ee1-4c0c-a394-abf508b93518\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Network/networkSecurityGroups/vm-nameNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"abf4f0c4-4ee1-4c0c-a394-abf508b93518\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Network/networkSecurityGroups/vm-nameNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"abf4f0c4-4ee1-4c0c-a394-abf508b93518\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Network/networkSecurityGroups/vm-nameNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"abf4f0c4-4ee1-4c0c-a394-abf508b93518\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Network/networkSecurityGroups/vm-nameNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"abf4f0c4-4ee1-4c0c-a394-abf508b93518\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Network/networkSecurityGroups/vm-nameNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"abf4f0c4-4ee1-4c0c-a394-abf508b93518\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Network/networkInterfaces/vm-nameVMNic"}]}},{"name":"nsg1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_role_assignqebydek2q63vedv67w5m3uofzq45jmgbf3zclr6jp4m3ns24znuy3y6nkzie/providers/Microsoft.Network/networkSecurityGroups/nsg1","etag":"W/\"71ad376c-f8dd-4e67-bb41-52e147172900\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"83b52919-29f4-43a2-945c-5628595f88ed","securityRules":[],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_role_assignqebydek2q63vedv67w5m3uofzq45jmgbf3zclr6jp4m3ns24znuy3y6nkzie/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetInBound","etag":"W/\"71ad376c-f8dd-4e67-bb41-52e147172900\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_role_assignqebydek2q63vedv67w5m3uofzq45jmgbf3zclr6jp4m3ns24znuy3y6nkzie/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"71ad376c-f8dd-4e67-bb41-52e147172900\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_role_assignqebydek2q63vedv67w5m3uofzq45jmgbf3zclr6jp4m3ns24znuy3y6nkzie/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllInBound","etag":"W/\"71ad376c-f8dd-4e67-bb41-52e147172900\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_role_assignqebydek2q63vedv67w5m3uofzq45jmgbf3zclr6jp4m3ns24znuy3y6nkzie/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"71ad376c-f8dd-4e67-bb41-52e147172900\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_role_assignqebydek2q63vedv67w5m3uofzq45jmgbf3zclr6jp4m3ns24znuy3y6nkzie/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"71ad376c-f8dd-4e67-bb41-52e147172900\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_role_assignqebydek2q63vedv67w5m3uofzq45jmgbf3zclr6jp4m3ns24znuy3y6nkzie/providers/Microsoft.Network/networkSecurityGroups/nsg1/defaultSecurityRules/DenyAllOutBound","etag":"W/\"71ad376c-f8dd-4e67-bb41-52e147172900\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"cli-test-vmmwqr6rnm5pcjxgkxja5NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Network/networkSecurityGroups/cli-test-vmmwqr6rnm5pcjxgkxja5NSG","etag":"W/\"ea3855b1-143b-4b85-b473-b9ce97266581\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a74e171f-5b1c-41d8-8b35-d2387841adc0","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Network/networkSecurityGroups/cli-test-vmmwqr6rnm5pcjxgkxja5NSG/securityRules/default-allow-ssh","etag":"W/\"ea3855b1-143b-4b85-b473-b9ce97266581\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Network/networkSecurityGroups/cli-test-vmmwqr6rnm5pcjxgkxja5NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"ea3855b1-143b-4b85-b473-b9ce97266581\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Network/networkSecurityGroups/cli-test-vmmwqr6rnm5pcjxgkxja5NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"ea3855b1-143b-4b85-b473-b9ce97266581\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Network/networkSecurityGroups/cli-test-vmmwqr6rnm5pcjxgkxja5NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"ea3855b1-143b-4b85-b473-b9ce97266581\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Network/networkSecurityGroups/cli-test-vmmwqr6rnm5pcjxgkxja5NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"ea3855b1-143b-4b85-b473-b9ce97266581\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Network/networkSecurityGroups/cli-test-vmmwqr6rnm5pcjxgkxja5NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"ea3855b1-143b-4b85-b473-b9ce97266581\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Network/networkSecurityGroups/cli-test-vmmwqr6rnm5pcjxgkxja5NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"ea3855b1-143b-4b85-b473-b9ce97266581\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Network/networkInterfaces/cli-test-vmmwqr6rnm5pcjxgkxja5VMNic"}]}},{"name":"vm1NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkSecurityGroups/vm1NSG","etag":"W/\"396ff8c4-cebe-4250-9f2a-b8e3f1995328\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"7fb3c32b-b0fd-40a7-afef-bc6a9b9632e2","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkSecurityGroups/vm1NSG/securityRules/default-allow-ssh","etag":"W/\"396ff8c4-cebe-4250-9f2a-b8e3f1995328\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkSecurityGroups/vm1NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"396ff8c4-cebe-4250-9f2a-b8e3f1995328\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkSecurityGroups/vm1NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"396ff8c4-cebe-4250-9f2a-b8e3f1995328\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkSecurityGroups/vm1NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"396ff8c4-cebe-4250-9f2a-b8e3f1995328\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkSecurityGroups/vm1NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"396ff8c4-cebe-4250-9f2a-b8e3f1995328\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkSecurityGroups/vm1NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"396ff8c4-cebe-4250-9f2a-b8e3f1995328\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkSecurityGroups/vm1NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"396ff8c4-cebe-4250-9f2a-b8e3f1995328\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkInterfaces/vm1VMNic"}]}},{"name":"vm2NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkSecurityGroups/vm2NSG","etag":"W/\"34f128bb-1f0f-4e4a-babf-56bdfd613aa9\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"67faf4c1-a28d-41f6-a233-aa0b49f11af5","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkSecurityGroups/vm2NSG/securityRules/default-allow-ssh","etag":"W/\"34f128bb-1f0f-4e4a-babf-56bdfd613aa9\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkSecurityGroups/vm2NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"34f128bb-1f0f-4e4a-babf-56bdfd613aa9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkSecurityGroups/vm2NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"34f128bb-1f0f-4e4a-babf-56bdfd613aa9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkSecurityGroups/vm2NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"34f128bb-1f0f-4e4a-babf-56bdfd613aa9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkSecurityGroups/vm2NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"34f128bb-1f0f-4e4a-babf-56bdfd613aa9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkSecurityGroups/vm2NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"34f128bb-1f0f-4e4a-babf-56bdfd613aa9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkSecurityGroups/vm2NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"34f128bb-1f0f-4e4a-babf-56bdfd613aa9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkInterfaces/vm2VMNic"}]}},{"name":"fromimage1NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/fromimage1NSG","etag":"W/\"1a49b209-23a9-4520-abec-f5bad32dee70\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"702a9533-8f25-495e-864f-870bb8fea2b6","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/fromimage1NSG/securityRules/default-allow-ssh","etag":"W/\"1a49b209-23a9-4520-abec-f5bad32dee70\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/fromimage1NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"1a49b209-23a9-4520-abec-f5bad32dee70\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/fromimage1NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"1a49b209-23a9-4520-abec-f5bad32dee70\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/fromimage1NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"1a49b209-23a9-4520-abec-f5bad32dee70\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/fromimage1NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"1a49b209-23a9-4520-abec-f5bad32dee70\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/fromimage1NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"1a49b209-23a9-4520-abec-f5bad32dee70\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/fromimage1NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"1a49b209-23a9-4520-abec-f5bad32dee70\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/fromimage1VMNic"}]}},{"name":"fromimage2NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/fromimage2NSG","etag":"W/\"9b082e34-9253-4f55-b8d1-40d85196e24f\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d1654947-e390-430d-879d-ba7fde4cc671","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/fromimage2NSG/securityRules/default-allow-ssh","etag":"W/\"9b082e34-9253-4f55-b8d1-40d85196e24f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/fromimage2NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"9b082e34-9253-4f55-b8d1-40d85196e24f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/fromimage2NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"9b082e34-9253-4f55-b8d1-40d85196e24f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/fromimage2NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"9b082e34-9253-4f55-b8d1-40d85196e24f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/fromimage2NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"9b082e34-9253-4f55-b8d1-40d85196e24f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/fromimage2NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"9b082e34-9253-4f55-b8d1-40d85196e24f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/fromimage2NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"9b082e34-9253-4f55-b8d1-40d85196e24f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/fromimage2VMNic"}]}},{"name":"vm-managed-diskNSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm-managed-diskNSG","etag":"W/\"f0224250-f38d-49b5-b4ec-e3201de66969\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"8bc0e4fa-636d-4ff4-8728-e0c2b85afe72","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm-managed-diskNSG/securityRules/default-allow-ssh","etag":"W/\"f0224250-f38d-49b5-b4ec-e3201de66969\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm-managed-diskNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"f0224250-f38d-49b5-b4ec-e3201de66969\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm-managed-diskNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"f0224250-f38d-49b5-b4ec-e3201de66969\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm-managed-diskNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"f0224250-f38d-49b5-b4ec-e3201de66969\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm-managed-diskNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"f0224250-f38d-49b5-b4ec-e3201de66969\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm-managed-diskNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"f0224250-f38d-49b5-b4ec-e3201de66969\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm-managed-diskNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"f0224250-f38d-49b5-b4ec-e3201de66969\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/vm-managed-diskVMNic"}]}},{"name":"vm-unmanaged-diskNSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm-unmanaged-diskNSG","etag":"W/\"7c71475d-2461-4f3a-8498-da51237dc095\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"151d0af9-c708-45dd-9cb7-08a80dc04b1d","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm-unmanaged-diskNSG/securityRules/default-allow-ssh","etag":"W/\"7c71475d-2461-4f3a-8498-da51237dc095\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm-unmanaged-diskNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"7c71475d-2461-4f3a-8498-da51237dc095\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm-unmanaged-diskNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"7c71475d-2461-4f3a-8498-da51237dc095\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm-unmanaged-diskNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"7c71475d-2461-4f3a-8498-da51237dc095\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm-unmanaged-diskNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"7c71475d-2461-4f3a-8498-da51237dc095\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm-unmanaged-diskNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"7c71475d-2461-4f3a-8498-da51237dc095\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm-unmanaged-diskNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"7c71475d-2461-4f3a-8498-da51237dc095\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/vm-unmanaged-diskVMNic"}]}},{"name":"vm3NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm3NSG","etag":"W/\"84da80fe-6358-43a5-b52c-362c5e70dfb2\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"b727662e-58ca-43ec-a8ce-bc9139de0d8e","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm3NSG/securityRules/default-allow-ssh","etag":"W/\"84da80fe-6358-43a5-b52c-362c5e70dfb2\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm3NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"84da80fe-6358-43a5-b52c-362c5e70dfb2\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm3NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"84da80fe-6358-43a5-b52c-362c5e70dfb2\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm3NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"84da80fe-6358-43a5-b52c-362c5e70dfb2\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm3NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"84da80fe-6358-43a5-b52c-362c5e70dfb2\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm3NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"84da80fe-6358-43a5-b52c-362c5e70dfb2\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkSecurityGroups/vm3NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"84da80fe-6358-43a5-b52c-362c5e70dfb2\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/vm3VMNic"}]}},{"name":"fengubuntu-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg","etag":"W/\"b21a6702-36a9-4bea-8eb8-f6ec6faa3689\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"ae4ae762-8327-4b91-adf6-268d870e4854","securityRules":[{"name":"HTTPS","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/securityRules/HTTPS","etag":"W/\"b21a6702-36a9-4bea-8eb8-f6ec6faa3689\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/securityRules/SSH","etag":"W/\"b21a6702-36a9-4bea-8eb8-f6ec6faa3689\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"b21a6702-36a9-4bea-8eb8-f6ec6faa3689\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"b21a6702-36a9-4bea-8eb8-f6ec6faa3689\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"b21a6702-36a9-4bea-8eb8-f6ec6faa3689\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"b21a6702-36a9-4bea-8eb8-f6ec6faa3689\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"b21a6702-36a9-4bea-8eb8-f6ec6faa3689\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"b21a6702-36a9-4bea-8eb8-f6ec6faa3689\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/fengubuntu763"}]}},{"name":"fengubuntunsg742","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742","etag":"W/\"23cf0a3f-ebb1-4e74-9c98-178ce59e5531\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"53bb2e29-e307-445e-96dc-2e01b9c47321","securityRules":[{"name":"Port_443","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/securityRules/Port_443","etag":"W/\"23cf0a3f-ebb1-4e74-9c98-178ce59e5531\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":100,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Port_22","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/securityRules/Port_22","etag":"W/\"23cf0a3f-ebb1-4e74-9c98-178ce59e5531\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":110,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/AllowVnetInBound","etag":"W/\"23cf0a3f-ebb1-4e74-9c98-178ce59e5531\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"23cf0a3f-ebb1-4e74-9c98-178ce59e5531\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/DenyAllInBound","etag":"W/\"23cf0a3f-ebb1-4e74-9c98-178ce59e5531\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"23cf0a3f-ebb1-4e74-9c98-178ce59e5531\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"23cf0a3f-ebb1-4e74-9c98-178ce59e5531\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/DenyAllOutBound","etag":"W/\"23cf0a3f-ebb1-4e74-9c98-178ce59e5531\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/fengubuntu523"}]}},{"name":"aNSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"e13175f2-5e2e-4de0-960d-7546b4693f26","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/securityRules/default-allow-ssh","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic"}]}},{"name":"start-1NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f18b8899-f28a-4a6a-8bb3-5cde714538e0","securityRules":[{"name":"rdp","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/securityRules/rdp","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic"}]}},{"name":"pysecgroupc575136b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b","etag":"W/\"8b84958e-f5c0-4973-9b32-2abddde7255d\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"f8bfc101-76c4-46cf-af49-34e4a565e4ee","securityRules":[{"name":"pysecgrouprulec575136b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b","etag":"W/\"8b84958e-f5c0-4973-9b32-2abddde7255d\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","description":"Test - security rule","protocol":"Tcp","sourcePortRange":"655","destinationPortRange":"123-3500","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound","etag":"W/\"8b84958e-f5c0-4973-9b32-2abddde7255d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"8b84958e-f5c0-4973-9b32-2abddde7255d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound","etag":"W/\"8b84958e-f5c0-4973-9b32-2abddde7255d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"8b84958e-f5c0-4973-9b32-2abddde7255d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"8b84958e-f5c0-4973-9b32-2abddde7255d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound","etag":"W/\"8b84958e-f5c0-4973-9b32-2abddde7255d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"workspacetestvmNSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/networkSecurityGroups/workspacetestvmNSG","etag":"W/\"540e54ee-f318-42c9-a117-585773153957\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"65ad50f2-03c0-4865-a106-15835dbcc720","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/networkSecurityGroups/workspacetestvmNSG/securityRules/default-allow-ssh","etag":"W/\"540e54ee-f318-42c9-a117-585773153957\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/networkSecurityGroups/workspacetestvmNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"540e54ee-f318-42c9-a117-585773153957\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/networkSecurityGroups/workspacetestvmNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"540e54ee-f318-42c9-a117-585773153957\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/networkSecurityGroups/workspacetestvmNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"540e54ee-f318-42c9-a117-585773153957\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/networkSecurityGroups/workspacetestvmNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"540e54ee-f318-42c9-a117-585773153957\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/networkSecurityGroups/workspacetestvmNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"540e54ee-f318-42c9-a117-585773153957\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/networkSecurityGroups/workspacetestvmNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"540e54ee-f318-42c9-a117-585773153957\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/networkInterfaces/workspacetestvmVMNic"}]}},{"name":"ubuntuNSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/ubuntuNSG","etag":"W/\"9b5a9b03-b6c2-4d9b-8ffa-3471bab6e78e\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f07e145e-9be5-4acf-a34c-6fc29bc16d16","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/ubuntuNSG/securityRules/default-allow-ssh","etag":"W/\"9b5a9b03-b6c2-4d9b-8ffa-3471bab6e78e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/ubuntuNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"9b5a9b03-b6c2-4d9b-8ffa-3471bab6e78e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/ubuntuNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"9b5a9b03-b6c2-4d9b-8ffa-3471bab6e78e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/ubuntuNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"9b5a9b03-b6c2-4d9b-8ffa-3471bab6e78e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/ubuntuNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"9b5a9b03-b6c2-4d9b-8ffa-3471bab6e78e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/ubuntuNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"9b5a9b03-b6c2-4d9b-8ffa-3471bab6e78e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/ubuntuNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"9b5a9b03-b6c2-4d9b-8ffa-3471bab6e78e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkInterfaces/ubuntuVMNic"}]}},{"name":"vm1NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/vm1NSG","etag":"W/\"b23ef466-2f3a-4220-9c82-aeefdd313b27\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"aedae1d0-fa63-4208-a766-d31f391a3cc3","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/vm1NSG/securityRules/default-allow-ssh","etag":"W/\"b23ef466-2f3a-4220-9c82-aeefdd313b27\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/vm1NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"b23ef466-2f3a-4220-9c82-aeefdd313b27\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/vm1NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"b23ef466-2f3a-4220-9c82-aeefdd313b27\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/vm1NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"b23ef466-2f3a-4220-9c82-aeefdd313b27\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/vm1NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"b23ef466-2f3a-4220-9c82-aeefdd313b27\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/vm1NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"b23ef466-2f3a-4220-9c82-aeefdd313b27\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/vm1NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"b23ef466-2f3a-4220-9c82-aeefdd313b27\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkInterfaces/vm1VMNic"}]}},{"name":"vmzoneNSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/vmzoneNSG","etag":"W/\"84a1b5d7-1995-4b0d-bba3-1bbe5303805c\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"11cdc26e-98c2-4fdb-8e9a-9abd14f17011","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/vmzoneNSG/securityRules/default-allow-ssh","etag":"W/\"84a1b5d7-1995-4b0d-bba3-1bbe5303805c\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/vmzoneNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"84a1b5d7-1995-4b0d-bba3-1bbe5303805c\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/vmzoneNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"84a1b5d7-1995-4b0d-bba3-1bbe5303805c\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/vmzoneNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"84a1b5d7-1995-4b0d-bba3-1bbe5303805c\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/vmzoneNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"84a1b5d7-1995-4b0d-bba3-1bbe5303805c\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/vmzoneNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"84a1b5d7-1995-4b0d-bba3-1bbe5303805c\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkSecurityGroups/vmzoneNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"84a1b5d7-1995-4b0d-bba3-1bbe5303805c\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"testVMNSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Network/networkSecurityGroups/testVMNSG","etag":"W/\"d171d649-45df-4eb4-adfe-27b7844a26b0\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"1ec4bd2d-4bf8-4a83-a4b3-2f699b94d876","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Network/networkSecurityGroups/testVMNSG/securityRules/default-allow-ssh","etag":"W/\"d171d649-45df-4eb4-adfe-27b7844a26b0\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Network/networkSecurityGroups/testVMNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"d171d649-45df-4eb4-adfe-27b7844a26b0\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Network/networkSecurityGroups/testVMNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"d171d649-45df-4eb4-adfe-27b7844a26b0\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Network/networkSecurityGroups/testVMNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"d171d649-45df-4eb4-adfe-27b7844a26b0\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Network/networkSecurityGroups/testVMNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"d171d649-45df-4eb4-adfe-27b7844a26b0\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Network/networkSecurityGroups/testVMNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"d171d649-45df-4eb4-adfe-27b7844a26b0\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Network/networkSecurityGroups/testVMNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"d171d649-45df-4eb4-adfe-27b7844a26b0\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"zuhlinux-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"4068e122-56e9-48ef-aad1-b196d45cd374","securityRules":[{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/securityRules/SSH","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.255.51","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359"}]}},{"name":"zuhtestvm-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"d3a995db-663b-4363-8d32-a1f857e593f1","securityRules":[{"name":"RDP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/securityRules/RDP","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638"}]}},{"name":"zuhUbuntu-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"73db128e-9a50-4012-b9e9-bd2aac698343","securityRules":[{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/securityRules/SSH","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/securityRules/RDP","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/securityRules/HTTPS","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/securityRules/HTTP","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26"}]}},{"name":"vm22-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"902181db-c84c-48d0-ba1f-bf12fcb4bbf0","securityRules":[{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/securityRules/SSH","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/securityRules/HTTPS","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523"}]}},{"name":"acrtest-vm1NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm1NSG","etag":"W/\"c61dd254-efcb-4d79-9987-c4ae37343b1e\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"e6cfc15a-9bd4-4c25-b44c-af92439a80f7","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm1NSG/securityRules/default-allow-ssh","etag":"W/\"c61dd254-efcb-4d79-9987-c4ae37343b1e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm1NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"c61dd254-efcb-4d79-9987-c4ae37343b1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm1NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"c61dd254-efcb-4d79-9987-c4ae37343b1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm1NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"c61dd254-efcb-4d79-9987-c4ae37343b1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm1NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"c61dd254-efcb-4d79-9987-c4ae37343b1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm1NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"c61dd254-efcb-4d79-9987-c4ae37343b1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm1NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"c61dd254-efcb-4d79-9987-c4ae37343b1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm1VMNic"}]}},{"name":"acrtest-vm2NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm2NSG","etag":"W/\"26de6b7a-5d31-4dd7-b1ad-dac8cf21911f\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f5dca1a3-f9d2-4219-b941-d3781df8a1ee","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm2NSG/securityRules/default-allow-ssh","etag":"W/\"26de6b7a-5d31-4dd7-b1ad-dac8cf21911f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm2NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"26de6b7a-5d31-4dd7-b1ad-dac8cf21911f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm2NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"26de6b7a-5d31-4dd7-b1ad-dac8cf21911f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm2NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"26de6b7a-5d31-4dd7-b1ad-dac8cf21911f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm2NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"26de6b7a-5d31-4dd7-b1ad-dac8cf21911f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm2NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"26de6b7a-5d31-4dd7-b1ad-dac8cf21911f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm2NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"26de6b7a-5d31-4dd7-b1ad-dac8cf21911f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm2VMNic"}]}},{"name":"acrtest-vm3NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm3NSG","etag":"W/\"dbc9c11b-ae6f-40da-ade8-c6cad56980ba\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"44041731-467c-4a44-8033-e05d78c5f02d","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm3NSG/securityRules/default-allow-ssh","etag":"W/\"dbc9c11b-ae6f-40da-ade8-c6cad56980ba\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Port_80802","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm3NSG/securityRules/Port_80802","etag":"W/\"dbc9c11b-ae6f-40da-ade8-c6cad56980ba\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"AzureContainerRegistry","access":"Allow","priority":110,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Allow_storage","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm3NSG/securityRules/Allow_storage","etag":"W/\"dbc9c11b-ae6f-40da-ade8-c6cad56980ba\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Storage","access":"Allow","priority":122,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Deny_all","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm3NSG/securityRules/Deny_all","etag":"W/\"dbc9c11b-ae6f-40da-ade8-c6cad56980ba\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":130,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm3NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"dbc9c11b-ae6f-40da-ade8-c6cad56980ba\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm3NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"dbc9c11b-ae6f-40da-ade8-c6cad56980ba\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm3NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"dbc9c11b-ae6f-40da-ade8-c6cad56980ba\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm3NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"dbc9c11b-ae6f-40da-ade8-c6cad56980ba\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm3NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"dbc9c11b-ae6f-40da-ade8-c6cad56980ba\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm3NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"dbc9c11b-ae6f-40da-ade8-c6cad56980ba\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm3VMNic"}]}},{"name":"acrtest-vm4NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm4NSG","etag":"W/\"3ef5255c-2ec7-4373-8709-f397cec7c1e1\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"35fea91f-546e-4df5-9beb-c47a77ca1381","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm4NSG/securityRules/default-allow-ssh","etag":"W/\"3ef5255c-2ec7-4373-8709-f397cec7c1e1\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm4NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"3ef5255c-2ec7-4373-8709-f397cec7c1e1\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm4NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"3ef5255c-2ec7-4373-8709-f397cec7c1e1\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm4NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"3ef5255c-2ec7-4373-8709-f397cec7c1e1\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm4NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"3ef5255c-2ec7-4373-8709-f397cec7c1e1\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm4NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"3ef5255c-2ec7-4373-8709-f397cec7c1e1\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkSecurityGroups/acrtest-vm4NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"3ef5255c-2ec7-4373-8709-f397cec7c1e1\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm4VMNic"}]}},{"name":"helm-1NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Network/networkSecurityGroups/helm-1NSG","etag":"W/\"6d04f36e-8cb3-4d60-b2be-5595a046016e\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"7ed9bcfe-1d73-4d5c-a741-ca9c36dfbcd6","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Network/networkSecurityGroups/helm-1NSG/securityRules/default-allow-ssh","etag":"W/\"6d04f36e-8cb3-4d60-b2be-5595a046016e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Network/networkSecurityGroups/helm-1NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"6d04f36e-8cb3-4d60-b2be-5595a046016e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Network/networkSecurityGroups/helm-1NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"6d04f36e-8cb3-4d60-b2be-5595a046016e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Network/networkSecurityGroups/helm-1NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"6d04f36e-8cb3-4d60-b2be-5595a046016e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Network/networkSecurityGroups/helm-1NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"6d04f36e-8cb3-4d60-b2be-5595a046016e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Network/networkSecurityGroups/helm-1NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"6d04f36e-8cb3-4d60-b2be-5595a046016e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Network/networkSecurityGroups/helm-1NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"6d04f36e-8cb3-4d60-b2be-5595a046016e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Network/networkInterfaces/helm-1VMNic"}]}},{"name":"jlvmwin1-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9b65c627-f3bc-4682-9f3f-37798414e70e","securityRules":[{"name":"RDP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/securityRules/RDP","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184"}]}},{"name":"yugangw-vm1NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw-vm1NSG","etag":"W/\"b9ed7ad8-9e37-4343-8d35-e419c64c16ff\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"02ff15e8-aebf-473d-bf33-5617d226fd5e","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw-vm1NSG/securityRules/default-allow-ssh","etag":"W/\"b9ed7ad8-9e37-4343-8d35-e419c64c16ff\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw-vm1NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"b9ed7ad8-9e37-4343-8d35-e419c64c16ff\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw-vm1NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"b9ed7ad8-9e37-4343-8d35-e419c64c16ff\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw-vm1NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"b9ed7ad8-9e37-4343-8d35-e419c64c16ff\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw-vm1NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"b9ed7ad8-9e37-4343-8d35-e419c64c16ff\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw-vm1NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"b9ed7ad8-9e37-4343-8d35-e419c64c16ff\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw-vm1NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"b9ed7ad8-9e37-4343-8d35-e419c64c16ff\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw-vm1VMNic"}]}},{"name":"zuhWin-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"70ec8b54-e05c-4cef-8663-1bd6cb7dc65c","securityRules":[{"name":"Port_3389","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/securityRules/Port_3389","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154"}]}},{"name":"monitorVmNSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkSecurityGroups/monitorVmNSG","etag":"W/\"da1bd4e7-0e0f-4719-b838-4aebf2e50b04\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"2cb88745-36b8-47bd-b0ef-8a5d4f8c6d7f","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkSecurityGroups/monitorVmNSG/securityRules/default-allow-ssh","etag":"W/\"da1bd4e7-0e0f-4719-b838-4aebf2e50b04\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkSecurityGroups/monitorVmNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"da1bd4e7-0e0f-4719-b838-4aebf2e50b04\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkSecurityGroups/monitorVmNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"da1bd4e7-0e0f-4719-b838-4aebf2e50b04\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkSecurityGroups/monitorVmNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"da1bd4e7-0e0f-4719-b838-4aebf2e50b04\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkSecurityGroups/monitorVmNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"da1bd4e7-0e0f-4719-b838-4aebf2e50b04\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkSecurityGroups/monitorVmNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"da1bd4e7-0e0f-4719-b838-4aebf2e50b04\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkSecurityGroups/monitorVmNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"da1bd4e7-0e0f-4719-b838-4aebf2e50b04\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkInterfaces/monitorVmVMNic"}]}},{"name":"monitor_vmNSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkSecurityGroups/monitor_vmNSG","etag":"W/\"5d540a74-3bed-4f26-b7bf-b532353b03b8\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a130d9bb-78ce-4e2e-9a3d-dfe516c05c59","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkSecurityGroups/monitor_vmNSG/securityRules/default-allow-ssh","etag":"W/\"5d540a74-3bed-4f26-b7bf-b532353b03b8\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkSecurityGroups/monitor_vmNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"5d540a74-3bed-4f26-b7bf-b532353b03b8\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkSecurityGroups/monitor_vmNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"5d540a74-3bed-4f26-b7bf-b532353b03b8\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkSecurityGroups/monitor_vmNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"5d540a74-3bed-4f26-b7bf-b532353b03b8\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkSecurityGroups/monitor_vmNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"5d540a74-3bed-4f26-b7bf-b532353b03b8\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkSecurityGroups/monitor_vmNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"5d540a74-3bed-4f26-b7bf-b532353b03b8\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkSecurityGroups/monitor_vmNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"5d540a74-3bed-4f26-b7bf-b532353b03b8\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkInterfaces/monitor_vmVMNic"}]}},{"name":"zuhCentOS-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"7d7c7686-a1be-4a06-9cc9-d5b003ecb6fd","securityRules":[{"name":"HTTP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/securityRules/HTTP","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/securityRules/HTTPS","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/securityRules/SSH","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/securityRules/RDP","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"zuhCentOSnsg814","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"c1963726-e663-4563-bb02-f95abdf57625","securityRules":[{"name":"HTTP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/securityRules/HTTP","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/securityRules/HTTPS","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/securityRules/SSH","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/securityRules/RDP","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/AllowVnetInBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/DenyAllInBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/DenyAllOutBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285"}]}},{"name":"zuhWindows2016-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"48082bc6-8192-4662-a146-c3df89310835","securityRules":[{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/securityRules/SSH","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/securityRules/HTTP","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/securityRules/HTTPS","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/securityRules/RDP","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246"}]}},{"name":"fooziipy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"b3d500bf-9a32-4046-928d-e52442ff5338","securityRules":[{"name":"fooziipy983389","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/securityRules/fooziipy983389","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"fooziipy985985","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/securityRules/fooziipy985985","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/AllowVnetInBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/DenyAllInBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/DenyAllOutBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98"}]}},{"name":"fooziipy99","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"b012046c-c5e7-47ef-8ea3-5c7c2faea68a","securityRules":[{"name":"fooziipy993389","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/securityRules/fooziipy993389","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"fooziipy995985","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/securityRules/fooziipy995985","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/AllowVnetInBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/DenyAllInBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/DenyAllOutBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99"}]}}]}' + string: '{"value":[{"name":"feng-rhel-8NSG","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f2c66cf2-dd57-48f3-9cc6-6b614d0b8399","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/securityRules/default-allow-ssh","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-rhel-8VMNic"}]}},{"name":"fengubuntu-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"ae4ae762-8327-4b91-adf6-268d870e4854","securityRules":[{"name":"HTTPS","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/securityRules/HTTPS","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"SSH","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/securityRules/SSH","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"fengubuntunsg742","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"53bb2e29-e307-445e-96dc-2e01b9c47321","securityRules":[{"name":"Port_443","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/securityRules/Port_443","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":100,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Port_22","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/securityRules/Port_22","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":110,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/AllowVnetInBound","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/DenyAllInBound","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/DenyAllOutBound","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"feng_rhel_8NSG","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"6eee2bc0-0e9a-486b-86f0-66b678202937","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/securityRules/default-allow-ssh","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng_rhel_8VMNic"}]}},{"name":"vm-01-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"3a604239-6b94-4e07-a874-e0675debb870","securityRules":[{"name":"SSH","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/securityRules/SSH","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-01543"}]}},{"name":"vm-02-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"72534917-5af7-411e-bf53-8ea9ad151d6b","securityRules":[{"name":"Port_22","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/securityRules/Port_22","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","description":"Deny + 22","protocol":"*","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":100,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-02540"}]}},{"name":"aNSG","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"e13175f2-5e2e-4de0-960d-7546b4693f26","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/securityRules/default-allow-ssh","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic"}]}},{"name":"start-1NSG","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f18b8899-f28a-4a6a-8bb3-5cde714538e0","securityRules":[{"name":"rdp","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/securityRules/rdp","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic"}]}},{"name":"pysecgroupc575136b","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"e27f296d-8a46-499c-9b5a-fca4878210c6","securityRules":[{"name":"pysecgrouprulec575136b","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","description":"Test + security rule","protocol":"Tcp","sourcePortRange":"655","destinationPortRange":"123-3500","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"zimsvm-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"d83ea86a-01f7-4bce-80ff-d9e6cb705f0a","securityRules":[],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkInterfaces/zimsvm64"}]}},{"name":"zuhlinux-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"4068e122-56e9-48ef-aad1-b196d45cd374","securityRules":[{"name":"SSH","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/securityRules/SSH","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.255.51","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359"}]}},{"name":"zuhtestvm-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"d3a995db-663b-4363-8d32-a1f857e593f1","securityRules":[{"name":"RDP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/securityRules/RDP","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638"}]}},{"name":"zuhUbuntu-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"73db128e-9a50-4012-b9e9-bd2aac698343","securityRules":[{"name":"SSH","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/securityRules/SSH","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/securityRules/RDP","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/securityRules/HTTPS","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/securityRules/HTTP","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26"}]}},{"name":"vm22-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"902181db-c84c-48d0-ba1f-bf12fcb4bbf0","securityRules":[{"name":"SSH","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/securityRules/SSH","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/securityRules/HTTPS","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523"}]}},{"name":"feng-ubuntu-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"0d7bdd03-7d49-4855-8b89-addc8a0f2ee1","securityRules":[{"name":"SSH","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/securityRules/SSH","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-ubuntu388"}]}},{"name":"jlvmwin1-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9b65c627-f3bc-4682-9f3f-37798414e70e","securityRules":[{"name":"RDP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/securityRules/RDP","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184"}]}},{"name":"yugangw1NSG","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"1b94e33b-7f57-4b2f-aa0f-b3b7e606abdf","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/securityRules/default-allow-ssh","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw1VMNic"}]}},{"name":"zuhWin-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"70ec8b54-e05c-4cef-8663-1bd6cb7dc65c","securityRules":[{"name":"Port_3389","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/securityRules/Port_3389","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154"}]}},{"name":"test_vm1NSG","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"84371eda-07a4-4057-a5e4-486d4d81b6c6","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/securityRules/default-allow-ssh","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm1VMNic"}]}},{"name":"test_vm2NSG","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"b0c50336-10a2-4b4e-a78d-54d34f1a457e","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/securityRules/default-allow-ssh","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm2VMNic"}]}},{"name":"zuhCentOS-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"7d7c7686-a1be-4a06-9cc9-d5b003ecb6fd","securityRules":[{"name":"HTTP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/securityRules/HTTP","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/securityRules/HTTPS","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"SSH","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/securityRules/SSH","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/securityRules/RDP","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"zuhCentOSnsg814","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"c1963726-e663-4563-bb02-f95abdf57625","securityRules":[{"name":"HTTP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/securityRules/HTTP","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/securityRules/HTTPS","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"SSH","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/securityRules/SSH","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/securityRules/RDP","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/AllowVnetInBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/DenyAllInBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/DenyAllOutBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285"}]}},{"name":"zuhWindows2016-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"48082bc6-8192-4662-a146-c3df89310835","securityRules":[{"name":"SSH","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/securityRules/SSH","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/securityRules/HTTP","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/securityRules/HTTPS","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/securityRules/RDP","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246"}]}},{"name":"vm-storage-sku-testNSG","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0b9da223-a223-4cec-ba40-92b311ace383","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/securityRules/default-allow-ssh","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkInterfaces/vm-storage-sku-testVMNic"}]}},{"name":"vm-ultrassdNSG","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f6f25400-6a96-434c-9ce5-3c72450139ce","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/securityRules/default-allow-ssh","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/0/networkInterfaces/vmultd1f9Nic"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/1/networkInterfaces/vmultd1f9Nic"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/2/networkInterfaces/vmultd1f9Nic"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/3/networkInterfaces/vmultd1f9Nic"}]}},{"name":"fooziipy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"b3d500bf-9a32-4046-928d-e52442ff5338","securityRules":[{"name":"fooziipy983389","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/securityRules/fooziipy983389","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"fooziipy985985","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/securityRules/fooziipy985985","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/AllowVnetInBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/DenyAllInBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/DenyAllOutBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98"}]}},{"name":"fooziipy99","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"b012046c-c5e7-47ef-8ea3-5c7c2faea68a","securityRules":[{"name":"fooziipy993389","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/securityRules/fooziipy993389","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"fooziipy995985","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/securityRules/fooziipy995985","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/AllowVnetInBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/DenyAllInBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/DenyAllOutBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99"}]}}]}' headers: cache-control: - no-cache content-length: - - '239587' + - '165427' content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:04:55 GMT + - Tue, 22 Oct 2019 06:09:47 GMT expires: - '-1' pragma: @@ -905,12 +834,12 @@ interactions: x-content-type-options: - nosniff x-ms-original-request-ids: - - db07e40b-b43c-4c5e-b3b4-e4183a14b756 - - 964cfbb9-a3b8-47fb-99a0-7e8841936f5c - - c598d91c-2ae2-4341-9624-96a98428dfcc - - 69d688dc-21c8-4f1e-987e-013ad2f4bef7 - - 4697a1ac-4c06-4c8d-8b5c-a32a190f52d8 - - 76391231-fcbe-4ed0-9f97-a386e6ca4ff4 + - 7069dabf-ba66-402b-bd20-4a07eaaf2396 + - 7b06d897-b53f-4c80-82f7-ca47a7a83513 + - 27a437af-b7f3-442c-8c63-9cc2cc101c42 + - 0abb5cdb-f47f-41a2-ba4c-56c729d08884 + - a17d8868-09bc-4e22-8f1c-5e57035a6b4c + - 1afd9094-f16b-430e-8c57-12701cc881ce status: code: 200 message: OK @@ -932,15 +861,15 @@ interactions: - application/json; charset=utf-8 User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ - ,\r\n \"etag\": \"W/\\\"354fb249-d408-4b6b-8342-e041ddaac82c\\\"\",\r\n \ + string: "{\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ + ,\r\n \"etag\": \"W/\\\"c12523cd-5b80-4061-b0c5-eb0bfe4737ec\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\",\r\n\ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ description\": \"New Test security rule\",\r\n \"protocol\": \"Tcp\",\r\ @@ -952,7 +881,7 @@ interactions: : []\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/9c4a16d0-135b-4c60-a69d-2ea59df755c7?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/9c410b4d-f9c6-4e5d-80f4-7dc0b998a611?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -960,7 +889,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:04:55 GMT + - Tue, 22 Oct 2019 06:09:48 GMT expires: - '-1' pragma: @@ -973,9 +902,9 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 546aef74-d13b-4fcb-9aee-b83852adf305 + - a39422f8-fb90-47f6-9914-d387c571d664 x-ms-ratelimit-remaining-subscription-writes: - - '1198' + - '1197' status: code: 201 message: Created @@ -990,9 +919,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/9c4a16d0-135b-4c60-a69d-2ea59df755c7?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/9c410b4d-f9c6-4e5d-80f4-7dc0b998a611?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -1004,7 +933,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:05:06 GMT + - Tue, 22 Oct 2019 06:10:00 GMT expires: - '-1' pragma: @@ -1021,7 +950,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 69856079-0056-4227-bca9-a986a03d62ff + - c9cfc5b8-9bf5-4041-9287-e14fd349dcf2 status: code: 200 message: OK @@ -1036,13 +965,13 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ - ,\r\n \"etag\": \"W/\\\"c037dd86-d4d0-4c14-9ee3-9630481e55a6\\\"\",\r\n \ + string: "{\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ + ,\r\n \"etag\": \"W/\\\"1ed19568-9ec9-40bc-bcef-a2149584495f\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\",\r\n\ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ description\": \"New Test security rule\",\r\n \"protocol\": \"Tcp\",\r\ @@ -1060,9 +989,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:05:07 GMT + - Tue, 22 Oct 2019 06:10:00 GMT etag: - - W/"c037dd86-d4d0-4c14-9ee3-9630481e55a6" + - W/"1ed19568-9ec9-40bc-bcef-a2149584495f" expires: - '-1' pragma: @@ -1079,7 +1008,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - e431c513-e866-4270-8525-0cbe0b4d2679 + - 7cfc4dc1-9f23-4560-96f5-1cc384362804 status: code: 200 message: OK @@ -1094,15 +1023,15 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ - ,\r\n \"etag\": \"W/\\\"c037dd86-d4d0-4c14-9ee3-9630481e55a6\\\"\",\r\n \ + string: "{\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ + ,\r\n \"etag\": \"W/\\\"1ed19568-9ec9-40bc-bcef-a2149584495f\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\",\r\n\ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ description\": \"New Test security rule\",\r\n \"protocol\": \"Tcp\",\r\ @@ -1120,9 +1049,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:05:07 GMT + - Tue, 22 Oct 2019 06:09:59 GMT etag: - - W/"c037dd86-d4d0-4c14-9ee3-9630481e55a6" + - W/"1ed19568-9ec9-40bc-bcef-a2149584495f" expires: - '-1' pragma: @@ -1139,7 +1068,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - d8ecec3d-77ed-4156-9772-41a133c9baec + - ee66fe41-0583-46bf-8103-109c8774b2ae status: code: 200 message: OK @@ -1154,16 +1083,16 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pysecgrouprulec575136b\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ - ,\r\n \"etag\": \"W/\\\"c037dd86-d4d0-4c14-9ee3-9630481e55a6\\\"\",\r\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ + ,\r\n \"etag\": \"W/\\\"1ed19568-9ec9-40bc-bcef-a2149584495f\\\"\",\r\ \n \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"Test security rule\",\r\n \"protocol\"\ @@ -1173,8 +1102,8 @@ interactions: \n \"direction\": \"Inbound\",\r\n \"sourcePortRanges\": [],\r\ \n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n },\r\ - \n {\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ - ,\r\n \"etag\": \"W/\\\"c037dd86-d4d0-4c14-9ee3-9630481e55a6\\\"\",\r\ + \n {\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ + ,\r\n \"etag\": \"W/\\\"1ed19568-9ec9-40bc-bcef-a2149584495f\\\"\",\r\ \n \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"description\": \"New Test security rule\",\r\n \"protocol\"\ @@ -1193,7 +1122,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:05:07 GMT + - Tue, 22 Oct 2019 06:10:00 GMT expires: - '-1' pragma: @@ -1210,7 +1139,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - a20f7680-3359-40d9-9efd-388f37f7ae66 + - 238dc16c-773b-4605-b0a2-81bd30b92a76 status: code: 200 message: OK @@ -1227,27 +1156,27 @@ interactions: - '0' User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2019-09-01 response: body: string: '' headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/135c1c03-aa9c-4faf-8641-8a7d42d017ab?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/08f8b0c7-0047-4bb6-909a-fad2198cb493?api-version=2019-09-01 cache-control: - no-cache content-length: - '0' date: - - Tue, 08 Oct 2019 12:05:07 GMT + - Tue, 22 Oct 2019 06:10:00 GMT expires: - '-1' location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/135c1c03-aa9c-4faf-8641-8a7d42d017ab?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operationResults/08f8b0c7-0047-4bb6-909a-fad2198cb493?api-version=2019-09-01 pragma: - no-cache server: @@ -1258,9 +1187,9 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 885e6ba8-85a9-433e-9b96-46305dde0804 + - 947a3c0f-b619-47eb-842a-f4e0c8a4a67a x-ms-ratelimit-remaining-subscription-deletes: - - '14999' + - '14997' status: code: 202 message: Accepted @@ -1275,9 +1204,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/135c1c03-aa9c-4faf-8641-8a7d42d017ab?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/08f8b0c7-0047-4bb6-909a-fad2198cb493?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -1289,7 +1218,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:05:18 GMT + - Tue, 22 Oct 2019 06:10:12 GMT expires: - '-1' pragma: @@ -1306,7 +1235,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 5aa578e7-5fc1-4a56-ad03-9805eaa03a35 + - 988e7ce5-903b-47b9-b7c5-a79233442774 status: code: 200 message: OK @@ -1323,27 +1252,27 @@ interactions: - '0' User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2019-09-01 response: body: string: '' headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/dc2c9663-04ec-4821-86b8-8b0c21f1ec86?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/dc3fc943-10f8-4daa-b870-030ba13f6595?api-version=2019-09-01 cache-control: - no-cache content-length: - '0' date: - - Tue, 08 Oct 2019 12:05:19 GMT + - Tue, 22 Oct 2019 06:10:13 GMT expires: - '-1' location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/dc2c9663-04ec-4821-86b8-8b0c21f1ec86?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operationResults/dc3fc943-10f8-4daa-b870-030ba13f6595?api-version=2019-09-01 pragma: - no-cache server: @@ -1354,9 +1283,9 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 24159063-e8b6-4418-9637-f6141f78e40e + - 33685081-733b-4664-80e5-e646ee3a09d8 x-ms-ratelimit-remaining-subscription-deletes: - - '14998' + - '14996' status: code: 202 message: Accepted @@ -1371,9 +1300,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/dc2c9663-04ec-4821-86b8-8b0c21f1ec86?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/dc3fc943-10f8-4daa-b870-030ba13f6595?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -1385,7 +1314,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:05:30 GMT + - Tue, 22 Oct 2019 06:10:23 GMT expires: - '-1' pragma: @@ -1402,7 +1331,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 977b33e5-075d-43ab-8cb0-78958a026256 + - 886f7ab7-2560-44b2-b625-c5cba6b63b26 status: code: 200 message: OK diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_public_ip_addresses.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_public_ip_addresses.yaml index 392d84a74ca5..6000eae257fc 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_public_ip_addresses.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_public_ip_addresses.yaml @@ -15,25 +15,25 @@ interactions: - application/json; charset=utf-8 User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyipname773e115f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ - ,\r\n \"etag\": \"W/\\\"5d6849ba-8f7e-434b-9424-59f0ab482737\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyipname773e115f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ + ,\r\n \"etag\": \"W/\\\"333ce44c-de4c-4218-b0e3-2cc8959dd472\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"tags\": {\r\n \"key\": \"value\"\r\n\ \ },\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\ - \n \"resourceGuid\": \"b3af2b17-a3d0-4e94-8f33-80151aa28641\",\r\n \"\ + \n \"resourceGuid\": \"e87c6762-e2e8-49cc-9011-82fbb711949a\",\r\n \"\ publicIPAddressVersion\": \"IPv4\",\r\n \"publicIPAllocationMethod\": \"\ Dynamic\",\r\n \"idleTimeoutInMinutes\": 4,\r\n \"ipTags\": []\r\n \ \ },\r\n \"type\": \"Microsoft.Network/publicIPAddresses\",\r\n \"sku\"\ : {\r\n \"name\": \"Basic\",\r\n \"tier\": \"Regional\"\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b29cafe7-8094-444b-95a7-f12b7e8707b0?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/99b8cc9c-d644-495f-936c-f33b81496cd7?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -41,7 +41,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:05:52 GMT + - Tue, 22 Oct 2019 06:10:38 GMT expires: - '-1' pragma: @@ -54,9 +54,9 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 3756c40e-aee1-4c1b-b5e2-3164e784f869 + - 9aa3ea7d-7c7c-49b6-9241-2057ffdca74b x-ms-ratelimit-remaining-subscription-writes: - - '1197' + - '1199' status: code: 201 message: Created @@ -71,9 +71,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b29cafe7-8094-444b-95a7-f12b7e8707b0?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/99b8cc9c-d644-495f-936c-f33b81496cd7?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -85,7 +85,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:05:54 GMT + - Tue, 22 Oct 2019 06:10:40 GMT expires: - '-1' pragma: @@ -102,7 +102,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 26e7a029-e65f-494b-b43b-5b48fcbc87f1 + - 01fd8067-8043-4f6f-91ff-43989df6359c status: code: 200 message: OK @@ -117,16 +117,16 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyipname773e115f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ - ,\r\n \"etag\": \"W/\\\"75175b45-04c8-49a5-a909-acabc48ec4fb\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyipname773e115f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ + ,\r\n \"etag\": \"W/\\\"ab5ede00-080a-40dd-a7b0-45ea7b547c49\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"tags\": {\r\n \"key\": \"value\"\r\n\ \ },\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\ - \n \"resourceGuid\": \"b3af2b17-a3d0-4e94-8f33-80151aa28641\",\r\n \"\ + \n \"resourceGuid\": \"e87c6762-e2e8-49cc-9011-82fbb711949a\",\r\n \"\ publicIPAddressVersion\": \"IPv4\",\r\n \"publicIPAllocationMethod\": \"\ Dynamic\",\r\n \"idleTimeoutInMinutes\": 4,\r\n \"ipTags\": []\r\n \ \ },\r\n \"type\": \"Microsoft.Network/publicIPAddresses\",\r\n \"sku\"\ @@ -139,9 +139,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:05:55 GMT + - Tue, 22 Oct 2019 06:10:40 GMT etag: - - W/"75175b45-04c8-49a5-a909-acabc48ec4fb" + - W/"ab5ede00-080a-40dd-a7b0-45ea7b547c49" expires: - '-1' pragma: @@ -158,7 +158,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 9337a199-f63a-4532-9939-7b33db7d7762 + - a82a4f40-f6db-4f26-9f0e-faa313642728 status: code: 200 message: OK @@ -173,18 +173,18 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyipname773e115f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ - ,\r\n \"etag\": \"W/\\\"75175b45-04c8-49a5-a909-acabc48ec4fb\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyipname773e115f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ + ,\r\n \"etag\": \"W/\\\"ab5ede00-080a-40dd-a7b0-45ea7b547c49\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"tags\": {\r\n \"key\": \"value\"\r\n\ \ },\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\ - \n \"resourceGuid\": \"b3af2b17-a3d0-4e94-8f33-80151aa28641\",\r\n \"\ + \n \"resourceGuid\": \"e87c6762-e2e8-49cc-9011-82fbb711949a\",\r\n \"\ publicIPAddressVersion\": \"IPv4\",\r\n \"publicIPAllocationMethod\": \"\ Dynamic\",\r\n \"idleTimeoutInMinutes\": 4,\r\n \"ipTags\": []\r\n \ \ },\r\n \"type\": \"Microsoft.Network/publicIPAddresses\",\r\n \"sku\"\ @@ -197,9 +197,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:05:55 GMT + - Tue, 22 Oct 2019 06:10:40 GMT etag: - - W/"75175b45-04c8-49a5-a909-acabc48ec4fb" + - W/"ab5ede00-080a-40dd-a7b0-45ea7b547c49" expires: - '-1' pragma: @@ -216,7 +216,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 197d8439-9e66-4c54-a3a5-47afc66f84e7 + - 769f6e8d-729e-4040-bfd7-8c5f9edfd184 status: code: 200 message: OK @@ -231,19 +231,19 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pyipname773e115f\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ - ,\r\n \"etag\": \"W/\\\"75175b45-04c8-49a5-a909-acabc48ec4fb\\\"\",\r\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ + ,\r\n \"etag\": \"W/\\\"ab5ede00-080a-40dd-a7b0-45ea7b547c49\\\"\",\r\ \n \"location\": \"westus\",\r\n \"tags\": {\r\n \"key\"\ : \"value\"\r\n },\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"b3af2b17-a3d0-4e94-8f33-80151aa28641\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"e87c6762-e2e8-49cc-9011-82fbb711949a\"\ ,\r\n \"publicIPAddressVersion\": \"IPv4\",\r\n \"publicIPAllocationMethod\"\ : \"Dynamic\",\r\n \"idleTimeoutInMinutes\": 4,\r\n \"ipTags\"\ : []\r\n },\r\n \"type\": \"Microsoft.Network/publicIPAddresses\"\ @@ -257,7 +257,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:05:55 GMT + - Tue, 22 Oct 2019 06:10:40 GMT expires: - '-1' pragma: @@ -274,7 +274,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 0fcee741-26b8-456c-89ba-3235e170aed2 + - 1b22f19b-2e6a-4039-bb32-c42515d9cbad status: code: 200 message: OK @@ -289,23 +289,23 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/publicIPAddresses?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/publicIPAddresses?api-version=2019-09-01 response: body: - string: '{"value":[{"name":"vm-namePublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Network/publicIPAddresses/vm-namePublicIP","etag":"W/\"9210c8ae-4953-47a3-a1b1-7b8dee580c54\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"cc7e38e7-23d4-424a-84d6-fa2d46b20731","ipAddress":"40.78.90.252","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Network/networkInterfaces/vm-nameVMNic/ipConfigurations/ipconfigvm-name"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"cli-test-vmmwqr6rnm5pcjxgkxja5PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Network/publicIPAddresses/cli-test-vmmwqr6rnm5pcjxgkxja5PublicIP","etag":"W/\"b6412e2a-8316-4041-8681-af5a0f4fcedf\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f9b506ce-a8dd-4f25-a21b-7e8102671b2e","ipAddress":"40.78.17.143","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Network/networkInterfaces/cli-test-vmmwqr6rnm5pcjxgkxja5VMNic/ipConfigurations/ipconfigcli-test-vmmwqr6rnm5pcjxgkxja5"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm1PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/publicIPAddresses/vm1PublicIP","etag":"W/\"44cde4f6-d99b-40d7-9e98-1ae03222c257\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"aa61a1d2-4b98-4cd2-b6d3-b4b64b13d6da","ipAddress":"13.64.112.139","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkInterfaces/vm1VMNic/ipConfigurations/ipconfigvm1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm2PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/publicIPAddresses/vm2PublicIP","etag":"W/\"b8d4777e-12b1-4888-bb36-3737d9343c38\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"df797327-4212-4213-86ea-34ddd0f20457","ipAddress":"168.62.212.38","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkInterfaces/vm2VMNic/ipConfigurations/ipconfigvm2"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vmss1LBPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP","etag":"W/\"29ef52a9-6fc5-422a-918d-7924b8b87368\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"de3c2fb2-5424-4bbb-877e-77d85ed6ba21","ipAddress":"138.91.192.147","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"cli-test-vmss-local-1LBPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Network/publicIPAddresses/cli-test-vmss-local-1LBPublicIP","etag":"W/\"8784d427-8e48-496e-953c-e40be72785c1\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"25e0c2e0-c018-4cb4-9091-dfd90a0681c5","ipAddress":"40.85.152.146","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Network/loadBalancers/cli-test-vmss-local-1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"PublicIPvrflb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_existing_idskfymxzondfqnj5dthktz5642i6kemhpnp2og7r5u7s/providers/Microsoft.Network/publicIPAddresses/PublicIPvrflb","etag":"W/\"151351f7-f857-4c41-9541-61f3c5af6aff\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"eed7a733-a47b-479d-ae63-47a23cb3d282","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_existing_idskfymxzondfqnj5dthktz5642i6kemhpnp2og7r5u7s/providers/Microsoft.Network/loadBalancers/vrflb/frontendIPConfigurations/LoadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vmss1LBPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP","etag":"W/\"f517ebff-9372-4f2d-9585-50611ad55115\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"3bdda6ae-6601-484f-8ce4-b8af75af1d18","ipAddress":"104.42.120.128","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"apt1PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_w_agwtq5qrlgrmxgkrmohihmdzytopjwvcqmj6a7ppuihsl5vm7rz4/providers/Microsoft.Network/publicIPAddresses/apt1PublicIP","etag":"W/\"36092388-56d3-4185-adf4-e3c79cc8eb4f\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"46c9770f-cf36-45be-be89-c4a1b8ce57d8","ipAddress":"52.160.65.145","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"dnsSettings":{"fqdn":"0c602485-e0e4-45b8-b5c0-4b91fc5c79a7.cloudapp.net"},"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_w_agwtq5qrlgrmxgkrmohihmdzytopjwvcqmj6a7ppuihsl5vm7rz4/providers/Microsoft.Network/applicationGateways/apt1/frontendIPConfigurations/appGwFrontendIP"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"winvmssLBPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_update_aupwr6f7s56h72i42rtexgc6j3sulqhdjyjcwvdjsvnc2jxtac3z55/providers/Microsoft.Network/publicIPAddresses/winvmssLBPublicIP","etag":"W/\"66ca451a-a24a-4878-897a-791a5b56ae3b\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"cfc95490-9265-4ed3-989b-bcfe49ae496a","ipAddress":"40.78.91.241","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_update_aupwr6f7s56h72i42rtexgc6j3sulqhdjyjcwvdjsvnc2jxtac3z55/providers/Microsoft.Network/loadBalancers/winvmssLB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vmss1LBPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP","etag":"W/\"ff48d2b8-5dfc-492a-85fa-971b0349c97b\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"5270e63a-aacf-4b90-8399-d082c175643d","ipAddress":"40.78.92.207","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fromimage1PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/publicIPAddresses/fromimage1PublicIP","etag":"W/\"5c2c34f7-18b6-4040-9e15-ade90ab2cfda\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"464712b7-f213-4685-a92b-63fa32736aa0","ipAddress":"40.83.164.122","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/fromimage1VMNic/ipConfigurations/ipconfigfromimage1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fromimage2PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/publicIPAddresses/fromimage2PublicIP","etag":"W/\"ac29e99f-d3f6-4ff0-9623-649089e0ec7c\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"5f6f42ad-7e96-49b9-a52c-80ea1237653f","ipAddress":"40.78.123.45","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/fromimage2VMNic/ipConfigurations/ipconfigfromimage2"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm-managed-diskPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/publicIPAddresses/vm-managed-diskPublicIP","etag":"W/\"a43cdefd-ed8e-4172-8a88-2356142e33a8\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"6fca9b53-bed6-4f81-b07f-f5537c758347","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/vm-managed-diskVMNic/ipConfigurations/ipconfigvm-managed-disk"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm-unmanaged-diskPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/publicIPAddresses/vm-unmanaged-diskPublicIP","etag":"W/\"2f0cae93-1cb3-40bc-bb19-d5be545329be\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d4aed863-6db1-4f87-aa69-3fdb9037bbd3","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/vm-unmanaged-diskVMNic/ipConfigurations/ipconfigvm-unmanaged-disk"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm3PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/publicIPAddresses/vm3PublicIP","etag":"W/\"a979e15e-152d-45fe-b7d5-4bc1f88b92d3\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"95ae5d80-321f-4edf-88db-eb259bc38f4c","ipAddress":"13.64.236.34","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/vm3VMNic/ipConfigurations/ipconfigvm3"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vmss1LBPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP","etag":"W/\"1aa3d5dc-7077-44fc-8dcf-400af3a8252d\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"b90b7710-8a9f-4536-9fe6-9bebc419ce34","ipAddress":"40.83.215.248","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vmss2LBPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/publicIPAddresses/vmss2LBPublicIP","etag":"W/\"ee5ef4e0-95e5-4438-826d-b8bc20c29df3\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"8fd384ef-ca3b-418f-a041-3f517890b8d9","ipAddress":"40.118.184.180","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"pubip2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vpn_gatewayvw7airivlqrqz3bcd5uhmduodlahzmqr2tcg5rcbuv6s3uz7gq3zk4f/providers/Microsoft.Network/publicIPAddresses/pubip2","etag":"W/\"396b417f-b2ac-4263-aafc-c8848d6e38d4\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"28a8847b-7bfd-41b7-824f-4af653096d0e","ipAddress":"40.78.26.23","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vpn_gatewayvw7airivlqrqz3bcd5uhmduodlahzmqr2tcg5rcbuv6s3uz7gq3zk4f/providers/Microsoft.Network/virtualNetworkGateways/gateway2/ipConfigurations/vnetGatewayConfig0"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fengubuntu-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/fengubuntu-ip","etag":"W/\"2708d481-f56e-49d6-b58f-29bc24e59078\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"d038d945-2784-4dae-9b9c-61587228ebc6","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/fengubuntu763/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fengubuntuip681","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/fengubuntuip681","etag":"W/\"d542eea8-af8f-460f-b50b-40c0575a7d2d\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"c4d97e4a-22dc-4bbc-9653-a42e9a46b9d9","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/fengubuntu523/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"aPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/aPublicIP","etag":"W/\"952770b9-54d1-4ab3-9115-c84cc2ffaea5\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"16d71fe5-d128-4e03-bb9c-14783993d81b","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic/ipConfigurations/ipconfiga"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"asdfLBPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/asdfLBPublicIP","etag":"W/\"03eb3149-a5e4-48ac-ba08-a1de1b15e98c\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"98662e45-2a17-4b40-b7e7-ba18729cd3a6","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"start-1PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/start-1PublicIP","etag":"W/\"6bd25edd-2c48-4399-a9f4-c4b0f1e168ef\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"49f0b2b3-658f-4ed7-a555-127f33a25ba9","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic/ipConfigurations/ipconfigstart-1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm5LBPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/vm5LBPublicIP","etag":"W/\"2a5e9243-3c45-4601-bc23-7d8fc816ad55\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"8802e8ca-267a-4c22-9b59-fb6f5f1d982d","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"pyipname773e115f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f","etag":"W/\"75175b45-04c8-49a5-a909-acabc48ec4fb\"","location":"westus","tags":{"key":"value"},"properties":{"provisioningState":"Succeeded","resourceGuid":"b3af2b17-a3d0-4e94-8f33-80151aa28641","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"workspacetestvmPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/publicIPAddresses/workspacetestvmPublicIP","etag":"W/\"b9fdd59d-756b-4e6b-aeb9-31b1473ae746\"","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"49fe40a2-6ef3-41eb-8960-26063a7ad568","ipAddress":"13.92.188.25","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/networkInterfaces/workspacetestvmVMNic/ipConfigurations/ipconfigworkspacetestvm"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fozippy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/publicIPAddresses/fozippy98","etag":"W/\"2232332e-df20-4b5a-ac6f-bc2c6a083e37\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"b93c103a-f62e-4fc1-bc1d-d2db4fc084ac","ipAddress":"52.224.138.66","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"dnsSettings":{"domainNameLabel":"fozippy98-663ad9","fqdn":"fozippy98-663ad9.eastus.cloudapp.azure.com"},"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"ubuntuPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/publicIPAddresses/ubuntuPublicIP","etag":"W/\"c618c5c7-146b-4a62-a613-1fc716cea9dc\"","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"237e52b4-a122-477b-b2f9-9ff608f0e82c","ipAddress":"52.234.231.76","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkInterfaces/ubuntuVMNic/ipConfigurations/ipconfigubuntu"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm1PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/publicIPAddresses/vm1PublicIP","etag":"W/\"3740d4f5-0ffd-437d-b615-889148f54ed6\"","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"8beb7272-c397-4113-a137-7dc7b3e721b9","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkInterfaces/vm1VMNic/ipConfigurations/ipconfigvm1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vmss1LBPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP","etag":"W/\"aae0329b-2303-47e3-9b69-5f2272087aec\"","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"1f136968-9339-45a6-9c6a-ad3ab553a1d0","ipAddress":"13.72.106.44","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhlinux-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhlinux-ip","etag":"W/\"02c7853a-b8b6-4dcd-9b90-565e9120f839\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"005cc893-a7f4-46e1-bf41-348f11ab0aec","ipAddress":"13.82.20.138","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhtestip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhtestip","etag":"W/\"f3d7f2f1-5b8e-4adf-8d81-3e84c7a9ffd9\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"8a670d8c-f98e-4c4c-a89c-8388b960a5b0","ipAddress":"52.151.240.59","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/applicationGateways/aaaaa/frontendIPConfigurations/appGwPublicFrontendIp"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"zuhtestvm-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhtestvm-ip","etag":"W/\"44707c4b-5976-471b-b9a1-1ddf9401b1a5\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"970083ff-29f0-4c04-bdd7-5e989819309a","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhUbuntu-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhUbuntu-ip","etag":"W/\"a13042b0-8358-4245-8d08-128017e17c99\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"7279e09f-89d0-421f-aee5-a148f82c503e","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm22-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/publicIPAddresses/vm22-ip","etag":"W/\"2015b2b9-354f-43da-8dbd-76172332e5d4\"","location":"eastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9b9cee2b-6b27-46f1-a140-da711e07b716","ipAddress":"52.175.18.106","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"acrtest-vm1PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/publicIPAddresses/acrtest-vm1PublicIP","etag":"W/\"2cb37437-0a4f-48d3-9fe3-8a3037c7e9da\"","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"158f181f-00ef-409a-a909-549b3f64b98c","ipAddress":"168.63.236.220","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm1VMNic/ipConfigurations/ipconfigacrtest-vm1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"acrtest-vm2PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/publicIPAddresses/acrtest-vm2PublicIP","etag":"W/\"75c610cf-7670-492a-8bc2-e37c634a6ea1\"","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"656519ea-b013-40b8-9f3e-2478e748feec","ipAddress":"23.101.25.60","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm2VMNic/ipConfigurations/ipconfigacrtest-vm2"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"acrtest-vm3PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/publicIPAddresses/acrtest-vm3PublicIP","etag":"W/\"5d7b178b-4b23-4a93-9e0c-1a93bf6e61bd\"","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"65e2ea0a-188e-4043-bdaa-41562d8534ac","ipAddress":"52.187.8.101","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm3VMNic/ipConfigurations/ipconfigacrtest-vm3"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"acrtest-vm4PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/publicIPAddresses/acrtest-vm4PublicIP","etag":"W/\"849e9756-8549-4a24-8c0f-29b7a1fa4070\"","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"084ada19-09ee-4786-98e3-f3eae000481f","ipAddress":"23.101.23.108","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm4VMNic/ipConfigurations/ipconfigacrtest-vm4"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"helm-1PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Network/publicIPAddresses/helm-1PublicIP","etag":"W/\"8535c982-0dc0-44eb-b6fb-6c266c76cc19\"","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"4ef6ad2a-fedf-4524-ad7e-4c9bbfd5efba","ipAddress":"52.163.209.132","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Network/networkInterfaces/helm-1VMNic/ipConfigurations/ipconfighelm-1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"jlvmwin1-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/publicIPAddresses/jlvmwin1-ip","etag":"W/\"5ad463a0-31e2-4c31-a64c-d20a14ed387a\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"2bd424bf-f1b4-4d14-abd2-54f10f77d9e4","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"yugangw-vm1PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/publicIPAddresses/yugangw-vm1PublicIP","etag":"W/\"2fbf9864-98d0-4dbe-a9c4-6c654d741c08\"","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"ffcebce7-13b1-4472-9940-7bd9f19748d6","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw-vm1VMNic/ipConfigurations/ipconfigyugangw-vm1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhWin-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhWin-ip","etag":"W/\"5d880cb0-4ae3-43ca-89b8-b109a67e77a4\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"2a645b1e-8c8b-4745-b910-c3406741a982","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"0925ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0925testpe/providers/Microsoft.Network/publicIPAddresses/0925ip","etag":"W/\"8e64cdce-bb73-40eb-8090-b354e0fe136b\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"11f3b296-ad5f-43c5-a844-e81432d0e2f0","ipAddress":"52.185.65.246","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0925testpe/providers/Microsoft.Network/loadBalancers/0925lb/frontendIPConfigurations/LoadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"monitorVmPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/publicIPAddresses/monitorVmPublicIP","etag":"W/\"d88ad948-b1cf-4576-8a4d-0b5ec0d640bb\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"ddbab0af-a646-4f71-b0f7-f3236cbdc1cd","ipAddress":"104.43.205.150","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkInterfaces/monitorVmVMNic/ipConfigurations/ipconfigmonitorVm"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"monitor_vmPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/publicIPAddresses/monitor_vmPublicIP","etag":"W/\"5fa98538-cb81-4b48-828d-8e87978f1b20\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"5126bfd0-6be1-4444-bd2a-c1c1acecd513","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkInterfaces/monitor_vmVMNic/ipConfigurations/ipconfigmonitor_vm"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"pubip1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/publicIPAddresses/pubip1","etag":"W/\"3e086f49-5e98-4a1a-93c2-cdb47c939438\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0ce167ab-248b-4011-874f-54ba6c3b86b3","ipAddress":"13.86.103.233","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/LoadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"pubip1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpoints5g6w2vswk3ajqexqwta4in3ictwrqwgvneqw3hbnp/providers/Microsoft.Network/publicIPAddresses/pubip1","etag":"W/\"870bb014-98db-4280-9568-8ed71f906431\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"df8f5153-a643-4746-b900-bf2759b3c584","ipAddress":"13.86.120.219","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpoints5g6w2vswk3ajqexqwta4in3ictwrqwgvneqw3hbnp/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/LoadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"pubip1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/publicIPAddresses/pubip1","etag":"W/\"b822e073-6155-4414-8637-7f7f3cd8c26d\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d3b40f30-1aa0-409d-8c94-b8b75e996dd8","ipAddress":"52.158.213.136","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/LoadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"zuhCentOS-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhCentOS-ip","etag":"W/\"edf38eeb-225b-41cf-8c27-d7da5d9fc180\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"0443d949-d8cd-4889-aea2-cec9ddd87239","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhCentOSip151","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhCentOSip151","etag":"W/\"18914e24-75c5-4e97-a768-45ea80c41e96\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"e8a13fb9-f6dd-4e89-b2f8-e7678e1b59a0","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhWindows2016-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhWindows2016-ip","etag":"W/\"313d736b-d53b-466e-9775-2bfd81fe273b\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"61922e62-2cc1-414e-9380-5f4016cddce8","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fooziipy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/publicIPAddresses/fooziipy98","etag":"W/\"abfc07e9-2ee4-4b48-90ad-bffc3160f0f8\"","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"85bd582f-894e-4e72-a920-9dc42fe312fc","ipAddress":"52.167.113.130","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"dnsSettings":{"domainNameLabel":"fooziipy98-4d328e","fqdn":"fooziipy98-4d328e.eastus2.cloudapp.azure.com"},"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98/ipConfigurations/fooziipy98"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fooziipy99","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/publicIPAddresses/fooziipy99","etag":"W/\"f2c111c2-14c8-41d9-9740-8241ba2ffaa0\"","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"10524d83-41ef-420b-bac0-fc8b7cf2101d","ipAddress":"104.208.166.249","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"dnsSettings":{"domainNameLabel":"fooziipy99-4e3d17","fqdn":"fooziipy99-4e3d17.eastus2.cloudapp.azure.com"},"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99/ipConfigurations/fooziipy99"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}}]}' + string: '{"value":[{"name":"myip1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_frontend_ip_private4g2fakklpk5ifocmi72mw5gmvhf3zvf5u3bonj2eehlq/providers/Microsoft.Network/publicIPAddresses/myip1","etag":"W/\"cbffbe7c-4200-4423-bc3d-b499673db231\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"31425e06-df12-4e03-bfeb-4692663084f6","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"pip1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_rewrite_rulesetspm5eoivju7bbk7ji5ig4m5nuu4yreqobo4eio2uj34rrqvf/providers/Microsoft.Network/publicIPAddresses/pip1","etag":"W/\"0a67f9ae-9ffb-4f78-be44-66101b8a9c5b\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"c914d964-e320-400e-a0f8-839c6d52d80d","ipAddress":"13.86.251.247","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"pip1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_rewrite_rulesetsqdemdi2b6abi4kp6jz2yqszfx47uy35cdveusufscfyjrck/providers/Microsoft.Network/publicIPAddresses/pip1","etag":"W/\"11faf0e2-6719-4227-98bf-38ac0cbeae4d\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"c39c4e10-277d-48e7-98ed-ebeeb6262d6a","ipAddress":"13.86.249.150","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"pip1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_app_gateway_waf_configqmmu6wjrdktmmocgings2wpaeenqmgbn7xf2eug5swlm/providers/Microsoft.Network/publicIPAddresses/pip1","etag":"W/\"853d031c-2898-4ef6-a16d-ec3754b8f9ff\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f1cc2c50-b66c-42cf-9f72-22090fc9f20b","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vmss1LBPublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP","etag":"W/\"21282bef-ac33-4690-b9ca-cefe4f27b8bd\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f54d6572-a934-4587-b809-9f34ee2df61b","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"feng-rhel-8PublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/feng-rhel-8PublicIP","etag":"W/\"69a4def0-9093-474c-9b3f-1968b99b213e\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"43ff13e1-ab31-49dd-84f5-3d9bb820344d","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-rhel-8VMNic/ipConfigurations/ipconfigfeng-rhel-8"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fengip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/fengip","etag":"W/\"f17c5c29-1620-4789-801a-c46b60ea016e\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"f3890ab5-fde6-428d-a3bb-a8ec50495af9","ipAddress":"104.42.199.57","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworkGateways/fenggw/ipConfigurations/default"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fengubuntu-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/fengubuntu-ip","etag":"W/\"a42b5d2f-27ed-4f28-a546-c94bd0291808\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"d038d945-2784-4dae-9b9c-61587228ebc6","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fengubuntuip681","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/fengubuntuip681","etag":"W/\"fb99347c-429c-4355-97a9-994ca414d85b\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"c4d97e4a-22dc-4bbc-9653-a42e9a46b9d9","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"feng_rhel_8PublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/feng_rhel_8PublicIP","etag":"W/\"7ce138cc-230b-437d-8306-e32554f3752b\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"3448fae2-c681-4512-85db-d4e38f5885d2","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng_rhel_8VMNic/ipConfigurations/ipconfigfeng_rhel_8"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"harold-ip-01","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/harold-ip-01","etag":"W/\"d9f00f57-d868-4bcc-8051-6e79df12f122\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"be8f07dd-60fa-4471-9b93-3a82e6d6c4d7","ipAddress":"40.112.134.247","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworkGateways/harold-vnet-gw-01/ipConfigurations/default"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"harold-ip-02","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/harold-ip-02","etag":"W/\"e2980969-e7cf-47ed-a9fa-31748b5fbaf5\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"21c57eb7-4722-45b4-a947-16478305952b","ipAddress":"104.42.62.128","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworkGateways/harold-vnet-gw-02/ipConfigurations/vnetGatewayConfig0"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"harold-ip-03","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/harold-ip-03","etag":"W/\"22711541-4c8d-4ce5-8972-11c37dc18253\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"012db76f-8b26-4017-8bcf-84658647d8f8","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"harold-ip-04","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/harold-ip-04","etag":"W/\"6da8dd7d-64ea-4cba-b176-3e534d97e9ae\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"8947827d-3156-4aa5-a02d-cb5ee161c160","ipAddress":"13.86.196.230","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/azureFirewalls/harold-fw-01/azureFirewallIpConfigurations/IpConf"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"vm-01-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/vm-01-ip","etag":"W/\"d1887c42-594b-4387-8ed8-5ae5858a1dbf\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"7c90b602-b4f4-49de-8948-2adf0de03554","ipAddress":"40.112.165.142","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-01543/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm-02-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/vm-02-ip","etag":"W/\"9ffb4a12-8971-4db4-bdd7-47208d37b102\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"566e0eed-413f-405e-960f-5c7db5cf885f","ipAddress":"104.42.174.180","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-02540/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"aPublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/aPublicIP","etag":"W/\"952770b9-54d1-4ab3-9115-c84cc2ffaea5\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"16d71fe5-d128-4e03-bb9c-14783993d81b","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic/ipConfigurations/ipconfiga"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"asdfLBPublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/asdfLBPublicIP","etag":"W/\"03eb3149-a5e4-48ac-ba08-a1de1b15e98c\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"98662e45-2a17-4b40-b7e7-ba18729cd3a6","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"start-1PublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/start-1PublicIP","etag":"W/\"6bd25edd-2c48-4399-a9f4-c4b0f1e168ef\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"49f0b2b3-658f-4ed7-a555-127f33a25ba9","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic/ipConfigurations/ipconfigstart-1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm5LBPublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/vm5LBPublicIP","etag":"W/\"2a5e9243-3c45-4601-bc23-7d8fc816ad55\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"8802e8ca-267a-4c22-9b59-fb6f5f1d982d","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"pyipname773e115f","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f","etag":"W/\"ab5ede00-080a-40dd-a7b0-45ea7b547c49\"","location":"westus","tags":{"key":"value"},"properties":{"provisioningState":"Succeeded","resourceGuid":"e87c6762-e2e8-49cc-9011-82fbb711949a","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zimsvm-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/publicIPAddresses/zimsvm-ip","etag":"W/\"b752dcff-a821-4382-a8e0-e4500e8997a9\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"54d90c8d-674e-457f-bf83-d79546ceafd3","ipAddress":"40.78.6.167","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkInterfaces/zimsvm64/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fozippy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/publicIPAddresses/fozippy98","etag":"W/\"2232332e-df20-4b5a-ac6f-bc2c6a083e37\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"b93c103a-f62e-4fc1-bc1d-d2db4fc084ac","ipAddress":"52.224.138.66","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"dnsSettings":{"domainNameLabel":"fozippy98-663ad9","fqdn":"fozippy98-663ad9.eastus.cloudapp.azure.com"},"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"vmss1LBPublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP","etag":"W/\"d51b26cb-3f42-4430-bbe8-df4298ed3dce\"","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"8cd59277-0aa2-4e6e-97da-3c26dfc1459f","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vmss2LBPublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/publicIPAddresses/vmss2LBPublicIP","etag":"W/\"bd0b6f0c-87d6-4997-9a16-a3758ec55c98\"","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d19878c0-bec6-4e71-827d-e436a702fe99","ipAddress":"52.186.13.33","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhlinux-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhlinux-ip","etag":"W/\"b2dea91b-b5e7-4735-ad88-e2c401740066\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"005cc893-a7f4-46e1-bf41-348f11ab0aec","ipAddress":"52.224.51.51","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhtestip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhtestip","etag":"W/\"f3d7f2f1-5b8e-4adf-8d81-3e84c7a9ffd9\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"8a670d8c-f98e-4c4c-a89c-8388b960a5b0","ipAddress":"52.151.240.59","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/applicationGateways/aaaaa/frontendIPConfigurations/appGwPublicFrontendIp"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"zuhtestvm-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhtestvm-ip","etag":"W/\"44707c4b-5976-471b-b9a1-1ddf9401b1a5\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"970083ff-29f0-4c04-bdd7-5e989819309a","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhUbuntu-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhUbuntu-ip","etag":"W/\"a13042b0-8358-4245-8d08-128017e17c99\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"7279e09f-89d0-421f-aee5-a148f82c503e","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm22-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/publicIPAddresses/vm22-ip","etag":"W/\"2015b2b9-354f-43da-8dbd-76172332e5d4\"","location":"eastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9b9cee2b-6b27-46f1-a140-da711e07b716","ipAddress":"52.175.18.106","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"feng-ubuntu-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/feng-ubuntu-ip","etag":"W/\"1122ca29-7f82-4819-918f-df5b0ee29931\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"3423c6e2-2fb4-45a7-b59c-619f64937ba5","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-ubuntu388/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"jlvmwin1-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/publicIPAddresses/jlvmwin1-ip","etag":"W/\"5ad463a0-31e2-4c31-a64c-d20a14ed387a\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"2bd424bf-f1b4-4d14-abd2-54f10f77d9e4","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"yugangw1PublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/publicIPAddresses/yugangw1PublicIP","etag":"W/\"57983cc0-948c-4c1c-ba18-8afbd5d6d9c6\"","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"1c695c95-ce9b-4645-860f-bdc46d189ca4","ipAddress":"23.98.67.194","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw1VMNic/ipConfigurations/ipconfigyugangw1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhWin-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhWin-ip","etag":"W/\"5d880cb0-4ae3-43ca-89b8-b109a67e77a4\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"2a645b1e-8c8b-4745-b910-c3406741a982","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"pubip1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/publicIPAddresses/pubip1","etag":"W/\"3e086f49-5e98-4a1a-93c2-cdb47c939438\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0ce167ab-248b-4011-874f-54ba6c3b86b3","ipAddress":"13.86.103.233","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/LoadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"test_vm1PublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/publicIPAddresses/test_vm1PublicIP","etag":"W/\"24afccbb-d703-49a3-a0f2-1cfa7052589f\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"b56a0720-66f3-4ecf-997a-6b0209a08d3e","ipAddress":"23.99.204.236","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm1VMNic/ipConfigurations/ipconfigtest_vm1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"test_vm2PublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/publicIPAddresses/test_vm2PublicIP","etag":"W/\"8c6f51c4-97ef-401f-a27e-28cb6100bcde\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"9f69730e-4f26-4277-9ef8-4145e6c1c29a","ipAddress":"23.99.203.167","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm2VMNic/ipConfigurations/ipconfigtest_vm2"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhCentOS-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhCentOS-ip","etag":"W/\"edf38eeb-225b-41cf-8c27-d7da5d9fc180\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"0443d949-d8cd-4889-aea2-cec9ddd87239","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhCentOSip151","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhCentOSip151","etag":"W/\"18914e24-75c5-4e97-a768-45ea80c41e96\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"e8a13fb9-f6dd-4e89-b2f8-e7678e1b59a0","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhWindows2016-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhWindows2016-ip","etag":"W/\"313d736b-d53b-466e-9775-2bfd81fe273b\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"61922e62-2cc1-414e-9380-5f4016cddce8","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm-storage-sku-testPublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/publicIPAddresses/vm-storage-sku-testPublicIP","etag":"W/\"0b74d171-c611-46c7-a77b-1573d4b4c4a9\"","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"89cd12bf-caf1-4120-b72f-129f545ed517","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkInterfaces/vm-storage-sku-testVMNic/ipConfigurations/ipconfigvm-storage-sku-test"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm-ultrassdLBPublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/publicIPAddresses/vm-ultrassdLBPublicIP","etag":"W/\"16e603f2-4b46-4929-8e30-5daf0e16cf94\"","location":"eastus2","tags":{},"zones":["2"],"properties":{"provisioningState":"Succeeded","resourceGuid":"02ecfe55-5be9-4f04-811c-63dcbed42417","ipAddress":"52.147.177.6","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"vmss0LBPublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/publicIPAddresses/vmss0LBPublicIP","etag":"W/\"f8da04af-72a5-453c-b971-e40555798dc3\"","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"be2330ca-dd45-4c7e-bd6a-2e4cbd6e9733","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fooziipy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/publicIPAddresses/fooziipy98","etag":"W/\"abfc07e9-2ee4-4b48-90ad-bffc3160f0f8\"","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"85bd582f-894e-4e72-a920-9dc42fe312fc","ipAddress":"52.167.113.130","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"dnsSettings":{"domainNameLabel":"fooziipy98-4d328e","fqdn":"fooziipy98-4d328e.eastus2.cloudapp.azure.com"},"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98/ipConfigurations/fooziipy98"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fooziipy99","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/publicIPAddresses/fooziipy99","etag":"W/\"f2c111c2-14c8-41d9-9740-8241ba2ffaa0\"","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"10524d83-41ef-420b-bac0-fc8b7cf2101d","ipAddress":"104.208.166.249","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"dnsSettings":{"domainNameLabel":"fooziipy99-4e3d17","fqdn":"fooziipy99-4e3d17.eastus2.cloudapp.azure.com"},"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99/ipConfigurations/fooziipy99"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}}]}' headers: cache-control: - no-cache content-length: - - '44544' + - '32902' content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:05:56 GMT + - Tue, 22 Oct 2019 06:10:41 GMT expires: - '-1' pragma: @@ -317,12 +317,12 @@ interactions: x-content-type-options: - nosniff x-ms-original-request-ids: - - d94d0518-e955-4945-b7b9-b373b9b93ef9 - - 2e52e0d7-27a6-4050-a788-861a6a5d5511 - - aa7f141f-51db-4b63-9d9f-1a19aec5d940 - - 54ce19f1-3882-439b-b7aa-2eb7da2003a2 - - 2d24a557-2287-4ff5-8bca-80f76767a1eb - - 59950241-e8cf-4e8f-b438-ceaa139bdde4 + - b9da6adb-87ce-40f6-8394-48e1e1e5af2b + - dd18c258-3e82-45e7-aa31-5504d277e7f3 + - 896eba17-d018-465a-ac49-d2a62fff6ad3 + - 8402377f-54a8-48c1-8543-7a29145d978a + - ad26ac80-c82f-4008-8842-55d667dd6000 + - 434ea4bf-f234-4c27-988d-cc751dc50ae7 status: code: 200 message: OK @@ -339,27 +339,27 @@ interactions: - '0' User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2019-09-01 response: body: string: '' headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/99e1cf66-e62c-479f-99d1-55c9b8f807eb?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/108380b7-ffad-48bb-8c6d-b6ef2d08016d?api-version=2019-09-01 cache-control: - no-cache content-length: - '0' date: - - Tue, 08 Oct 2019 12:05:57 GMT + - Tue, 22 Oct 2019 06:10:41 GMT expires: - '-1' location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/99e1cf66-e62c-479f-99d1-55c9b8f807eb?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operationResults/108380b7-ffad-48bb-8c6d-b6ef2d08016d?api-version=2019-09-01 pragma: - no-cache server: @@ -370,9 +370,9 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - df86ba6f-4fe4-4c92-b24e-48370f9454e4 + - 510c0045-8bf2-4be5-a0e7-c07d3301404f x-ms-ratelimit-remaining-subscription-deletes: - - '14997' + - '14999' status: code: 202 message: Accepted @@ -387,9 +387,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/99e1cf66-e62c-479f-99d1-55c9b8f807eb?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/108380b7-ffad-48bb-8c6d-b6ef2d08016d?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -401,7 +401,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:06:08 GMT + - Tue, 22 Oct 2019 06:10:52 GMT expires: - '-1' pragma: @@ -418,7 +418,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - f047627e-ef01-4117-a902-92a8edc631d7 + - 30d24e31-c121-461c-85ca-dc8fda07161d status: code: 200 message: OK @@ -433,11 +433,11 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses?api-version=2019-09-01 response: body: string: "{\r\n \"value\": []\r\n}" @@ -449,7 +449,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:06:08 GMT + - Tue, 22 Oct 2019 06:10:53 GMT expires: - '-1' pragma: @@ -466,7 +466,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - ef68c817-1e86-4e93-92a0-3f4c88a65315 + - d378541c-e36c-4bb6-9a90-ef5e7837f4b3 status: code: 200 message: OK diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_routes.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_routes.yaml index 3cf6f61b43b6..81119994a748 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_routes.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_routes.yaml @@ -14,22 +14,22 @@ interactions: - application/json; charset=utf-8 User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyroutetableb6760c2d\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ - ,\r\n \"etag\": \"W/\\\"ec963242-b531-4d9e-9cc9-fc76de58b93a\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyroutetableb6760c2d\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ + ,\r\n \"etag\": \"W/\\\"9fe0eddf-7e38-4e56-b46a-4fc88d4c79de\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/routeTables\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ - \ \"resourceGuid\": \"f1cd5f17-d2c6-4e27-ba8b-faf719465080\",\r\n \"\ + \ \"resourceGuid\": \"cdeab787-3552-4374-9176-838f11a24f88\",\r\n \"\ disableBgpRoutePropagation\": false,\r\n \"routes\": []\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f6506dfd-2878-4cfc-a174-ae9e879fe63c?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/dca72aec-d431-411b-98e0-82b16fddecd8?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -37,7 +37,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:06:25 GMT + - Tue, 22 Oct 2019 06:11:04 GMT expires: - '-1' pragma: @@ -50,9 +50,9 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - dd752231-f66f-473a-ba56-1211b36349ce + - a41289a1-d2a0-4387-8402-8e40423b4354 x-ms-ratelimit-remaining-subscription-writes: - - '1199' + - '1197' status: code: 201 message: Created @@ -67,9 +67,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f6506dfd-2878-4cfc-a174-ae9e879fe63c?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/dca72aec-d431-411b-98e0-82b16fddecd8?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -81,7 +81,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:06:37 GMT + - Tue, 22 Oct 2019 06:11:15 GMT expires: - '-1' pragma: @@ -98,7 +98,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 08c116c7-adbd-4769-a438-42a1b0eeb6c4 + - d955af5f-a757-408e-b770-70b1dc5a4037 status: code: 200 message: OK @@ -113,16 +113,16 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyroutetableb6760c2d\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ - ,\r\n \"etag\": \"W/\\\"15145ca6-3e3d-4716-bb34-d87a5d9ac704\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyroutetableb6760c2d\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ + ,\r\n \"etag\": \"W/\\\"fb3eae54-ce59-4d30-8c87-cae0d89f335f\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/routeTables\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"f1cd5f17-d2c6-4e27-ba8b-faf719465080\",\r\n \"\ + \ \"resourceGuid\": \"cdeab787-3552-4374-9176-838f11a24f88\",\r\n \"\ disableBgpRoutePropagation\": false,\r\n \"routes\": []\r\n }\r\n}" headers: cache-control: @@ -132,9 +132,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:06:37 GMT + - Tue, 22 Oct 2019 06:11:15 GMT etag: - - W/"15145ca6-3e3d-4716-bb34-d87a5d9ac704" + - W/"fb3eae54-ce59-4d30-8c87-cae0d89f335f" expires: - '-1' pragma: @@ -151,7 +151,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 776be349-861b-48d4-8a3a-7760cd53777f + - 26ad80c2-7af2-451b-a02e-8630f12a10a5 status: code: 200 message: OK @@ -166,18 +166,18 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyroutetableb6760c2d\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ - ,\r\n \"etag\": \"W/\\\"15145ca6-3e3d-4716-bb34-d87a5d9ac704\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyroutetableb6760c2d\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ + ,\r\n \"etag\": \"W/\\\"fb3eae54-ce59-4d30-8c87-cae0d89f335f\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/routeTables\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"f1cd5f17-d2c6-4e27-ba8b-faf719465080\",\r\n \"\ + \ \"resourceGuid\": \"cdeab787-3552-4374-9176-838f11a24f88\",\r\n \"\ disableBgpRoutePropagation\": false,\r\n \"routes\": []\r\n }\r\n}" headers: cache-control: @@ -187,9 +187,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:06:37 GMT + - Tue, 22 Oct 2019 06:11:16 GMT etag: - - W/"15145ca6-3e3d-4716-bb34-d87a5d9ac704" + - W/"fb3eae54-ce59-4d30-8c87-cae0d89f335f" expires: - '-1' pragma: @@ -206,7 +206,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 681b160c-47bb-413e-9b0e-85fcf34317e1 + - 8d522fb9-b8a4-4317-99e8-9b544395c5de status: code: 200 message: OK @@ -221,19 +221,19 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pyroutetableb6760c2d\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ - ,\r\n \"etag\": \"W/\\\"15145ca6-3e3d-4716-bb34-d87a5d9ac704\\\"\",\r\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ + ,\r\n \"etag\": \"W/\\\"fb3eae54-ce59-4d30-8c87-cae0d89f335f\\\"\",\r\ \n \"type\": \"Microsoft.Network/routeTables\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"f1cd5f17-d2c6-4e27-ba8b-faf719465080\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"cdeab787-3552-4374-9176-838f11a24f88\"\ ,\r\n \"disableBgpRoutePropagation\": false,\r\n \"routes\"\ : []\r\n }\r\n }\r\n ]\r\n}" headers: @@ -244,7 +244,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:06:37 GMT + - Tue, 22 Oct 2019 06:11:16 GMT expires: - '-1' pragma: @@ -261,7 +261,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - e778cf65-b89b-46cf-9fd2-0fa3d482fb85 + - eabd0688-29d5-4cbc-b205-b9d90629edfc status: code: 200 message: OK @@ -276,19 +276,19 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/routeTables?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/routeTables?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pyroutetableb6760c2d\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ - ,\r\n \"etag\": \"W/\\\"15145ca6-3e3d-4716-bb34-d87a5d9ac704\\\"\",\r\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ + ,\r\n \"etag\": \"W/\\\"fb3eae54-ce59-4d30-8c87-cae0d89f335f\\\"\",\r\ \n \"type\": \"Microsoft.Network/routeTables\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"f1cd5f17-d2c6-4e27-ba8b-faf719465080\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"cdeab787-3552-4374-9176-838f11a24f88\"\ ,\r\n \"disableBgpRoutePropagation\": false,\r\n \"routes\"\ : []\r\n }\r\n }\r\n ]\r\n}" headers: @@ -299,7 +299,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:06:38 GMT + - Tue, 22 Oct 2019 06:11:16 GMT expires: - '-1' pragma: @@ -316,7 +316,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 2322845f-2e20-44c1-9b6c-e340721c075d + - 649a36f9-c0de-4a19-879f-914ad821e49d status: code: 200 message: OK @@ -335,21 +335,21 @@ interactions: - application/json; charset=utf-8 User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyrouteb6760c2d\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ - ,\r\n \"etag\": \"W/\\\"2ffb6b28-b477-4ce6-8690-2e1f725f1951\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyrouteb6760c2d\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ + ,\r\n \"etag\": \"W/\\\"959dc85e-27ed-4e06-852d-d7ba1cf099e2\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ addressPrefix\": \"10.1.0.0/16\",\r\n \"nextHopType\": \"None\"\r\n },\r\ \n \"type\": \"Microsoft.Network/routeTables/routes\"\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6f39b854-05d8-48d4-a7c2-fe52920ec233?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/d42e684b-e31b-4dec-a71b-1087eb29c092?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -357,7 +357,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:06:38 GMT + - Tue, 22 Oct 2019 06:11:17 GMT expires: - '-1' pragma: @@ -370,9 +370,9 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 025503f0-3f3a-444f-9a7c-a0458c8bdba9 + - 45c361a5-f4a2-43f8-b339-3c2abbba3691 x-ms-ratelimit-remaining-subscription-writes: - - '1198' + - '1196' status: code: 201 message: Created @@ -387,9 +387,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/6f39b854-05d8-48d4-a7c2-fe52920ec233?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/d42e684b-e31b-4dec-a71b-1087eb29c092?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -401,7 +401,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:06:49 GMT + - Tue, 22 Oct 2019 06:11:28 GMT expires: - '-1' pragma: @@ -418,7 +418,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 8cfcd5b9-b20c-4594-a3a5-c3872827770f + - 37e728c9-920e-41a1-a75d-62657e8aad90 status: code: 200 message: OK @@ -433,13 +433,13 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyrouteb6760c2d\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ - ,\r\n \"etag\": \"W/\\\"4cf7b5d0-2531-4671-8b7c-904db71407b4\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyrouteb6760c2d\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ + ,\r\n \"etag\": \"W/\\\"ca4993f8-a4ac-4593-9334-190c9c10b7f0\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ addressPrefix\": \"10.1.0.0/16\",\r\n \"nextHopType\": \"None\"\r\n },\r\ \n \"type\": \"Microsoft.Network/routeTables/routes\"\r\n}" @@ -451,9 +451,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:06:50 GMT + - Tue, 22 Oct 2019 06:11:28 GMT etag: - - W/"4cf7b5d0-2531-4671-8b7c-904db71407b4" + - W/"ca4993f8-a4ac-4593-9334-190c9c10b7f0" expires: - '-1' pragma: @@ -470,7 +470,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 3c0633c1-3e0f-4a22-94e7-840b2c8a4587 + - c0b7d120-5070-4038-abd0-03d6b8309b95 status: code: 200 message: OK @@ -485,15 +485,15 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyrouteb6760c2d\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ - ,\r\n \"etag\": \"W/\\\"4cf7b5d0-2531-4671-8b7c-904db71407b4\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyrouteb6760c2d\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ + ,\r\n \"etag\": \"W/\\\"ca4993f8-a4ac-4593-9334-190c9c10b7f0\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ addressPrefix\": \"10.1.0.0/16\",\r\n \"nextHopType\": \"None\"\r\n },\r\ \n \"type\": \"Microsoft.Network/routeTables/routes\"\r\n}" @@ -505,9 +505,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:06:51 GMT + - Tue, 22 Oct 2019 06:11:28 GMT etag: - - W/"4cf7b5d0-2531-4671-8b7c-904db71407b4" + - W/"ca4993f8-a4ac-4593-9334-190c9c10b7f0" expires: - '-1' pragma: @@ -524,7 +524,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 52dbd3d7-4677-4648-9b1c-532f1b77944c + - eaadbcb8-eb57-4b19-9439-994c5cd092e4 status: code: 200 message: OK @@ -539,16 +539,16 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pyrouteb6760c2d\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ - ,\r\n \"etag\": \"W/\\\"4cf7b5d0-2531-4671-8b7c-904db71407b4\\\"\",\r\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ + ,\r\n \"etag\": \"W/\\\"ca4993f8-a4ac-4593-9334-190c9c10b7f0\\\"\",\r\ \n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.1.0.0/16\",\r\n \"nextHopType\"\ : \"None\"\r\n },\r\n \"type\": \"Microsoft.Network/routeTables/routes\"\ @@ -561,7 +561,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:06:51 GMT + - Tue, 22 Oct 2019 06:11:29 GMT expires: - '-1' pragma: @@ -578,7 +578,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 54d5df93-205c-4a93-9805-4206dd76e6a7 + - d7c4d62c-1c08-4254-a87f-8797f2efd014 status: code: 200 message: OK @@ -595,27 +595,27 @@ interactions: - '0' User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2019-09-01 response: body: string: '' headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/05ba59f1-7316-4f3e-ae68-860d88f7b871?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/57313418-aff5-4752-9ca8-9c6690bb8fb8?api-version=2019-09-01 cache-control: - no-cache content-length: - '0' date: - - Tue, 08 Oct 2019 12:06:51 GMT + - Tue, 22 Oct 2019 06:11:29 GMT expires: - '-1' location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/05ba59f1-7316-4f3e-ae68-860d88f7b871?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operationResults/57313418-aff5-4752-9ca8-9c6690bb8fb8?api-version=2019-09-01 pragma: - no-cache server: @@ -626,9 +626,9 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 168e0eb4-045f-48d8-8b03-2609e91136a9 + - 6a5b47b5-774c-4c64-8af5-8bd88904d991 x-ms-ratelimit-remaining-subscription-deletes: - - '14999' + - '14998' status: code: 202 message: Accepted @@ -643,9 +643,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/05ba59f1-7316-4f3e-ae68-860d88f7b871?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/57313418-aff5-4752-9ca8-9c6690bb8fb8?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -657,7 +657,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:07:02 GMT + - Tue, 22 Oct 2019 06:11:41 GMT expires: - '-1' pragma: @@ -674,7 +674,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - af4fd551-c4b6-46ab-aa7c-c86a848d5765 + - ff9c8229-e40e-4a6c-b034-34afbe602c61 status: code: 200 message: OK @@ -691,27 +691,27 @@ interactions: - '0' User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2019-09-01 response: body: string: '' headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f93f0219-59b6-4f6b-801f-786eafd36488?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/36d750db-dbf1-4e9c-ac34-3b4656f43c4d?api-version=2019-09-01 cache-control: - no-cache content-length: - '0' date: - - Tue, 08 Oct 2019 12:07:03 GMT + - Tue, 22 Oct 2019 06:11:41 GMT expires: - '-1' location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/f93f0219-59b6-4f6b-801f-786eafd36488?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operationResults/36d750db-dbf1-4e9c-ac34-3b4656f43c4d?api-version=2019-09-01 pragma: - no-cache server: @@ -722,9 +722,9 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - ad7e8a80-631f-4588-8ec1-dd37a15e0f23 + - dc14d452-63d4-4a86-911d-ea5affd1ef5c x-ms-ratelimit-remaining-subscription-deletes: - - '14998' + - '14997' status: code: 202 message: Accepted @@ -739,9 +739,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/f93f0219-59b6-4f6b-801f-786eafd36488?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/36d750db-dbf1-4e9c-ac34-3b4656f43c4d?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -753,7 +753,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:07:14 GMT + - Tue, 22 Oct 2019 06:11:52 GMT expires: - '-1' pragma: @@ -770,7 +770,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - d6067fe7-6aa6-4517-9568-492ea96fbfac + - c33bc27f-e592-4bd7-88de-15bcf2d1b76e status: code: 200 message: OK diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_subnets.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_subnets.yaml index f52024856cf3..0279dc54e88d 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_subnets.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_subnets.yaml @@ -17,24 +17,24 @@ interactions: - application/json; charset=utf-8 User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnetc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"e3f5b59d-56ad-4cb9-9dc7-d7e7ae958547\\\"\",\r\n \ + string: "{\r\n \"name\": \"pysubnetc2cc0c8f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f\"\ + ,\r\n \"etag\": \"W/\\\"923c09e1-7f5f-4ab8-a748-3b118c95aab8\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ - \ \"resourceGuid\": \"68a1d2c5-14f0-474c-8176-cc4c2228c374\",\r\n \"\ + \ \"resourceGuid\": \"f056a1ab-bb34-4955-ab2f-4c6f36e7143f\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ \r\n ]\r\n },\r\n \"dhcpOptions\": {\r\n \"dnsServers\": [\r\ \n \"10.1.1.1\",\r\n \"10.1.2.4\"\r\n ]\r\n },\r\n \ \ \"subnets\": [\r\n {\r\n \"name\": \"pysubnetonec2cc0c8f\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"e3f5b59d-56ad-4cb9-9dc7-d7e7ae958547\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ + ,\r\n \"etag\": \"W/\\\"923c09e1-7f5f-4ab8-a748-3b118c95aab8\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ : [],\r\n \"privateEndpointNetworkPolicies\": \"Enabled\",\r\n \ @@ -44,7 +44,7 @@ interactions: : false,\r\n \"enableVmProtection\": false\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/84817812-9c04-4795-8efb-be5d0cd8f2ec?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/4d6b6310-28f4-4e70-be6a-9d3775981681?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -52,7 +52,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:07:29 GMT + - Tue, 22 Oct 2019 06:12:08 GMT expires: - '-1' pragma: @@ -65,9 +65,9 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - fdad5bca-f1bc-4710-a8ea-5ce1d542ef5e + - 4bacfa1f-30a6-4d52-a32a-ed4f776a8045 x-ms-ratelimit-remaining-subscription-writes: - - '1197' + - '1195' status: code: 201 message: Created @@ -82,9 +82,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/84817812-9c04-4795-8efb-be5d0cd8f2ec?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/4d6b6310-28f4-4e70-be6a-9d3775981681?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -96,7 +96,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:07:33 GMT + - Tue, 22 Oct 2019 06:12:12 GMT expires: - '-1' pragma: @@ -113,7 +113,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - a9aaabea-2a77-4ac9-941a-e3096a2df30e + - 5e732765-0136-4738-a38b-eecbabdd2e8f status: code: 200 message: OK @@ -128,22 +128,22 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnetc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"c54941dc-feac-479c-afcd-f307e2ec7cc6\\\"\",\r\n \ + string: "{\r\n \"name\": \"pysubnetc2cc0c8f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f\"\ + ,\r\n \"etag\": \"W/\\\"cf03aa7a-b2a8-4341-b744-5a2fdceb7494\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"68a1d2c5-14f0-474c-8176-cc4c2228c374\",\r\n \"\ + \ \"resourceGuid\": \"f056a1ab-bb34-4955-ab2f-4c6f36e7143f\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ \r\n ]\r\n },\r\n \"dhcpOptions\": {\r\n \"dnsServers\": [\r\ \n \"10.1.1.1\",\r\n \"10.1.2.4\"\r\n ]\r\n },\r\n \ \ \"subnets\": [\r\n {\r\n \"name\": \"pysubnetonec2cc0c8f\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"c54941dc-feac-479c-afcd-f307e2ec7cc6\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ + ,\r\n \"etag\": \"W/\\\"cf03aa7a-b2a8-4341-b744-5a2fdceb7494\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ : [],\r\n \"privateEndpointNetworkPolicies\": \"Enabled\",\r\n \ @@ -159,9 +159,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:07:34 GMT + - Tue, 22 Oct 2019 06:12:12 GMT etag: - - W/"c54941dc-feac-479c-afcd-f307e2ec7cc6" + - W/"cf03aa7a-b2a8-4341-b744-5a2fdceb7494" expires: - '-1' pragma: @@ -178,7 +178,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - ccfb8fc0-43d3-4105-8db3-2a8f28f19804 + - 5ed50123-415f-402a-8e52-cc7d85fda909 status: code: 200 message: OK @@ -197,22 +197,22 @@ interactions: - application/json; charset=utf-8 User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"1e0ed727-d336-4cb6-9680-36ad76d774b8\\\"\",\r\n \ + string: "{\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ + ,\r\n \"etag\": \"W/\\\"f51c2e9f-4243-4e10-a547-aa1f2dd51ba9\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ : \"Enabled\",\r\n \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\ \n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/58bc50e9-f4aa-4887-a90e-64ef8c990ecf?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/15c29e94-b7b1-4158-bf32-79be4d0ab3b3?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -220,7 +220,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:07:34 GMT + - Tue, 22 Oct 2019 06:12:13 GMT expires: - '-1' pragma: @@ -233,9 +233,9 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - c22fa8c7-bd15-4fbe-a583-7f98cd5893f9 + - 56bc6f55-b2cd-4491-9ca9-e6c9a4f95c37 x-ms-ratelimit-remaining-subscription-writes: - - '1196' + - '1194' status: code: 201 message: Created @@ -250,9 +250,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/58bc50e9-f4aa-4887-a90e-64ef8c990ecf?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/15c29e94-b7b1-4158-bf32-79be4d0ab3b3?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -264,7 +264,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:07:37 GMT + - Tue, 22 Oct 2019 06:12:17 GMT expires: - '-1' pragma: @@ -281,7 +281,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - fb2e37e4-435a-4599-b362-13745f84ac85 + - cb832255-fa1b-407d-a39b-295061254ccf status: code: 200 message: OK @@ -296,13 +296,13 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"0e56ffd6-abca-4346-85ab-736d1a059cd6\\\"\",\r\n \ + string: "{\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ + ,\r\n \"etag\": \"W/\\\"83244fca-9923-4dd3-a293-498792f1aadd\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ : \"Enabled\",\r\n \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\ @@ -315,9 +315,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:07:38 GMT + - Tue, 22 Oct 2019 06:12:18 GMT etag: - - W/"0e56ffd6-abca-4346-85ab-736d1a059cd6" + - W/"83244fca-9923-4dd3-a293-498792f1aadd" expires: - '-1' pragma: @@ -334,7 +334,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - d4d480d7-431b-4ed9-9cda-44dc88a74def + - 8846d91a-7ab8-40c2-8c36-17e24994fbfc status: code: 200 message: OK @@ -349,32 +349,32 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnetc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"0e56ffd6-abca-4346-85ab-736d1a059cd6\\\"\",\r\n \ + string: "{\r\n \"name\": \"pysubnetc2cc0c8f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f\"\ + ,\r\n \"etag\": \"W/\\\"83244fca-9923-4dd3-a293-498792f1aadd\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"68a1d2c5-14f0-474c-8176-cc4c2228c374\",\r\n \"\ + \ \"resourceGuid\": \"f056a1ab-bb34-4955-ab2f-4c6f36e7143f\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ \r\n ]\r\n },\r\n \"dhcpOptions\": {\r\n \"dnsServers\": [\r\ \n \"10.1.1.1\",\r\n \"10.1.2.4\"\r\n ]\r\n },\r\n \ \ \"subnets\": [\r\n {\r\n \"name\": \"pysubnetonec2cc0c8f\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"0e56ffd6-abca-4346-85ab-736d1a059cd6\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ + ,\r\n \"etag\": \"W/\\\"83244fca-9923-4dd3-a293-498792f1aadd\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ : [],\r\n \"privateEndpointNetworkPolicies\": \"Enabled\",\r\n \ \ \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\n },\r\ \n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n \ \ },\r\n {\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"0e56ffd6-abca-4346-85ab-736d1a059cd6\\\"\"\ + \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ + ,\r\n \"etag\": \"W/\\\"83244fca-9923-4dd3-a293-498792f1aadd\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\"\ : [],\r\n \"privateEndpointNetworkPolicies\": \"Enabled\",\r\n \ @@ -390,9 +390,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:07:38 GMT + - Tue, 22 Oct 2019 06:12:18 GMT etag: - - W/"0e56ffd6-abca-4346-85ab-736d1a059cd6" + - W/"83244fca-9923-4dd3-a293-498792f1aadd" expires: - '-1' pragma: @@ -409,7 +409,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - cb2f9c13-acc3-4ca7-aac0-7be778e8439d + - d8fabdb5-d48c-4890-90b8-f45d63d50a82 status: code: 200 message: OK @@ -424,15 +424,15 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"0e56ffd6-abca-4346-85ab-736d1a059cd6\\\"\",\r\n \ + string: "{\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ + ,\r\n \"etag\": \"W/\\\"83244fca-9923-4dd3-a293-498792f1aadd\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ : \"Enabled\",\r\n \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\ @@ -445,9 +445,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:07:39 GMT + - Tue, 22 Oct 2019 06:12:18 GMT etag: - - W/"0e56ffd6-abca-4346-85ab-736d1a059cd6" + - W/"83244fca-9923-4dd3-a293-498792f1aadd" expires: - '-1' pragma: @@ -464,7 +464,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - f3b1d8bf-d749-43a8-adfb-f1ccb4fd824e + - 97e2cb0d-e29e-4bf9-80af-62a043b8edd1 status: code: 200 message: OK @@ -479,23 +479,23 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pysubnetonec2cc0c8f\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"0e56ffd6-abca-4346-85ab-736d1a059cd6\\\"\",\r\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ + ,\r\n \"etag\": \"W/\\\"83244fca-9923-4dd3-a293-498792f1aadd\\\"\",\r\ \n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ : [],\r\n \"privateEndpointNetworkPolicies\": \"Enabled\",\r\n \ \ \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\n },\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n },\r\n\ - \ {\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ - ,\r\n \"etag\": \"W/\\\"0e56ffd6-abca-4346-85ab-736d1a059cd6\\\"\",\r\ + \ {\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ + ,\r\n \"etag\": \"W/\\\"83244fca-9923-4dd3-a293-498792f1aadd\\\"\",\r\ \n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\"\ : [],\r\n \"privateEndpointNetworkPolicies\": \"Enabled\",\r\n \ @@ -510,7 +510,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:07:39 GMT + - Tue, 22 Oct 2019 06:12:18 GMT expires: - '-1' pragma: @@ -527,7 +527,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 92e5e779-2e46-4032-9f4c-5c82ec7e1184 + - f4f4ab31-5845-4091-8521-6d6afab729d6 status: code: 200 message: OK @@ -544,27 +544,27 @@ interactions: - '0' User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2019-09-01 response: body: string: '' headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/efaccd70-dd35-4600-b2b5-eb7ae70d7c1c?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/e94540a3-8159-41c0-9f62-c56a7a63fd30?api-version=2019-09-01 cache-control: - no-cache content-length: - '0' date: - - Tue, 08 Oct 2019 12:07:39 GMT + - Tue, 22 Oct 2019 06:12:19 GMT expires: - '-1' location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/efaccd70-dd35-4600-b2b5-eb7ae70d7c1c?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operationResults/e94540a3-8159-41c0-9f62-c56a7a63fd30?api-version=2019-09-01 pragma: - no-cache server: @@ -575,9 +575,9 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 9d90471a-17ee-4edf-8c2c-58def8ad5f61 + - 09b04127-f8f4-4ee8-82b6-3f157f463ec9 x-ms-ratelimit-remaining-subscription-deletes: - - '14997' + - '14996' status: code: 202 message: Accepted @@ -592,9 +592,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/efaccd70-dd35-4600-b2b5-eb7ae70d7c1c?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/e94540a3-8159-41c0-9f62-c56a7a63fd30?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -606,7 +606,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:07:51 GMT + - Tue, 22 Oct 2019 06:12:30 GMT expires: - '-1' pragma: @@ -623,7 +623,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 56611148-9536-43f0-a07a-56b4c2eda561 + - 97710af3-c091-4e79-bd06-f036d23258af status: code: 200 message: OK diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_usages.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_usages.yaml index a3e79d4df658..4d8e704a55c6 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_usages.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_usages.yaml @@ -10,171 +10,171 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages?api-version=2019-09-01 response: body: - string: "{\r\n \"value\": [\r\n {\r\n \"currentValue\": 15,\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/VirtualNetworks\"\ + string: "{\r\n \"value\": [\r\n {\r\n \"currentValue\": 20,\r\n \ + \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/VirtualNetworks\"\ ,\r\n \"limit\": 1000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Virtual Networks\",\r\n \"value\": \"VirtualNetworks\"\r\n \ \ },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/StaticPublicIPAddresses\"\ + : 3,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/StaticPublicIPAddresses\"\ ,\r\n \"limit\": 1000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Static Public IP Addresses\",\r\n \"value\": \"StaticPublicIPAddresses\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 14,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/NetworkSecurityGroups\"\ + : 10,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/NetworkSecurityGroups\"\ ,\r\n \"limit\": 5000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Network Security Groups\",\r\n \"value\": \"NetworkSecurityGroups\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 25,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/PublicIPAddresses\"\ + : 21,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/PublicIPAddresses\"\ ,\r\n \"limit\": 1000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Public IP Addresses\",\r\n \"value\": \"PublicIPAddresses\"\r\n\ \ },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/PublicIpPrefixes\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/PublicIpPrefixes\"\ ,\r\n \"limit\": 2147483647,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Public Ip Prefixes\",\r\n \"value\": \"PublicIpPrefixes\"\r\n \ \ },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 13,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/NetworkInterfaces\"\ + : 12,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/NetworkInterfaces\"\ ,\r\n \"limit\": 65536,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Network Interfaces\",\r\n \"value\": \"NetworkInterfaces\"\r\n\ \ },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/PrivateEndpoints\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/PrivateEndpoints\"\ ,\r\n \"limit\": 65536,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Private Endpoints\",\r\n \"value\": \"PrivateEndpoints\"\r\n \ \ },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/PrivateEndpointRedirectMaps\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/PrivateEndpointRedirectMaps\"\ ,\r\n \"limit\": 2147483647,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Private Endpoint Redirect Maps\",\r\n \"value\": \"PrivateEndpointRedirectMaps\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 9,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/LoadBalancers\"\ + : 4,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/LoadBalancers\"\ ,\r\n \"limit\": 1000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Load Balancers\",\r\n \"value\": \"LoadBalancers\"\r\n },\r\ \n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\":\ - \ 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/PrivateLinkServices\"\ + \ 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/PrivateLinkServices\"\ ,\r\n \"limit\": 800,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Private Link Services\",\r\n \"value\": \"PrivateLinkServices\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 1,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/ApplicationGateways\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/ApplicationGateways\"\ ,\r\n \"limit\": 1000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Application Gateways\",\r\n \"value\": \"ApplicationGateways\"\r\ \n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/RouteTables\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/RouteTables\"\ ,\r\n \"limit\": 200,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Route Tables\",\r\n \"value\": \"RouteTables\"\r\n },\r\n\ \ \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\": 0,\r\ - \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/RouteFilters\"\ + \n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/RouteFilters\"\ ,\r\n \"limit\": 1000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Route Filters\",\r\n \"value\": \"RouteFilters\"\r\n },\r\n\ \ \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\": 1,\r\ - \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/NetworkWatchers\"\ + \n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/NetworkWatchers\"\ ,\r\n \"limit\": 1,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Network Watchers\",\r\n \"value\": \"NetworkWatchers\"\r\n \ \ },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/PacketCaptures\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/PacketCaptures\"\ ,\r\n \"limit\": 10000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Packet Captures\",\r\n \"value\": \"PacketCaptures\"\r\n },\r\ \n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\":\ - \ 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/ApplicationSecurityGroups\"\ + \ 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/ApplicationSecurityGroups\"\ ,\r\n \"limit\": 3000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Application Security Groups.\",\r\n \"value\": \"ApplicationSecurityGroups\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/DdosProtectionPlans\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/DdosProtectionPlans\"\ ,\r\n \"limit\": 1,\r\n \"name\": {\r\n \"localizedValue\"\ : \"DDoS Protection Plans.\",\r\n \"value\": \"DdosProtectionPlans\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/DdosCustomPolicies\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/DdosCustomPolicies\"\ ,\r\n \"limit\": 200,\r\n \"name\": {\r\n \"localizedValue\"\ : \"DDoS customized policies\",\r\n \"value\": \"DdosCustomPolicies\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/ServiceEndpointPolicies\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/ServiceEndpointPolicies\"\ ,\r\n \"limit\": 500,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Service Endpoint Policies\",\r\n \"value\": \"ServiceEndpointPolicies\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/NetworkIntentPolicies\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/NetworkIntentPolicies\"\ ,\r\n \"limit\": 200,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Network Intent Policies\",\r\n \"value\": \"NetworkIntentPolicies\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : -1,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/StandardSkuLoadBalancers\"\ + : 1,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/StandardSkuLoadBalancers\"\ ,\r\n \"limit\": 1000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Standard Sku Load Balancers\",\r\n \"value\": \"StandardSkuLoadBalancers\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/StandardSkuPublicIpAddresses\"\ + : 3,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/StandardSkuPublicIpAddresses\"\ ,\r\n \"limit\": 1000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Standard Sku Public IP Addresses\",\r\n \"value\": \"StandardSkuPublicIpAddresses\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/DnsServersPerVirtualNetwork\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/DnsServersPerVirtualNetwork\"\ ,\r\n \"limit\": 20,\r\n \"name\": {\r\n \"localizedValue\"\ : \"DNS servers per Virtual Network\",\r\n \"value\": \"DnsServersPerVirtualNetwork\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/SubnetsPerVirtualNetwork\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/SubnetsPerVirtualNetwork\"\ ,\r\n \"limit\": 3000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Subnets per Virtual Network\",\r\n \"value\": \"SubnetsPerVirtualNetwork\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/IPConfigurationsPerVirtualNetwork\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/IPConfigurationsPerVirtualNetwork\"\ ,\r\n \"limit\": 65536,\r\n \"name\": {\r\n \"localizedValue\"\ : \"IP Configurations per Virtual Network\",\r\n \"value\": \"IPConfigurationsPerVirtualNetwork\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/PeeringsPerVirtualNetwork\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/PeeringsPerVirtualNetwork\"\ ,\r\n \"limit\": 500,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Peerings per Virtual Network\",\r\n \"value\": \"PeeringsPerVirtualNetwork\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/SecurityRulesPerNetworkSecurityGroup\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/SecurityRulesPerNetworkSecurityGroup\"\ ,\r\n \"limit\": 1000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Security rules per Network Security Group\",\r\n \"value\": \"\ SecurityRulesPerNetworkSecurityGroup\"\r\n },\r\n \"unit\": \"Count\"\ - \r\n },\r\n {\r\n \"currentValue\": 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/SecurityRulesPerNetworkIntentPolicy\"\ + \r\n },\r\n {\r\n \"currentValue\": 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/SecurityRulesPerNetworkIntentPolicy\"\ ,\r\n \"limit\": 100,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Security rules per Network Intent Policy\",\r\n \"value\": \"SecurityRulesPerNetworkIntentPolicy\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/RoutesPerNetworkIntentPolicy\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/RoutesPerNetworkIntentPolicy\"\ ,\r\n \"limit\": 200,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Routes per Network Intent Policy\",\r\n \"value\": \"RoutesPerNetworkIntentPolicy\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup\"\ ,\r\n \"limit\": 4000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Security rules addresses or ports per Network Security Group\",\r\n \ \ \"value\": \"SecurityRuleAddressesOrPortsPerNetworkSecurityGroup\"\r\ \n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerLoadBalancer\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerLoadBalancer\"\ ,\r\n \"limit\": 250,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Inbound Rules per Load Balancer\",\r\n \"value\": \"InboundRulesPerLoadBalancer\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/FrontendIPConfigurationPerLoadBalancer\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/FrontendIPConfigurationPerLoadBalancer\"\ ,\r\n \"limit\": 200,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Frontend IP Configurations per Load Balancer\",\r\n \"value\":\ \ \"FrontendIPConfigurationPerLoadBalancer\"\r\n },\r\n \"unit\"\ : \"Count\"\r\n },\r\n {\r\n \"currentValue\": 0,\r\n \"id\"\ - : \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/OutboundRulesPerLoadBalancer\"\ + : \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/OutboundRulesPerLoadBalancer\"\ ,\r\n \"limit\": 5,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Outbound Rules per Load Balancer\",\r\n \"value\": \"OutboundRulesPerLoadBalancer\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/RoutesPerRouteTable\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/RoutesPerRouteTable\"\ ,\r\n \"limit\": 400,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Routes per Route Table\",\r\n \"value\": \"RoutesPerRouteTable\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/SecondaryIPConfigurationsPerNetworkInterface\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/SecondaryIPConfigurationsPerNetworkInterface\"\ ,\r\n \"limit\": 256,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Secondary IP Configurations per Network Interface\",\r\n \"value\"\ : \"SecondaryIPConfigurationsPerNetworkInterface\"\r\n },\r\n \"\ unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\": 0,\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerNetworkInterface\"\ + \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerNetworkInterface\"\ ,\r\n \"limit\": 500,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Inbound rules per Network Interface\",\r\n \"value\": \"InboundRulesPerNetworkInterface\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/RouteFilterRulesPerRouteFilter\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/RouteFilterRulesPerRouteFilter\"\ ,\r\n \"limit\": 1,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Route filter rules per Route Filter\",\r\n \"value\": \"RouteFilterRulesPerRouteFilter\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/RouteFiltersPerExpressRouteBgpPeering\"\ + : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/RouteFiltersPerExpressRouteBgpPeering\"\ ,\r\n \"limit\": 1,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Route filters per Express route BGP Peering\",\r\n \"value\": \"\ RouteFiltersPerExpressRouteBgpPeering\"\r\n },\r\n \"unit\": \"\ Count\"\r\n },\r\n {\r\n \"currentValue\": 0,\r\n \"id\":\ - \ \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/MinPublicIpInterNetworkPrefixLength\"\ + \ \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/MinPublicIpInterNetworkPrefixLength\"\ ,\r\n \"limit\": 28,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Min Public Ip InterNetwork Prefix Length\",\r\n \"value\": \"MinPublicIpInterNetworkPrefixLength\"\ \r\n },\r\n \"unit\": \"Count\"\r\n }\r\n ]\r\n}" @@ -182,11 +182,11 @@ interactions: cache-control: - no-cache content-length: - - '14173' + - '14172' content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:07:56 GMT + - Tue, 22 Oct 2019 06:12:35 GMT expires: - '-1' pragma: @@ -203,7 +203,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - ae55e3d4-ce55-49ab-b331-48a159ecaac0 + - be262c58-d8b0-4113-87e2-738c2b065310 status: code: 200 message: OK diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_network_gateway_operations.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_network_gateway_operations.yaml index e68a13803138..3aab821e7355 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_network_gateway_operations.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_network_gateway_operations.yaml @@ -15,25 +15,25 @@ interactions: - application/json; charset=utf-8 User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyvirtnetb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"5ab5b32a-e703-4764-9321-2a22fcf53774\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyvirtnetb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef\"\ + ,\r\n \"etag\": \"W/\\\"3eff4964-6288-4472-855a-935b38c4be95\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ - \ \"resourceGuid\": \"b9118101-31a6-4b74-985a-55fa7414cec7\",\r\n \"\ + \ \"resourceGuid\": \"4dc1befd-0e17-465e-90f3-251856f22a7a\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.11.0.0/16\"\ ,\r\n \"10.12.0.0/16\"\r\n ]\r\n },\r\n \"subnets\": [],\r\ \n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": false,\r\ \n \"enableVmProtection\": false\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/80ae660a-fe97-4ec6-bb96-b97e77b287b0?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/64a467b8-cdbd-40b4-9aff-03c58bf6bf63?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -41,7 +41,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:08:08 GMT + - Tue, 22 Oct 2019 06:12:47 GMT expires: - '-1' pragma: @@ -54,7 +54,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - ed9e2223-e49b-49e4-8803-161ba045929d + - 359d595f-434b-4ae3-ba6f-095500ba235f x-ms-ratelimit-remaining-subscription-writes: - '1199' status: @@ -71,9 +71,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/80ae660a-fe97-4ec6-bb96-b97e77b287b0?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/64a467b8-cdbd-40b4-9aff-03c58bf6bf63?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -85,7 +85,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:08:12 GMT + - Tue, 22 Oct 2019 06:12:50 GMT expires: - '-1' pragma: @@ -102,7 +102,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - bf7d9a14-7928-41fa-b993-41eceefbf807 + - 6ba29968-b669-48dc-ae6c-287dba17229c status: code: 200 message: OK @@ -117,16 +117,16 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyvirtnetb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"9106994b-0e47-49e0-a633-9994d5afd1a1\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyvirtnetb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef\"\ + ,\r\n \"etag\": \"W/\\\"3a8b4b22-7c11-4ab8-be8a-23739a784a10\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"b9118101-31a6-4b74-985a-55fa7414cec7\",\r\n \"\ + \ \"resourceGuid\": \"4dc1befd-0e17-465e-90f3-251856f22a7a\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.11.0.0/16\"\ ,\r\n \"10.12.0.0/16\"\r\n ]\r\n },\r\n \"subnets\": [],\r\ \n \"virtualNetworkPeerings\": [],\r\n \"enableDdosProtection\": false,\r\ @@ -139,9 +139,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:08:13 GMT + - Tue, 22 Oct 2019 06:12:51 GMT etag: - - W/"9106994b-0e47-49e0-a633-9994d5afd1a1" + - W/"3a8b4b22-7c11-4ab8-be8a-23739a784a10" expires: - '-1' pragma: @@ -158,7 +158,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 4beafa27-9e19-4b74-a36b-1277130f9b9e + - 73c593c5-7101-48e5-9534-ba06c0df9d71 status: code: 200 message: OK @@ -177,22 +177,22 @@ interactions: - application/json; charset=utf-8 User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnetfeb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"75fb8549-e394-495f-85b1-472c9cecc529\\\"\",\r\n \ + string: "{\r\n \"name\": \"pysubnetfeb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef\"\ + ,\r\n \"etag\": \"W/\\\"f7e3941c-f6ec-42da-85ac-f088a62f4bd2\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ addressPrefix\": \"10.11.0.0/24\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ : \"Enabled\",\r\n \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\ \n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/3e777436-a82b-4cee-b664-2183abf8c5e7?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/94156f7a-e555-4f3d-8869-ded81e24dddc?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -200,7 +200,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:08:13 GMT + - Tue, 22 Oct 2019 06:12:51 GMT expires: - '-1' pragma: @@ -213,7 +213,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 1fdbce98-e700-45d9-ab4a-ab7c4da9b355 + - c84b24a5-e836-4a74-bb5c-84690cbd6bca x-ms-ratelimit-remaining-subscription-writes: - '1198' status: @@ -230,9 +230,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/3e777436-a82b-4cee-b664-2183abf8c5e7?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/94156f7a-e555-4f3d-8869-ded81e24dddc?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -244,7 +244,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:08:17 GMT + - Tue, 22 Oct 2019 06:12:55 GMT expires: - '-1' pragma: @@ -261,7 +261,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 3c78d5ab-3c60-4711-92a2-5eb63abc3c0f + - 5243ab9b-be93-408f-9957-78a459bbe341 status: code: 200 message: OK @@ -276,13 +276,13 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnetfeb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"0a95fac6-3861-4778-a80d-8d442de408c8\\\"\",\r\n \ + string: "{\r\n \"name\": \"pysubnetfeb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef\"\ + ,\r\n \"etag\": \"W/\\\"ad2c09e5-2f7c-47d6-84f3-24726a4f8412\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ addressPrefix\": \"10.11.0.0/24\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ : \"Enabled\",\r\n \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\ @@ -295,9 +295,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:08:17 GMT + - Tue, 22 Oct 2019 06:12:55 GMT etag: - - W/"0a95fac6-3861-4778-a80d-8d442de408c8" + - W/"ad2c09e5-2f7c-47d6-84f3-24726a4f8412" expires: - '-1' pragma: @@ -314,7 +314,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 2a9b3ed5-aeb3-43c0-88b7-72fb797e7b2b + - 2840d693-22c1-4272-8a7a-f24244bf0537 status: code: 200 message: OK @@ -333,22 +333,22 @@ interactions: - application/json; charset=utf-8 User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnetbeb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"414c46f1-718c-498a-8500-35987cf15758\\\"\",\r\n \ + string: "{\r\n \"name\": \"pysubnetbeb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef\"\ + ,\r\n \"etag\": \"W/\\\"162e504b-2d90-48c2-ba38-ebfc52bfcc0b\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ addressPrefix\": \"10.12.0.0/24\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ : \"Enabled\",\r\n \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\ \n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/4f97228d-055e-44fb-bc05-7c94af8cd3b0?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/617e70c6-643a-4b27-9952-32eda586c5ef?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -356,7 +356,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:08:17 GMT + - Tue, 22 Oct 2019 06:12:56 GMT expires: - '-1' pragma: @@ -369,7 +369,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - a6205904-6d38-44a4-8a77-156445d84c81 + - 1cd7a004-13a0-4fef-b9a6-ac619d1e1339 x-ms-ratelimit-remaining-subscription-writes: - '1197' status: @@ -386,9 +386,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/4f97228d-055e-44fb-bc05-7c94af8cd3b0?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/617e70c6-643a-4b27-9952-32eda586c5ef?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -400,7 +400,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:08:22 GMT + - Tue, 22 Oct 2019 06:13:00 GMT expires: - '-1' pragma: @@ -417,7 +417,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 4d707d04-2d29-4d56-9863-1cfa85bd43dc + - 1bb3d117-c060-45db-9eed-79557e9dd7db status: code: 200 message: OK @@ -432,13 +432,13 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnetbeb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"0d4766c3-a339-4d09-b8c3-3ad4d993eb93\\\"\",\r\n \ + string: "{\r\n \"name\": \"pysubnetbeb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef\"\ + ,\r\n \"etag\": \"W/\\\"268ecd12-1841-4156-b2e0-521f2800d7e9\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ addressPrefix\": \"10.12.0.0/24\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ : \"Enabled\",\r\n \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\ @@ -451,9 +451,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:08:22 GMT + - Tue, 22 Oct 2019 06:13:00 GMT etag: - - W/"0d4766c3-a339-4d09-b8c3-3ad4d993eb93" + - W/"268ecd12-1841-4156-b2e0-521f2800d7e9" expires: - '-1' pragma: @@ -470,7 +470,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 14c5188a-e469-49f4-9cd5-84d9f3ace990 + - 0e4e1bd7-d777-4582-9c0a-082f07f0ac38 status: code: 200 message: OK @@ -489,15 +489,15 @@ interactions: - application/json; charset=utf-8 User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"GatewaySubnet\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet\"\ - ,\r\n \"etag\": \"W/\\\"5b06bbc4-81f0-4327-be7e-7f804c6b880a\\\"\",\r\n \ + string: "{\r\n \"name\": \"GatewaySubnet\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet\"\ + ,\r\n \"etag\": \"W/\\\"1077cf82-e0f3-4b73-8c9e-9e91e94f7827\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ addressPrefix\": \"10.12.255.0/27\",\r\n \"delegations\": [],\r\n \"\ privateEndpointNetworkPolicies\": \"Enabled\",\r\n \"privateLinkServiceNetworkPolicies\"\ @@ -505,7 +505,7 @@ interactions: \r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/24d3fefe-d86f-4f46-9983-637d327ed230?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/695228e4-f258-4396-9c95-6312e0a1dff8?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -513,7 +513,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:08:22 GMT + - Tue, 22 Oct 2019 06:13:01 GMT expires: - '-1' pragma: @@ -526,7 +526,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 4f37b54a-ed09-490d-8243-66a5fff2ec72 + - ab791e35-7664-4583-acb8-efdfacb15504 x-ms-ratelimit-remaining-subscription-writes: - '1196' status: @@ -543,9 +543,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/24d3fefe-d86f-4f46-9983-637d327ed230?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/695228e4-f258-4396-9c95-6312e0a1dff8?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -557,7 +557,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:08:26 GMT + - Tue, 22 Oct 2019 06:13:06 GMT expires: - '-1' pragma: @@ -574,7 +574,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - ab37c4ae-9205-4751-9b01-da09a31a8dbe + - 199e8b44-e3d4-494b-8e53-c52150894101 status: code: 200 message: OK @@ -589,13 +589,13 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"GatewaySubnet\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet\"\ - ,\r\n \"etag\": \"W/\\\"03fe1c1c-771e-4839-a4ff-6bdfc13a8069\\\"\",\r\n \ + string: "{\r\n \"name\": \"GatewaySubnet\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet\"\ + ,\r\n \"etag\": \"W/\\\"f16e145f-09aa-4dcf-bfe6-5343c38de662\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ addressPrefix\": \"10.12.255.0/27\",\r\n \"delegations\": [],\r\n \"\ privateEndpointNetworkPolicies\": \"Enabled\",\r\n \"privateLinkServiceNetworkPolicies\"\ @@ -609,9 +609,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:08:26 GMT + - Tue, 22 Oct 2019 06:13:06 GMT etag: - - W/"03fe1c1c-771e-4839-a4ff-6bdfc13a8069" + - W/"f16e145f-09aa-4dcf-bfe6-5343c38de662" expires: - '-1' pragma: @@ -628,7 +628,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - ff2fae66-e56c-4b5e-98c6-37c70d90c4c1 + - 0ffcda0a-b10a-414f-98f0-9f1509f6bf63 status: code: 200 message: OK @@ -648,25 +648,25 @@ interactions: - application/json; charset=utf-8 User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyipnameb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"fae6f524-7860-4763-8b54-f9bfc3bb2459\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyipnameb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ + ,\r\n \"etag\": \"W/\\\"b4918d7b-3bc9-45a8-864d-b4849772b539\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"tags\": {\r\n \"key\": \"value\"\r\n\ \ },\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\ - \n \"resourceGuid\": \"df3976cf-176c-4c6b-abde-d74964f5c82d\",\r\n \"\ + \n \"resourceGuid\": \"9e19617b-0fc3-4ba1-b60a-211dcd6076e7\",\r\n \"\ publicIPAddressVersion\": \"IPv4\",\r\n \"publicIPAllocationMethod\": \"\ Dynamic\",\r\n \"idleTimeoutInMinutes\": 4,\r\n \"ipTags\": []\r\n \ \ },\r\n \"type\": \"Microsoft.Network/publicIPAddresses\",\r\n \"sku\"\ : {\r\n \"name\": \"Basic\",\r\n \"tier\": \"Regional\"\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ac5910e4-96c6-4b91-b5a0-84f84d016229?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/75e29491-cb1d-491e-8e66-035bdaee8c08?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -674,7 +674,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:08:29 GMT + - Tue, 22 Oct 2019 06:13:08 GMT expires: - '-1' pragma: @@ -687,7 +687,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 7c96ab24-88d2-4d8c-9e21-4c90d86b332d + - 47840755-14d8-4731-ba7f-6e1f8e1864e9 x-ms-ratelimit-remaining-subscription-writes: - '1195' status: @@ -704,9 +704,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/ac5910e4-96c6-4b91-b5a0-84f84d016229?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/75e29491-cb1d-491e-8e66-035bdaee8c08?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -718,7 +718,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:08:31 GMT + - Tue, 22 Oct 2019 06:13:09 GMT expires: - '-1' pragma: @@ -735,7 +735,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - f205594a-de85-4fcb-8c25-d77fc7fa3620 + - 432a08c9-ea3f-45ad-b8e4-fe600c54753f status: code: 200 message: OK @@ -750,16 +750,16 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyipnameb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"0f6c95ca-c6f7-4115-ad72-0917e85a5969\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyipnameb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ + ,\r\n \"etag\": \"W/\\\"ce049c5a-e5e4-457b-bbd3-4e624477d01a\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"tags\": {\r\n \"key\": \"value\"\r\n\ \ },\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\ - \n \"resourceGuid\": \"df3976cf-176c-4c6b-abde-d74964f5c82d\",\r\n \"\ + \n \"resourceGuid\": \"9e19617b-0fc3-4ba1-b60a-211dcd6076e7\",\r\n \"\ publicIPAddressVersion\": \"IPv4\",\r\n \"publicIPAllocationMethod\": \"\ Dynamic\",\r\n \"idleTimeoutInMinutes\": 4,\r\n \"ipTags\": []\r\n \ \ },\r\n \"type\": \"Microsoft.Network/publicIPAddresses\",\r\n \"sku\"\ @@ -772,9 +772,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:08:31 GMT + - Tue, 22 Oct 2019 06:13:09 GMT etag: - - W/"0f6c95ca-c6f7-4115-ad72-0917e85a5969" + - W/"ce049c5a-e5e4-457b-bbd3-4e624477d01a" expires: - '-1' pragma: @@ -791,16 +791,16 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - b91fed66-4a33-4f40-8a02-22fb0036ef0d + - d1624d20-2317-49dc-8a5c-2e4cc1f253d2 status: code: 200 message: OK - request: body: '{"location": "westus", "properties": {"ipConfigurations": [{"properties": - {"privateIPAllocationMethod": "Dynamic", "subnet": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet"}, - "publicIPAddress": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef"}}, + {"privateIPAllocationMethod": "Dynamic", "subnet": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet"}, + "publicIPAddress": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef"}}, "name": "default"}], "gatewayType": "VPN", "vpnType": "RouteBased", "enableBgp": - false, "sku": {"name": "Standard", "tier": "Standard", "capacity": 2}}}' + false, "sku": {"name": "Standard", "tier": "Standard"}}}' headers: Accept: - application/json @@ -809,31 +809,31 @@ interactions: Connection: - keep-alive Content-Length: - - '732' + - '717' Content-Type: - application/json; charset=utf-8 User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyvngb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"a2404453-bef2-44c8-b38c-3fcf70caecf2\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyvngb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef\"\ + ,\r\n \"etag\": \"W/\\\"a8f3f56b-3e71-4835-98d0-80c282ec76ba\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworkGateways\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ - ,\r\n \"resourceGuid\": \"30051c36-8e23-4cb6-add9-ad1ca9243e89\",\r\n \ - \ \"ipConfigurations\": [\r\n {\r\n \"name\": \"default\",\r\ - \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef/ipConfigurations/default\"\ - ,\r\n \"etag\": \"W/\\\"a2404453-bef2-44c8-b38c-3fcf70caecf2\\\"\"\ + ,\r\n \"resourceGuid\": \"8da9e6ab-660e-439d-ae18-db43d93dd506\",\r\n \ + \ \"packetCaptureDiagnosticState\": \"None\",\r\n \"ipConfigurations\"\ + : [\r\n {\r\n \"name\": \"default\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef/ipConfigurations/default\"\ + ,\r\n \"etag\": \"W/\\\"a8f3f56b-3e71-4835-98d0-80c282ec76ba\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/virtualNetworkGateways/ipConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"privateIPAllocationMethod\": \"Dynamic\",\r\n \"\ - publicIPAddress\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ - \r\n },\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet\"\ + publicIPAddress\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ + \r\n },\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet\"\ \r\n }\r\n }\r\n }\r\n ],\r\n \"sku\": {\r\n \ \ \"name\": \"Standard\",\r\n \"tier\": \"Standard\",\r\n \"\ capacity\": 2\r\n },\r\n \"gatewayType\": \"Vpn\",\r\n \"vpnType\"\ @@ -845,15 +845,15 @@ interactions: }" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 cache-control: - no-cache content-length: - - '2121' + - '2166' content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:08:33 GMT + - Tue, 22 Oct 2019 06:13:11 GMT expires: - '-1' pragma: @@ -866,7 +866,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 52ebe1f9-8ec5-477a-b613-6e45f2955a5b + - 6b860004-d7af-4746-8f7d-57e66d609727 x-ms-ratelimit-remaining-subscription-writes: - '1194' status: @@ -883,9 +883,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -897,7 +897,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:08:44 GMT + - Tue, 22 Oct 2019 06:13:23 GMT expires: - '-1' pragma: @@ -914,7 +914,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 27527334-00d6-4471-9533-aaa8ead33181 + - 2f1ccd1d-bdf8-42a0-90d6-b5a19d3b7e5e status: code: 200 message: OK @@ -929,9 +929,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -943,7 +943,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:08:55 GMT + - Tue, 22 Oct 2019 06:13:33 GMT expires: - '-1' pragma: @@ -960,7 +960,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 15066100-df54-4e22-a23f-e72712b452a1 + - 412bf615-6106-4260-ab01-e67de7b4ca37 status: code: 200 message: OK @@ -975,9 +975,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -989,7 +989,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:09:05 GMT + - Tue, 22 Oct 2019 06:13:43 GMT expires: - '-1' pragma: @@ -1006,7 +1006,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - abfdae97-ae73-4b1a-a1b4-6f1a10c365f1 + - de77f42d-64aa-44dd-becc-5845a58f5b7e status: code: 200 message: OK @@ -1021,9 +1021,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1035,7 +1035,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:09:16 GMT + - Tue, 22 Oct 2019 06:13:53 GMT expires: - '-1' pragma: @@ -1052,7 +1052,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 5f1e1fbb-282c-4e77-a12e-ef9db9fb9609 + - 5ff61a42-4318-42aa-b097-8edd5fc02570 status: code: 200 message: OK @@ -1067,9 +1067,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1081,7 +1081,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:09:26 GMT + - Tue, 22 Oct 2019 06:14:03 GMT expires: - '-1' pragma: @@ -1098,7 +1098,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 7c10af7c-4b24-45b6-b4d1-3c5849e26a42 + - fe20200b-84b8-499e-9fc1-d48a68e79c05 status: code: 200 message: OK @@ -1113,9 +1113,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1127,7 +1127,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:09:36 GMT + - Tue, 22 Oct 2019 06:14:13 GMT expires: - '-1' pragma: @@ -1144,7 +1144,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 9f0887de-9916-47a5-a277-0361dc763c2f + - ff9ec85e-a6fb-4b7d-983e-cc9a4346bc68 status: code: 200 message: OK @@ -1159,9 +1159,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1173,7 +1173,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:09:47 GMT + - Tue, 22 Oct 2019 06:14:24 GMT expires: - '-1' pragma: @@ -1190,7 +1190,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 2ed0c6d8-38e6-471b-9948-ac2791c10387 + - 5cfc9ab8-be19-4cc8-a7b2-93713fcc4114 status: code: 200 message: OK @@ -1205,9 +1205,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1219,7 +1219,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:09:57 GMT + - Tue, 22 Oct 2019 06:14:34 GMT expires: - '-1' pragma: @@ -1236,7 +1236,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 876da47d-503b-4c89-a71f-4f20a62b4c42 + - 44f25e16-a6c3-4300-b49c-bd84866b8259 status: code: 200 message: OK @@ -1251,9 +1251,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1265,7 +1265,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:10:07 GMT + - Tue, 22 Oct 2019 06:14:45 GMT expires: - '-1' pragma: @@ -1282,7 +1282,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - a95c630c-df02-4717-b824-7f19292816fd + - a73140ca-961f-48d7-a6b7-a036c60f06a9 status: code: 200 message: OK @@ -1297,9 +1297,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1311,7 +1311,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:10:19 GMT + - Tue, 22 Oct 2019 06:14:56 GMT expires: - '-1' pragma: @@ -1328,7 +1328,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 13aef582-99d9-4639-975b-64416bbd8a9f + - a1e9d8e7-5a69-46bf-8374-78dff088d533 status: code: 200 message: OK @@ -1343,9 +1343,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1357,7 +1357,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:10:29 GMT + - Tue, 22 Oct 2019 06:15:06 GMT expires: - '-1' pragma: @@ -1374,7 +1374,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 113babee-314a-4dac-9ff8-07b2da79df46 + - a84afee4-23d8-4b93-906f-c92cadcf6c13 status: code: 200 message: OK @@ -1389,9 +1389,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1403,7 +1403,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:10:40 GMT + - Tue, 22 Oct 2019 06:15:16 GMT expires: - '-1' pragma: @@ -1420,7 +1420,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 2b006ad2-31e8-4d28-8197-c18358881957 + - fcb65122-c330-4f34-a73e-663f2537eca9 status: code: 200 message: OK @@ -1435,9 +1435,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1449,7 +1449,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:10:50 GMT + - Tue, 22 Oct 2019 06:15:26 GMT expires: - '-1' pragma: @@ -1466,7 +1466,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 53378d1c-68a4-4052-9548-891a6dba76e9 + - 7ead09e8-21ba-4d88-bc93-801c6fd44bd4 status: code: 200 message: OK @@ -1481,9 +1481,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1495,7 +1495,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:11:00 GMT + - Tue, 22 Oct 2019 06:15:36 GMT expires: - '-1' pragma: @@ -1512,7 +1512,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 66209aec-e7c4-4455-b10a-0f6a46f8151a + - abbfd9c0-fe40-473b-a695-94b2954dff51 status: code: 200 message: OK @@ -1527,9 +1527,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1541,7 +1541,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:11:11 GMT + - Tue, 22 Oct 2019 06:15:47 GMT expires: - '-1' pragma: @@ -1558,7 +1558,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 192c7e11-429c-4483-8035-a8603b1efe53 + - 4692b68d-810b-4212-ba68-6a2191613765 status: code: 200 message: OK @@ -1573,9 +1573,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1587,7 +1587,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:11:21 GMT + - Tue, 22 Oct 2019 06:15:57 GMT expires: - '-1' pragma: @@ -1604,7 +1604,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 619f7913-b756-452e-a84a-46b7a3e66265 + - 0d3f8fc0-d2f3-497a-8398-1b56cf6830b8 status: code: 200 message: OK @@ -1619,9 +1619,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1633,7 +1633,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:11:31 GMT + - Tue, 22 Oct 2019 06:16:07 GMT expires: - '-1' pragma: @@ -1650,7 +1650,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - c746404f-e90f-4db0-ab35-9cd67b0bfa7d + - e9d8fee3-fe81-4b7b-94b5-147f5fdc3685 status: code: 200 message: OK @@ -1665,9 +1665,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1679,7 +1679,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:11:42 GMT + - Tue, 22 Oct 2019 06:16:18 GMT expires: - '-1' pragma: @@ -1696,7 +1696,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 42edaa82-a915-4403-919c-8829c36ada95 + - bed5783a-dcc8-495e-b99d-5cd2c1421b83 status: code: 200 message: OK @@ -1711,9 +1711,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1725,7 +1725,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:11:52 GMT + - Tue, 22 Oct 2019 06:16:29 GMT expires: - '-1' pragma: @@ -1742,7 +1742,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 041b1816-5694-4bdb-8a5a-0b0f18449ed0 + - ac24f11a-3f14-4b4b-93b3-1f81b6efd1f6 status: code: 200 message: OK @@ -1757,9 +1757,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1771,7 +1771,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:12:03 GMT + - Tue, 22 Oct 2019 06:16:39 GMT expires: - '-1' pragma: @@ -1788,7 +1788,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - f7c81a02-ff2a-4ab3-9901-01183b2d276f + - 2d737dce-0957-49be-befa-a4bcccb0a785 status: code: 200 message: OK @@ -1803,9 +1803,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1817,7 +1817,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:12:13 GMT + - Tue, 22 Oct 2019 06:16:49 GMT expires: - '-1' pragma: @@ -1834,7 +1834,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 00c9ca58-f914-47fc-9624-02a2701cbe5f + - ecb7a6b0-a815-4274-96e4-396629b45e1f status: code: 200 message: OK @@ -1849,9 +1849,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1863,7 +1863,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:12:23 GMT + - Tue, 22 Oct 2019 06:16:59 GMT expires: - '-1' pragma: @@ -1880,7 +1880,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 6dc89b79-b8d0-4c1e-a30a-e283e0784fcc + - 3520b1cf-f9c5-40fe-a030-a84cdf54a1b6 status: code: 200 message: OK @@ -1895,9 +1895,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1909,7 +1909,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:12:34 GMT + - Tue, 22 Oct 2019 06:17:10 GMT expires: - '-1' pragma: @@ -1926,7 +1926,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - ede67c26-de5f-460d-9504-f4c4b2aa139f + - 977cb7de-ff7b-4a17-8c67-a2f524b14856 status: code: 200 message: OK @@ -1941,9 +1941,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1955,7 +1955,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:12:44 GMT + - Tue, 22 Oct 2019 06:17:20 GMT expires: - '-1' pragma: @@ -1972,7 +1972,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - a491901e-790d-4eab-8fdf-062dca47f29a + - 1e5c0398-cbc2-4efa-b7b3-0f26a6bffa6b status: code: 200 message: OK @@ -1987,9 +1987,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2001,7 +2001,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:12:54 GMT + - Tue, 22 Oct 2019 06:17:30 GMT expires: - '-1' pragma: @@ -2018,7 +2018,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 5cbf8bd7-a3ca-4a6b-831b-93205a5c2e10 + - e04f0678-a7f6-491d-ba18-5abd40f58ec2 status: code: 200 message: OK @@ -2033,9 +2033,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2047,7 +2047,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:13:05 GMT + - Tue, 22 Oct 2019 06:17:41 GMT expires: - '-1' pragma: @@ -2064,7 +2064,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 8aa7475f-501e-4b86-b36f-fda96b567c7d + - 33e1d26b-c79d-4cbb-a452-b287acd0f64e status: code: 200 message: OK @@ -2079,9 +2079,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2093,7 +2093,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:13:15 GMT + - Tue, 22 Oct 2019 06:17:51 GMT expires: - '-1' pragma: @@ -2110,7 +2110,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 6b63bafa-59e2-43a0-9199-17f09dd876c2 + - 82f6e283-ad7b-421f-bd78-3f8185eb08ee status: code: 200 message: OK @@ -2125,9 +2125,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2139,7 +2139,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:13:26 GMT + - Tue, 22 Oct 2019 06:18:02 GMT expires: - '-1' pragma: @@ -2156,7 +2156,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - dcbc83c9-cf07-4c16-bb7b-bd5b72021f6e + - 05e4f2cf-3b1c-4aaf-8343-60c643f1a7a0 status: code: 200 message: OK @@ -2171,9 +2171,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2185,7 +2185,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:13:36 GMT + - Tue, 22 Oct 2019 06:18:12 GMT expires: - '-1' pragma: @@ -2202,7 +2202,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 270b6e08-469f-4a18-afd1-e2d51d021fbe + - b1ace49c-62a6-41f5-90a6-806f52cb4c6a status: code: 200 message: OK @@ -2217,9 +2217,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2231,7 +2231,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:13:46 GMT + - Tue, 22 Oct 2019 06:18:23 GMT expires: - '-1' pragma: @@ -2248,7 +2248,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 5400dc29-b39c-4b6f-9a02-b970d095b05f + - d5b0563e-1f74-4c10-9832-6c12862cb518 status: code: 200 message: OK @@ -2263,9 +2263,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2277,7 +2277,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:13:57 GMT + - Tue, 22 Oct 2019 06:18:33 GMT expires: - '-1' pragma: @@ -2294,7 +2294,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 2df700b4-1485-4706-95a0-e3bb51d4ed9d + - fe35bddc-892e-4caa-9dcf-4f5d2d207948 status: code: 200 message: OK @@ -2309,9 +2309,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2323,7 +2323,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:14:07 GMT + - Tue, 22 Oct 2019 06:18:43 GMT expires: - '-1' pragma: @@ -2340,7 +2340,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 0ad63fcd-bb51-4354-8575-c6802e4bc933 + - 0e31d302-baaf-4b13-b561-597441840756 status: code: 200 message: OK @@ -2355,9 +2355,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2369,7 +2369,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:14:17 GMT + - Tue, 22 Oct 2019 06:18:53 GMT expires: - '-1' pragma: @@ -2386,7 +2386,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 0e1a8fae-b8ff-405a-8534-2a0426e6dd70 + - 3eec5cf1-b06c-4c62-bd25-7d0136828a47 status: code: 200 message: OK @@ -2401,9 +2401,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2415,7 +2415,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:14:28 GMT + - Tue, 22 Oct 2019 06:19:03 GMT expires: - '-1' pragma: @@ -2432,7 +2432,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - f9860a16-c11d-4360-a7a1-def13a669feb + - 61c0793f-241b-43e8-925b-d6daced6c60a status: code: 200 message: OK @@ -2447,9 +2447,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2461,7 +2461,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:14:38 GMT + - Tue, 22 Oct 2019 06:19:14 GMT expires: - '-1' pragma: @@ -2478,7 +2478,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - eefe4680-a0a0-429b-95cc-8dbd42faefab + - 944421c5-dd7b-4839-89ca-261af01dad46 status: code: 200 message: OK @@ -2493,9 +2493,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2507,7 +2507,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:14:49 GMT + - Tue, 22 Oct 2019 06:19:24 GMT expires: - '-1' pragma: @@ -2524,7 +2524,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 59c49f74-f29a-4a2c-8031-b15af4aafd99 + - 29d3d919-0d7c-4e8a-aed3-caefffa6c389 status: code: 200 message: OK @@ -2539,9 +2539,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2553,7 +2553,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:14:59 GMT + - Tue, 22 Oct 2019 06:19:36 GMT expires: - '-1' pragma: @@ -2570,7 +2570,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 443fdb2d-25b4-4d31-944d-6270bfcedb4b + - a8cdf252-a654-43ef-8b26-4ce8938d5c8a status: code: 200 message: OK @@ -2585,9 +2585,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2599,7 +2599,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:15:09 GMT + - Tue, 22 Oct 2019 06:19:46 GMT expires: - '-1' pragma: @@ -2616,7 +2616,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 8d477c31-2532-487d-9ac8-79d40de6dffc + - 0c64d4d7-784d-4ea4-aa44-149f4a42d7f8 status: code: 200 message: OK @@ -2631,9 +2631,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2645,7 +2645,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:15:20 GMT + - Tue, 22 Oct 2019 06:19:56 GMT expires: - '-1' pragma: @@ -2662,7 +2662,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 1e593917-a4ae-421f-99f2-5fc231383b6d + - 6aad4440-4b2f-4c20-9262-926531890636 status: code: 200 message: OK @@ -2677,9 +2677,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2691,7 +2691,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:15:30 GMT + - Tue, 22 Oct 2019 06:20:06 GMT expires: - '-1' pragma: @@ -2708,7 +2708,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 84722a47-ba5f-429f-8c08-038d1bf8d076 + - b20299cc-4ef3-4a7b-b39b-5c0b5fd97645 status: code: 200 message: OK @@ -2723,9 +2723,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2737,7 +2737,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:15:40 GMT + - Tue, 22 Oct 2019 06:20:17 GMT expires: - '-1' pragma: @@ -2754,7 +2754,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 0a88d8d0-168d-4642-873c-9e2fd2039426 + - 1b72ad78-5ef8-4eeb-af0b-4529b3f91ed9 status: code: 200 message: OK @@ -2769,9 +2769,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2783,7 +2783,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:15:51 GMT + - Tue, 22 Oct 2019 06:20:27 GMT expires: - '-1' pragma: @@ -2800,7 +2800,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 8f9f7236-4dbc-4505-ab46-8da58c8a19fb + - 419a697b-2f55-4d25-9f0c-958300856423 status: code: 200 message: OK @@ -2815,9 +2815,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2829,7 +2829,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:16:01 GMT + - Tue, 22 Oct 2019 06:20:37 GMT expires: - '-1' pragma: @@ -2846,7 +2846,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 16811ca7-b289-427b-8a29-536c07ef8e43 + - e756c6b7-5c40-42cd-96ae-c35443c39deb status: code: 200 message: OK @@ -2861,9 +2861,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2875,7 +2875,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:16:12 GMT + - Tue, 22 Oct 2019 06:20:47 GMT expires: - '-1' pragma: @@ -2892,7 +2892,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 9684ef56-d21d-4ff6-9904-bc493253d33d + - ce09c49d-433a-4d58-9e2f-e48e83e6eaf9 status: code: 200 message: OK @@ -2907,9 +2907,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2921,7 +2921,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:16:22 GMT + - Tue, 22 Oct 2019 06:20:57 GMT expires: - '-1' pragma: @@ -2938,7 +2938,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - eb23dfde-ad9c-4f3b-be0c-4f268b08152a + - 202524d9-0101-49e1-a3b4-f05e5c682ea1 status: code: 200 message: OK @@ -2953,9 +2953,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2967,7 +2967,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:16:32 GMT + - Tue, 22 Oct 2019 06:21:08 GMT expires: - '-1' pragma: @@ -2984,7 +2984,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 7be5ba8d-1e8b-48f7-9421-f66fc20130ff + - 6b956bcb-136f-4bd8-94b5-497bad20651e status: code: 200 message: OK @@ -2999,9 +2999,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3013,7 +3013,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:16:42 GMT + - Tue, 22 Oct 2019 06:21:18 GMT expires: - '-1' pragma: @@ -3030,7 +3030,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 8ac6a4d4-fe8a-48d6-a250-85a5deb2be12 + - e9097c9e-7819-43fb-964d-1f44ab40db26 status: code: 200 message: OK @@ -3045,9 +3045,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3059,7 +3059,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:16:53 GMT + - Tue, 22 Oct 2019 06:21:29 GMT expires: - '-1' pragma: @@ -3076,7 +3076,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 261df835-b675-41d2-8218-08b353630833 + - 3e0b037c-0a81-4f91-8d3a-70e78a7ea220 status: code: 200 message: OK @@ -3091,9 +3091,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3105,7 +3105,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:17:04 GMT + - Tue, 22 Oct 2019 06:21:40 GMT expires: - '-1' pragma: @@ -3122,7 +3122,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 41720d3e-5143-4c3f-8760-192766f054c4 + - 615839a4-8e19-4596-89f1-6c09d7a01308 status: code: 200 message: OK @@ -3137,9 +3137,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3151,7 +3151,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:17:14 GMT + - Tue, 22 Oct 2019 06:21:50 GMT expires: - '-1' pragma: @@ -3168,7 +3168,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - e78968f5-23b8-42b6-b78b-26f048807fa8 + - bfa7a839-b8f5-4245-9b7a-2fb8e687453b status: code: 200 message: OK @@ -3183,9 +3183,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3197,7 +3197,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:17:24 GMT + - Tue, 22 Oct 2019 06:22:00 GMT expires: - '-1' pragma: @@ -3214,7 +3214,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 463cad37-21f5-4604-b327-b9be9b44df8c + - 0778b521-3402-479f-85c0-f24519b6c421 status: code: 200 message: OK @@ -3229,9 +3229,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3243,7 +3243,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:17:34 GMT + - Tue, 22 Oct 2019 06:22:10 GMT expires: - '-1' pragma: @@ -3260,7 +3260,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - d4dc46a6-6686-4f57-b764-8d773804e66e + - 6b20d423-6278-427f-bdce-5dd537e33b77 status: code: 200 message: OK @@ -3275,9 +3275,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3289,7 +3289,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:17:45 GMT + - Tue, 22 Oct 2019 06:22:20 GMT expires: - '-1' pragma: @@ -3306,7 +3306,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 27bede3c-d6d0-47bf-8960-0851cbdb7729 + - 1693e78d-de6b-4652-8a1d-2d49613c7bbb status: code: 200 message: OK @@ -3321,9 +3321,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3335,7 +3335,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:17:56 GMT + - Tue, 22 Oct 2019 06:22:31 GMT expires: - '-1' pragma: @@ -3352,7 +3352,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - a4f975a8-e767-4611-bdaa-a7f3b09c1dd0 + - 1fe6340c-f4eb-4d27-ad46-007f8f256375 status: code: 200 message: OK @@ -3367,9 +3367,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3381,7 +3381,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:18:06 GMT + - Tue, 22 Oct 2019 06:22:41 GMT expires: - '-1' pragma: @@ -3398,7 +3398,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - b258d252-a081-42ee-8f05-7f1abe15a817 + - 66329b12-7a1a-4607-a00c-a59976beaac1 status: code: 200 message: OK @@ -3413,9 +3413,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3427,7 +3427,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:18:16 GMT + - Tue, 22 Oct 2019 06:22:52 GMT expires: - '-1' pragma: @@ -3444,7 +3444,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - fe516c25-2d21-44fc-b4f0-8a60fb306a79 + - d6c928ba-9f00-41ad-8838-f07b83064619 status: code: 200 message: OK @@ -3459,9 +3459,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3473,7 +3473,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:18:26 GMT + - Tue, 22 Oct 2019 06:23:02 GMT expires: - '-1' pragma: @@ -3490,7 +3490,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 6dabaf00-0a83-430e-8ea3-1394cb9209f6 + - 465d5e9e-9f22-4170-9500-a0ea17aaa8bf status: code: 200 message: OK @@ -3505,9 +3505,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3519,7 +3519,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:18:37 GMT + - Tue, 22 Oct 2019 06:23:12 GMT expires: - '-1' pragma: @@ -3536,7 +3536,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - a8c01e9a-51d5-4380-967a-e4c08a31d564 + - 5274ff24-56f7-439e-9c1f-7811d64761c5 status: code: 200 message: OK @@ -3551,9 +3551,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3565,7 +3565,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:18:48 GMT + - Tue, 22 Oct 2019 06:23:22 GMT expires: - '-1' pragma: @@ -3582,7 +3582,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 3d8b2737-57ba-4e42-a0a1-eee0c4821272 + - 2ee384d8-077c-4749-a52c-c4e6fb728bc8 status: code: 200 message: OK @@ -3597,9 +3597,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3611,7 +3611,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:18:58 GMT + - Tue, 22 Oct 2019 06:23:34 GMT expires: - '-1' pragma: @@ -3628,7 +3628,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - da1c7c62-94b0-47c4-b6eb-df5f9c3b446e + - 0a6545a9-4bcf-4f4b-9a2c-fbe43f7bdd5f status: code: 200 message: OK @@ -3643,9 +3643,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3657,7 +3657,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:19:08 GMT + - Tue, 22 Oct 2019 06:23:44 GMT expires: - '-1' pragma: @@ -3674,7 +3674,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 65c59cb9-4544-45e7-b3ed-6376176b2a80 + - 2a5edaf6-4e23-4d2f-a4e7-4e1679d2e5d4 status: code: 200 message: OK @@ -3689,9 +3689,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3703,7 +3703,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:19:19 GMT + - Tue, 22 Oct 2019 06:23:54 GMT expires: - '-1' pragma: @@ -3720,7 +3720,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 678d5227-a46e-4242-93c7-4ece3d411b63 + - 856f0ac9-e513-4e36-9c75-dd9e28fb2859 status: code: 200 message: OK @@ -3735,9 +3735,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3749,7 +3749,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:19:29 GMT + - Tue, 22 Oct 2019 06:24:04 GMT expires: - '-1' pragma: @@ -3766,7 +3766,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 3ec11e2c-f267-4166-a107-2b3d01dca8c3 + - bf3fe89f-d2a0-4a3e-9f08-dc13d78c0684 status: code: 200 message: OK @@ -3781,9 +3781,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3795,7 +3795,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:19:39 GMT + - Tue, 22 Oct 2019 06:24:15 GMT expires: - '-1' pragma: @@ -3812,7 +3812,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - d6c75b09-366a-482f-ac77-5ec6a176c796 + - 225a848a-87e7-483b-9368-e972fec0c883 status: code: 200 message: OK @@ -3827,9 +3827,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3841,7 +3841,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:19:50 GMT + - Tue, 22 Oct 2019 06:24:25 GMT expires: - '-1' pragma: @@ -3858,7 +3858,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 97c97cf2-e6de-4ea3-8af8-5024f2c3b742 + - f16dff4c-9e59-4238-bab5-8dbf4ecacd94 status: code: 200 message: OK @@ -3873,9 +3873,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3887,7 +3887,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:20:00 GMT + - Tue, 22 Oct 2019 06:24:35 GMT expires: - '-1' pragma: @@ -3904,7 +3904,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - a767f232-dd87-4f4a-8f56-f1ad51a44af3 + - 2fa31122-1af0-47a6-9322-623a1088d8fe status: code: 200 message: OK @@ -3919,9 +3919,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3933,7 +3933,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:20:10 GMT + - Tue, 22 Oct 2019 06:24:45 GMT expires: - '-1' pragma: @@ -3950,7 +3950,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 709ffd14-f3f2-4a18-97d3-1d96c87039f4 + - d30e60b1-683b-4b38-ab30-832ff9febd8b status: code: 200 message: OK @@ -3965,9 +3965,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3979,7 +3979,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:20:21 GMT + - Tue, 22 Oct 2019 06:24:55 GMT expires: - '-1' pragma: @@ -3996,7 +3996,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - b82cf4e7-1fcc-4f76-8ebc-c617210c0983 + - c25ac417-f51d-49cd-ad8e-cd8ece3be888 status: code: 200 message: OK @@ -4011,9 +4011,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4025,7 +4025,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:20:31 GMT + - Tue, 22 Oct 2019 06:25:07 GMT expires: - '-1' pragma: @@ -4042,7 +4042,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 1d222e0b-7290-4025-8103-51fce5bf57b3 + - 460c7f04-5920-4692-b2f6-2acdcc55174e status: code: 200 message: OK @@ -4057,9 +4057,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4071,7 +4071,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:20:41 GMT + - Tue, 22 Oct 2019 06:25:17 GMT expires: - '-1' pragma: @@ -4088,7 +4088,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 3106d250-bfe5-4ed8-b4bc-a73aad9873e5 + - 884f1377-f82a-45c3-a41b-addf361b4649 status: code: 200 message: OK @@ -4103,9 +4103,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4117,7 +4117,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:20:51 GMT + - Tue, 22 Oct 2019 06:25:27 GMT expires: - '-1' pragma: @@ -4134,7 +4134,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 1c0c4b4a-3d4f-4423-8c09-b95e2995e209 + - a39ac813-cbd9-4f7d-b8b2-7243708f647b status: code: 200 message: OK @@ -4149,9 +4149,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4163,7 +4163,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:21:02 GMT + - Tue, 22 Oct 2019 06:25:37 GMT expires: - '-1' pragma: @@ -4180,7 +4180,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 534e488e-0cc9-4395-8172-c8a5735d9e9e + - 5cf7740a-18d6-4909-ae73-46e4407a5cc0 status: code: 200 message: OK @@ -4195,9 +4195,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4209,7 +4209,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:21:13 GMT + - Tue, 22 Oct 2019 06:25:48 GMT expires: - '-1' pragma: @@ -4226,7 +4226,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - fabff2e9-97d6-4696-b418-4b29f9d59a45 + - 5ce0854c-99d9-45c6-9e31-8c410e34bc08 status: code: 200 message: OK @@ -4241,9 +4241,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4255,7 +4255,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:21:23 GMT + - Tue, 22 Oct 2019 06:25:58 GMT expires: - '-1' pragma: @@ -4272,7 +4272,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 365653eb-79fc-4d46-b040-b564aaabd605 + - eaa4b7a8-acd5-4784-8a30-4e6f96c13f16 status: code: 200 message: OK @@ -4287,9 +4287,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4301,7 +4301,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:21:33 GMT + - Tue, 22 Oct 2019 06:26:08 GMT expires: - '-1' pragma: @@ -4318,7 +4318,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - c5940ef4-459d-461a-8591-6848b37590f4 + - 04f5e78e-086d-45ac-8e18-aa1263877773 status: code: 200 message: OK @@ -4333,9 +4333,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4347,7 +4347,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:21:43 GMT + - Tue, 22 Oct 2019 06:26:19 GMT expires: - '-1' pragma: @@ -4364,7 +4364,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - b35e5b0d-ef60-45a2-a798-84b06c6c60ce + - 026e1809-8703-4b7e-866a-4df9fef25cc7 status: code: 200 message: OK @@ -4379,9 +4379,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4393,7 +4393,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:21:54 GMT + - Tue, 22 Oct 2019 06:26:29 GMT expires: - '-1' pragma: @@ -4410,7 +4410,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - a4465fc6-9a94-4ade-8813-34abe22e4144 + - 74054778-c6c6-4ede-bb31-5fe49f32e1b2 status: code: 200 message: OK @@ -4425,9 +4425,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4439,7 +4439,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:22:05 GMT + - Tue, 22 Oct 2019 06:26:39 GMT expires: - '-1' pragma: @@ -4456,7 +4456,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - cfe9b70c-1c70-47c3-b871-56171f07da28 + - de9a5a37-7380-4e15-8768-d5b2884238e7 status: code: 200 message: OK @@ -4471,9 +4471,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4485,7 +4485,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:22:15 GMT + - Tue, 22 Oct 2019 06:26:49 GMT expires: - '-1' pragma: @@ -4502,7 +4502,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - e3ef7fa4-6072-4844-85cc-5b4fcc53a3d1 + - a701703e-f290-4e71-8224-9aea5f32a0e1 status: code: 200 message: OK @@ -4517,9 +4517,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4531,7 +4531,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:22:25 GMT + - Tue, 22 Oct 2019 06:27:00 GMT expires: - '-1' pragma: @@ -4548,7 +4548,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 80294506-5aab-4dc2-8565-1e6d4f8709b7 + - a5126c23-03cb-47e0-88f9-1e1772a8b2ed status: code: 200 message: OK @@ -4563,9 +4563,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4577,7 +4577,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:22:35 GMT + - Tue, 22 Oct 2019 06:27:11 GMT expires: - '-1' pragma: @@ -4594,7 +4594,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - a20de0b3-d672-43ef-b5a2-0ce5ac3a8a64 + - 2aa3a4d3-89ab-453f-a534-ba8123d5b286 status: code: 200 message: OK @@ -4609,9 +4609,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4623,7 +4623,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:22:46 GMT + - Tue, 22 Oct 2019 06:27:21 GMT expires: - '-1' pragma: @@ -4640,7 +4640,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 357a7a50-a074-463a-9eb4-930a9f28aaa4 + - f0f4414c-78e2-44ca-a03d-f352deac5f6e status: code: 200 message: OK @@ -4655,9 +4655,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4669,7 +4669,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:22:57 GMT + - Tue, 22 Oct 2019 06:27:31 GMT expires: - '-1' pragma: @@ -4686,7 +4686,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 8ad00910-7595-4a32-ab4a-92d83f5b15e6 + - 01b1d68b-a6ef-483f-be1a-b2e3598cffe9 status: code: 200 message: OK @@ -4701,9 +4701,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4715,7 +4715,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:23:07 GMT + - Tue, 22 Oct 2019 06:27:42 GMT expires: - '-1' pragma: @@ -4732,7 +4732,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 52bf01ba-d22a-44b8-999f-ede01a62e241 + - 818e1760-3efa-483d-8d71-35ec64eeb604 status: code: 200 message: OK @@ -4747,9 +4747,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4761,7 +4761,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:23:17 GMT + - Tue, 22 Oct 2019 06:27:52 GMT expires: - '-1' pragma: @@ -4778,7 +4778,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 962de38c-36cc-4aa0-9457-4747da0c6332 + - f405a80f-b83c-401a-b438-c0ae75641603 status: code: 200 message: OK @@ -4793,9 +4793,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4807,7 +4807,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:23:28 GMT + - Tue, 22 Oct 2019 06:28:02 GMT expires: - '-1' pragma: @@ -4824,7 +4824,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 0541ebf4-7976-4d34-8d69-bb65e9900c03 + - 7fdf726d-2dee-4fe6-8efd-0614fbb67a4f status: code: 200 message: OK @@ -4839,9 +4839,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4853,7 +4853,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:23:38 GMT + - Tue, 22 Oct 2019 06:28:12 GMT expires: - '-1' pragma: @@ -4870,7 +4870,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 3fc1ba9b-9ceb-41d0-bb6d-6cafb7c04adc + - 6c0507dd-85ae-4e18-8799-627b32ed3003 status: code: 200 message: OK @@ -4885,9 +4885,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4899,7 +4899,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:23:48 GMT + - Tue, 22 Oct 2019 06:28:23 GMT expires: - '-1' pragma: @@ -4916,7 +4916,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 5d772e0f-0236-4667-872d-b9c12be76bde + - cd5e639b-88f0-470f-8d8c-4c1d54bef1c1 status: code: 200 message: OK @@ -4931,9 +4931,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4945,7 +4945,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:23:59 GMT + - Tue, 22 Oct 2019 06:28:33 GMT expires: - '-1' pragma: @@ -4962,7 +4962,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - f0df6035-7641-4885-8473-57639d433342 + - fe3fbee4-7616-49f0-b350-941ffe56cd04 status: code: 200 message: OK @@ -4977,9 +4977,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4991,7 +4991,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:24:09 GMT + - Tue, 22 Oct 2019 06:28:44 GMT expires: - '-1' pragma: @@ -5008,7 +5008,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 76212b15-f380-47ab-b951-e14527a212f3 + - 7029c710-30e1-4139-af39-5b8048ebb2e2 status: code: 200 message: OK @@ -5023,9 +5023,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5037,7 +5037,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:24:19 GMT + - Tue, 22 Oct 2019 06:28:54 GMT expires: - '-1' pragma: @@ -5054,7 +5054,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 817983f9-2bb0-4400-af09-13cbffdf901a + - 77437741-9a91-4047-95d0-f343834363a2 status: code: 200 message: OK @@ -5069,9 +5069,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5083,7 +5083,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:24:30 GMT + - Tue, 22 Oct 2019 06:29:05 GMT expires: - '-1' pragma: @@ -5100,7 +5100,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 0e80529f-8bf2-49b5-a9fe-31319f7eea56 + - a401fe05-c1cb-4ac9-9a24-b68e37ef69c3 status: code: 200 message: OK @@ -5115,9 +5115,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5129,7 +5129,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:24:40 GMT + - Tue, 22 Oct 2019 06:29:15 GMT expires: - '-1' pragma: @@ -5146,7 +5146,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - bc055a2d-cf57-42c1-b7a9-729eb2664edd + - 0da52931-42e9-4ba6-b342-f49ff307765b status: code: 200 message: OK @@ -5161,9 +5161,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5175,7 +5175,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:24:50 GMT + - Tue, 22 Oct 2019 06:29:25 GMT expires: - '-1' pragma: @@ -5192,7 +5192,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 8e3bb320-ada0-44fc-b466-9583a51c63f5 + - f04a5a10-c9d6-46f6-ab16-61374bf09f7f status: code: 200 message: OK @@ -5207,9 +5207,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5221,7 +5221,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:25:01 GMT + - Tue, 22 Oct 2019 06:29:35 GMT expires: - '-1' pragma: @@ -5238,7 +5238,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 68493f79-d17b-440d-908f-82aea4448037 + - 4270ea22-4301-4b3c-871d-3d62b8853995 status: code: 200 message: OK @@ -5253,9 +5253,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5267,7 +5267,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:25:12 GMT + - Tue, 22 Oct 2019 06:29:45 GMT expires: - '-1' pragma: @@ -5284,7 +5284,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - c763da40-de39-4ada-89cb-427434db931a + - 6d73ff5c-c3eb-4a6e-971f-4950046535e0 status: code: 200 message: OK @@ -5299,9 +5299,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5313,7 +5313,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:25:22 GMT + - Tue, 22 Oct 2019 06:29:56 GMT expires: - '-1' pragma: @@ -5330,7 +5330,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 23c8e7ee-f24f-4b91-af73-a83c0ac36768 + - 04ce04dc-1f9e-4d22-b840-ab5f8ee7d1a6 status: code: 200 message: OK @@ -5345,9 +5345,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5359,7 +5359,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:25:32 GMT + - Tue, 22 Oct 2019 06:30:07 GMT expires: - '-1' pragma: @@ -5376,7 +5376,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 0789fa41-b249-45fa-b1c1-bfdc1fd0a6d4 + - 90e4ba9e-4faf-4d28-a7de-d7b57e41a8cc status: code: 200 message: OK @@ -5391,9 +5391,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5405,7 +5405,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:25:42 GMT + - Tue, 22 Oct 2019 06:30:17 GMT expires: - '-1' pragma: @@ -5422,7 +5422,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 89ea4090-45de-43d2-8c7d-a2d32f0314f5 + - 7ef89d30-f419-4ba3-80b0-9cac4576a84e status: code: 200 message: OK @@ -5437,9 +5437,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5451,7 +5451,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:25:53 GMT + - Tue, 22 Oct 2019 06:30:28 GMT expires: - '-1' pragma: @@ -5468,7 +5468,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - ac0d9ae8-e03f-4b64-b2f6-fcf6c9437d3a + - 45d86336-44fa-4601-b584-2a19cd14151a status: code: 200 message: OK @@ -5483,9 +5483,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5497,7 +5497,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:26:04 GMT + - Tue, 22 Oct 2019 06:30:38 GMT expires: - '-1' pragma: @@ -5514,7 +5514,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - ec170053-6e58-4477-a763-5840e0c18e18 + - 648eeb1f-7928-4c15-a684-f1978245ec1c status: code: 200 message: OK @@ -5529,9 +5529,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5543,7 +5543,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:26:14 GMT + - Tue, 22 Oct 2019 06:30:48 GMT expires: - '-1' pragma: @@ -5560,7 +5560,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - ef95060a-6188-4185-8763-b8e45e6c3a3c + - af16ba79-5359-46f8-b31d-e187bdbc2114 status: code: 200 message: OK @@ -5575,9 +5575,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5589,7 +5589,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:26:24 GMT + - Tue, 22 Oct 2019 06:30:58 GMT expires: - '-1' pragma: @@ -5606,7 +5606,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - f557da5b-f779-4bae-944a-4524c9cae87c + - e46450e0-27dc-4b11-80f3-fd6072e1250d status: code: 200 message: OK @@ -5621,9 +5621,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5635,7 +5635,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:26:35 GMT + - Tue, 22 Oct 2019 06:31:08 GMT expires: - '-1' pragma: @@ -5652,7 +5652,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 432d9b67-a036-416c-a1a1-b10646695ef9 + - e7128674-bf92-47d8-b649-b226f6e37e5a status: code: 200 message: OK @@ -5667,9 +5667,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5681,7 +5681,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:26:45 GMT + - Tue, 22 Oct 2019 06:31:19 GMT expires: - '-1' pragma: @@ -5698,7 +5698,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 8bb1320f-c61d-43a8-961e-75aecec04731 + - 2b67b054-1f9f-4ab8-a2bb-917a6b4fc36f status: code: 200 message: OK @@ -5713,9 +5713,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5727,7 +5727,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:26:55 GMT + - Tue, 22 Oct 2019 06:31:29 GMT expires: - '-1' pragma: @@ -5744,7 +5744,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 225c0a0a-ae3b-4034-a813-46caba9fbc60 + - 7710ad7e-d2e6-4072-8b04-821ceeae13cf status: code: 200 message: OK @@ -5759,9 +5759,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5773,7 +5773,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:27:06 GMT + - Tue, 22 Oct 2019 06:31:40 GMT expires: - '-1' pragma: @@ -5790,7 +5790,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - c7f2cc25-4523-42a7-beb0-536af4824557 + - 28fe79b5-7883-46db-bcc2-75f4d944fefa status: code: 200 message: OK @@ -5805,9 +5805,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5819,7 +5819,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:27:16 GMT + - Tue, 22 Oct 2019 06:31:50 GMT expires: - '-1' pragma: @@ -5836,7 +5836,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - e1d28023-f807-4554-953d-80793163be2e + - 9d92b590-e8bc-4217-8c4d-52c15aa888c9 status: code: 200 message: OK @@ -5851,9 +5851,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5865,7 +5865,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:27:27 GMT + - Tue, 22 Oct 2019 06:32:01 GMT expires: - '-1' pragma: @@ -5882,7 +5882,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 986a14e1-28a8-4faa-a490-81d8a63414fd + - 3744c89b-0e3c-4f22-964f-42f310dbd99d status: code: 200 message: OK @@ -5897,9 +5897,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5911,7 +5911,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:27:37 GMT + - Tue, 22 Oct 2019 06:32:11 GMT expires: - '-1' pragma: @@ -5928,7 +5928,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 7b7c64c2-d5f9-4603-ad0b-bde37547f98f + - a5ea8d97-223c-482b-8bbc-c48394fd7cce status: code: 200 message: OK @@ -5943,9 +5943,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5957,7 +5957,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:27:47 GMT + - Tue, 22 Oct 2019 06:32:21 GMT expires: - '-1' pragma: @@ -5974,7 +5974,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 5cbb5e18-e501-4f03-bcef-4403e23b326f + - 62b69a62-acb0-4c7e-8f28-431f2a60cba4 status: code: 200 message: OK @@ -5989,9 +5989,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6003,7 +6003,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:27:57 GMT + - Tue, 22 Oct 2019 06:32:31 GMT expires: - '-1' pragma: @@ -6020,7 +6020,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 8c4a4924-059c-4422-8343-81323e01e5b4 + - 8df70dc2-8c7a-4e9c-8d8b-60d4d1fbd008 status: code: 200 message: OK @@ -6035,9 +6035,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6049,7 +6049,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:28:09 GMT + - Tue, 22 Oct 2019 06:32:42 GMT expires: - '-1' pragma: @@ -6066,7 +6066,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 8c6c2b66-3bf5-4477-b051-410f7ebfa73d + - 786d4511-1840-435d-a2b9-c4f2d14c0a3d status: code: 200 message: OK @@ -6081,9 +6081,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6095,7 +6095,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:28:19 GMT + - Tue, 22 Oct 2019 06:32:52 GMT expires: - '-1' pragma: @@ -6112,7 +6112,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - c05f897b-ae7e-4cca-9ab5-2f546d3d7570 + - bcaedaef-dedc-4ad3-97f2-86f7c71028e9 status: code: 200 message: OK @@ -6127,9 +6127,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6141,7 +6141,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:28:29 GMT + - Tue, 22 Oct 2019 06:33:02 GMT expires: - '-1' pragma: @@ -6158,7 +6158,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - d327cb6b-cefe-4692-b115-46c6e46f1d74 + - 6e23c722-f0a4-44cd-b404-41065c53bc7c status: code: 200 message: OK @@ -6173,9 +6173,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6187,7 +6187,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:28:39 GMT + - Tue, 22 Oct 2019 06:33:13 GMT expires: - '-1' pragma: @@ -6204,7 +6204,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 2597aafa-e00f-48a4-835a-dd4a81b6680d + - ce71df48-50f7-4bda-b076-1a80f355c34c status: code: 200 message: OK @@ -6219,9 +6219,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6233,7 +6233,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:28:49 GMT + - Tue, 22 Oct 2019 06:33:24 GMT expires: - '-1' pragma: @@ -6250,7 +6250,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 224bd1fa-61cf-42ff-93cd-5b62d40b0f8b + - 75c579c2-4249-443e-9415-78818c87a8da status: code: 200 message: OK @@ -6265,9 +6265,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6279,7 +6279,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:29:00 GMT + - Tue, 22 Oct 2019 06:33:34 GMT expires: - '-1' pragma: @@ -6296,7 +6296,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 763edf5f-c5fd-44bb-a119-c280955f7ce5 + - 55356cd8-65cd-4139-9373-d6397c7fa0be status: code: 200 message: OK @@ -6311,9 +6311,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6325,7 +6325,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:29:11 GMT + - Tue, 22 Oct 2019 06:33:44 GMT expires: - '-1' pragma: @@ -6342,7 +6342,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - e738268f-449c-400d-befb-8f1f6ae874b5 + - 8bfb24ca-e1ab-409a-9c5d-be332f992438 status: code: 200 message: OK @@ -6357,9 +6357,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6371,7 +6371,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:29:21 GMT + - Tue, 22 Oct 2019 06:33:54 GMT expires: - '-1' pragma: @@ -6388,7 +6388,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - fb6f6ffd-6ba1-41fc-919d-27d287bb8604 + - d6f6ad18-1ab6-46d8-ba3f-e4a9d05169f7 status: code: 200 message: OK @@ -6403,9 +6403,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6417,7 +6417,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:29:31 GMT + - Tue, 22 Oct 2019 06:34:05 GMT expires: - '-1' pragma: @@ -6434,7 +6434,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 1e4474d6-d4c3-457c-8e60-bbf32ad2c010 + - 42eccf0a-99e2-42f8-a8a0-487072a01297 status: code: 200 message: OK @@ -6449,9 +6449,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6463,7 +6463,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:29:42 GMT + - Tue, 22 Oct 2019 06:34:15 GMT expires: - '-1' pragma: @@ -6480,7 +6480,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - f0a39896-61ca-4fc6-937f-aeff36f99765 + - 2b5f0291-1aaa-4aad-8112-e7acfe3d6e75 status: code: 200 message: OK @@ -6495,9 +6495,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6509,7 +6509,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:29:52 GMT + - Tue, 22 Oct 2019 06:34:25 GMT expires: - '-1' pragma: @@ -6526,7 +6526,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - c1636f28-8836-4fe1-b858-2adbd6ed3cda + - ceb71ffc-3963-49c8-a312-095d6575c505 status: code: 200 message: OK @@ -6541,9 +6541,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6555,7 +6555,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:30:02 GMT + - Tue, 22 Oct 2019 06:34:35 GMT expires: - '-1' pragma: @@ -6572,7 +6572,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 63a5a540-27d8-48a3-84c5-b0e740cdb090 + - 0d2ec20b-3005-4f57-a50f-64ba402006dc status: code: 200 message: OK @@ -6587,9 +6587,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6601,7 +6601,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:30:13 GMT + - Tue, 22 Oct 2019 06:34:47 GMT expires: - '-1' pragma: @@ -6618,7 +6618,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - b00b9409-d734-4ed2-8d09-15650380240f + - 12dbb073-323d-470a-a296-14ae17f84e35 status: code: 200 message: OK @@ -6633,9 +6633,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6647,7 +6647,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:30:23 GMT + - Tue, 22 Oct 2019 06:34:57 GMT expires: - '-1' pragma: @@ -6664,7 +6664,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - ea7425b1-5a35-40eb-9394-b93278f20074 + - 619b86e5-f412-4440-8a03-5b36e9565d47 status: code: 200 message: OK @@ -6679,9 +6679,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6693,7 +6693,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:30:33 GMT + - Tue, 22 Oct 2019 06:35:07 GMT expires: - '-1' pragma: @@ -6710,7 +6710,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 946657c8-834a-472e-8962-f4941914304c + - c66ad2c1-56ae-47de-bf1a-312cced50a7e status: code: 200 message: OK @@ -6725,9 +6725,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6739,7 +6739,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:30:44 GMT + - Tue, 22 Oct 2019 06:35:18 GMT expires: - '-1' pragma: @@ -6756,7 +6756,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 56c56933-7238-4fe7-bf08-13c9d6250df6 + - d33e6cab-2cab-487a-bb48-0de16ba70fbc status: code: 200 message: OK @@ -6771,9 +6771,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6785,7 +6785,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:30:54 GMT + - Tue, 22 Oct 2019 06:35:28 GMT expires: - '-1' pragma: @@ -6802,7 +6802,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - e5069c34-73f9-49ab-bc84-25fff4c7854c + - 6a5320c4-c428-47c6-8cd2-e3b5b0517520 status: code: 200 message: OK @@ -6817,9 +6817,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6831,7 +6831,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:31:04 GMT + - Tue, 22 Oct 2019 06:35:38 GMT expires: - '-1' pragma: @@ -6848,7 +6848,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 54a9c192-cc08-4718-b72a-3cf0321ed09f + - 61769969-d0e3-4bc1-ba4f-117a92283764 status: code: 200 message: OK @@ -6863,9 +6863,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6877,7 +6877,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:31:15 GMT + - Tue, 22 Oct 2019 06:35:48 GMT expires: - '-1' pragma: @@ -6894,7 +6894,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 8301991b-61a7-4258-852a-99d6f3380073 + - b11fbb52-8f49-4881-943a-2c537d9865c5 status: code: 200 message: OK @@ -6909,9 +6909,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6923,7 +6923,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:31:26 GMT + - Tue, 22 Oct 2019 06:35:58 GMT expires: - '-1' pragma: @@ -6940,7 +6940,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - b95f7f9d-cf1c-44d1-801c-a1ad62b32764 + - c4d30429-f60c-467c-be13-11efad77ca7b status: code: 200 message: OK @@ -6955,9 +6955,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6969,7 +6969,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:31:36 GMT + - Tue, 22 Oct 2019 06:36:08 GMT expires: - '-1' pragma: @@ -6986,7 +6986,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - b2e900ae-7842-460d-8341-52903817de52 + - 902a454e-205c-4b22-bf8c-a3d644b2f40c status: code: 200 message: OK @@ -7001,9 +7001,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7015,7 +7015,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:31:47 GMT + - Tue, 22 Oct 2019 06:36:20 GMT expires: - '-1' pragma: @@ -7032,7 +7032,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - a0362f40-e9b6-4c29-8b6d-299c35a983cc + - d504b28f-0bd7-4f93-b8d6-47478d0af427 status: code: 200 message: OK @@ -7047,9 +7047,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7061,7 +7061,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:31:57 GMT + - Tue, 22 Oct 2019 06:36:30 GMT expires: - '-1' pragma: @@ -7078,7 +7078,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 6e0d493b-adc9-4789-91c0-4f8fa19abc88 + - 83db229b-6246-45e2-a069-6286f40d330d status: code: 200 message: OK @@ -7093,9 +7093,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7107,7 +7107,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:32:07 GMT + - Tue, 22 Oct 2019 06:36:41 GMT expires: - '-1' pragma: @@ -7124,7 +7124,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 2db4941a-3009-4c06-a19d-ea6ece982d72 + - 98cee13a-7ffc-46c1-9554-95195ec5961e status: code: 200 message: OK @@ -7139,9 +7139,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7153,7 +7153,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:32:17 GMT + - Tue, 22 Oct 2019 06:36:51 GMT expires: - '-1' pragma: @@ -7170,7 +7170,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 6e7b7e59-d52c-4bd6-910a-417754a8b0fe + - 7420c64d-23fb-4e62-9ff0-af74e543dff3 status: code: 200 message: OK @@ -7185,9 +7185,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7199,7 +7199,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:32:28 GMT + - Tue, 22 Oct 2019 06:37:01 GMT expires: - '-1' pragma: @@ -7216,7 +7216,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - cde8df85-e951-4a52-92d5-ed25569f751b + - d659a00d-2b39-468d-99da-373ced55d1be status: code: 200 message: OK @@ -7231,9 +7231,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7245,7 +7245,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:32:38 GMT + - Tue, 22 Oct 2019 06:37:11 GMT expires: - '-1' pragma: @@ -7262,7 +7262,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 58b08eff-8e1d-44f7-86d0-595f2b1dee26 + - 2dd62647-fa67-4c3a-a05b-b524e8e3198b status: code: 200 message: OK @@ -7277,9 +7277,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7291,7 +7291,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:32:49 GMT + - Tue, 22 Oct 2019 06:37:22 GMT expires: - '-1' pragma: @@ -7308,7 +7308,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 662d150b-48b5-4859-bc47-a3997d36ea3f + - 138dd57a-81a6-444d-90c2-956d66b0b4da status: code: 200 message: OK @@ -7323,9 +7323,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7337,7 +7337,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:32:59 GMT + - Tue, 22 Oct 2019 06:37:32 GMT expires: - '-1' pragma: @@ -7354,7 +7354,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 40320a3d-144d-4c62-902e-248884646d23 + - 0bc40403-aa42-466c-bc7f-a639d3f518cc status: code: 200 message: OK @@ -7369,9 +7369,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7383,7 +7383,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:33:09 GMT + - Tue, 22 Oct 2019 06:37:42 GMT expires: - '-1' pragma: @@ -7400,7 +7400,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - f90c5b3b-0949-486d-a75b-128f857d58f4 + - 92d66ffa-e11c-444a-b0b5-a6e2015512bf status: code: 200 message: OK @@ -7415,9 +7415,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7429,7 +7429,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:33:19 GMT + - Tue, 22 Oct 2019 06:37:52 GMT expires: - '-1' pragma: @@ -7446,7 +7446,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - ffce530a-26ea-42fa-a34a-1e2fd7c6cae8 + - 5aff11cf-e552-4e78-a48c-6aac0d48dac2 status: code: 200 message: OK @@ -7461,9 +7461,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7475,7 +7475,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:33:30 GMT + - Tue, 22 Oct 2019 06:38:02 GMT expires: - '-1' pragma: @@ -7492,7 +7492,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 309d89a8-be18-4084-b588-da009adf1bd1 + - 6494f2a8-ccf3-49e8-98ff-7d4299c98bc6 status: code: 200 message: OK @@ -7507,9 +7507,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7521,7 +7521,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:33:40 GMT + - Tue, 22 Oct 2019 06:38:13 GMT expires: - '-1' pragma: @@ -7538,7 +7538,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 53223a1e-c6fd-4926-85a9-8ba0049b3b4e + - de1dc27c-d137-4561-b703-296c0d9a6374 status: code: 200 message: OK @@ -7553,9 +7553,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7567,7 +7567,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:33:51 GMT + - Tue, 22 Oct 2019 06:38:24 GMT expires: - '-1' pragma: @@ -7584,7 +7584,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 7681518c-06b5-401f-b382-4583cf8ec43f + - f173c980-1585-41d3-afda-c5ef86e306de status: code: 200 message: OK @@ -7599,9 +7599,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7613,7 +7613,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:34:01 GMT + - Tue, 22 Oct 2019 06:38:34 GMT expires: - '-1' pragma: @@ -7630,7 +7630,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 7066e7ee-a726-4e9d-9307-640ee87d4f8a + - 39fafdc7-4a9f-41fa-a5f4-18ecfc9f590b status: code: 200 message: OK @@ -7645,9 +7645,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7659,7 +7659,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:34:11 GMT + - Tue, 22 Oct 2019 06:38:45 GMT expires: - '-1' pragma: @@ -7676,7 +7676,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - ea8339fe-7666-46a1-b7e7-318301450930 + - c8e44a1b-ebc1-4ea3-b336-922d776b03fb status: code: 200 message: OK @@ -7691,9 +7691,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7705,7 +7705,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:34:21 GMT + - Tue, 22 Oct 2019 06:38:55 GMT expires: - '-1' pragma: @@ -7722,7 +7722,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 4e87f756-f9e3-493a-bf7e-96e47e6d9c9a + - 18fc4bdb-250e-47c9-b12b-1dac3c9f6400 status: code: 200 message: OK @@ -7737,9 +7737,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7751,7 +7751,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:34:33 GMT + - Tue, 22 Oct 2019 06:39:05 GMT expires: - '-1' pragma: @@ -7768,7 +7768,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 15f62f70-b78d-4ba8-9638-72c3fdcc1761 + - 35c6d35e-9077-4f27-8c33-759bd96a8f7d status: code: 200 message: OK @@ -7783,9 +7783,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7797,7 +7797,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:34:43 GMT + - Tue, 22 Oct 2019 06:39:15 GMT expires: - '-1' pragma: @@ -7814,7 +7814,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 5b20276a-4775-461d-9023-e93512e15ebe + - fe2ddea4-d81c-4b6d-ad93-22d8dc7a5241 status: code: 200 message: OK @@ -7829,9 +7829,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7843,7 +7843,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:34:53 GMT + - Tue, 22 Oct 2019 06:39:26 GMT expires: - '-1' pragma: @@ -7860,7 +7860,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 86ae8b67-87d0-4d68-9871-06fb867014ca + - 052113f0-edbe-4ea9-bab6-33b1340018a6 status: code: 200 message: OK @@ -7875,9 +7875,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7889,7 +7889,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:35:04 GMT + - Tue, 22 Oct 2019 06:39:36 GMT expires: - '-1' pragma: @@ -7906,7 +7906,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 54c96ce4-82f3-48bd-b188-3cce7274099a + - ae9ca8ef-39cd-4092-9653-2c3416c20a39 status: code: 200 message: OK @@ -7921,9 +7921,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7935,7 +7935,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:35:14 GMT + - Tue, 22 Oct 2019 06:39:47 GMT expires: - '-1' pragma: @@ -7952,7 +7952,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - a5c18e31-be3e-44b0-a8fa-f5d633dadb9c + - 371b1ee4-6f11-415f-a192-883448c86ac2 status: code: 200 message: OK @@ -7967,9 +7967,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7981,7 +7981,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:35:24 GMT + - Tue, 22 Oct 2019 06:39:57 GMT expires: - '-1' pragma: @@ -7998,7 +7998,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 8fc4dffb-dbec-414e-b327-8a8c3a20c9ba + - 40c099ed-f795-4448-bed1-4a96be4f9704 status: code: 200 message: OK @@ -8013,9 +8013,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8027,7 +8027,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:35:35 GMT + - Tue, 22 Oct 2019 06:40:07 GMT expires: - '-1' pragma: @@ -8044,7 +8044,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - cc1cf419-5cc7-48ed-ba5f-ad91a528203d + - 7b708763-4bb2-4dc3-80f1-0307c7d1ed52 status: code: 200 message: OK @@ -8059,9 +8059,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8073,7 +8073,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:35:45 GMT + - Tue, 22 Oct 2019 06:40:17 GMT expires: - '-1' pragma: @@ -8090,7 +8090,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 7b181da3-ffb7-4e52-b5dc-52ef62bfb8d9 + - 6a8254e3-83ea-4c7f-a213-deafce68f94d status: code: 200 message: OK @@ -8105,9 +8105,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8119,7 +8119,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:35:56 GMT + - Tue, 22 Oct 2019 06:40:27 GMT expires: - '-1' pragma: @@ -8136,7 +8136,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - fdb7ffd6-7693-4c5c-8443-bfe1b39173f9 + - 416271eb-8406-42db-b9ea-533dc7ef61c6 status: code: 200 message: OK @@ -8151,9 +8151,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8165,7 +8165,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:36:06 GMT + - Tue, 22 Oct 2019 06:40:39 GMT expires: - '-1' pragma: @@ -8182,7 +8182,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 0ced24fa-8320-4b9c-af54-d45f09f3745c + - 9ff91bf1-03b8-41bb-979b-8d7dc572bbef status: code: 200 message: OK @@ -8197,9 +8197,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8211,7 +8211,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:36:16 GMT + - Tue, 22 Oct 2019 06:40:49 GMT expires: - '-1' pragma: @@ -8228,7 +8228,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - d4976d3e-634a-4b80-9c92-d6db5d36851a + - eae05452-f6e1-4256-8076-8358f6163431 status: code: 200 message: OK @@ -8243,9 +8243,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8257,7 +8257,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:36:26 GMT + - Tue, 22 Oct 2019 06:40:59 GMT expires: - '-1' pragma: @@ -8274,7 +8274,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 7f64738d-7db0-48d6-a99e-6e323ac7b489 + - 2850313a-0d41-4739-ba2c-393de1ffb8b2 status: code: 200 message: OK @@ -8289,9 +8289,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8303,7 +8303,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:36:37 GMT + - Tue, 22 Oct 2019 06:41:09 GMT expires: - '-1' pragma: @@ -8320,7 +8320,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 55de5d19-73ef-4354-b6f9-ea732563bed1 + - 9c92569f-7a9c-4e28-86e5-8453599ae2ad status: code: 200 message: OK @@ -8335,9 +8335,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8349,7 +8349,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:36:48 GMT + - Tue, 22 Oct 2019 06:41:20 GMT expires: - '-1' pragma: @@ -8366,7 +8366,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - dd594d0f-e88c-4d08-ad86-52d4e9595c51 + - e295ebf0-39fc-4615-842d-44930b26c97b status: code: 200 message: OK @@ -8381,9 +8381,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8395,7 +8395,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:36:58 GMT + - Tue, 22 Oct 2019 06:41:30 GMT expires: - '-1' pragma: @@ -8412,7 +8412,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - d32164fe-a1d4-4e4c-bbec-f1de530bdf39 + - f0ceb185-0f4a-45b4-a608-83d9f792f5d4 status: code: 200 message: OK @@ -8427,9 +8427,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8441,7 +8441,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:37:09 GMT + - Tue, 22 Oct 2019 06:41:40 GMT expires: - '-1' pragma: @@ -8458,7 +8458,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - c0d96001-ae3c-4f1a-8f35-7ce3ad2dbdc6 + - b8c07396-ec6f-4e87-a5ae-1fc01909df79 status: code: 200 message: OK @@ -8473,9 +8473,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8487,7 +8487,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:37:19 GMT + - Tue, 22 Oct 2019 06:41:51 GMT expires: - '-1' pragma: @@ -8504,7 +8504,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 68300656-340a-49e0-8818-2cb4d99826e3 + - 4191e3a0-0ffa-46a7-899e-867b0dbc7cdc status: code: 200 message: OK @@ -8519,9 +8519,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8533,7 +8533,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:37:29 GMT + - Tue, 22 Oct 2019 06:42:01 GMT expires: - '-1' pragma: @@ -8550,7 +8550,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 58bb6a45-183a-40dd-b6ec-aa97191bbfe2 + - 78bc7006-42a3-4900-b438-b605a420a71d status: code: 200 message: OK @@ -8565,9 +8565,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8579,7 +8579,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:37:39 GMT + - Tue, 22 Oct 2019 06:42:11 GMT expires: - '-1' pragma: @@ -8596,7 +8596,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 780d19e7-26ac-4625-8c48-ae51252038d1 + - dd144be4-cc1e-4801-8991-04b101cb43fd status: code: 200 message: OK @@ -8611,9 +8611,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8625,7 +8625,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:37:49 GMT + - Tue, 22 Oct 2019 06:42:21 GMT expires: - '-1' pragma: @@ -8642,7 +8642,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 4b6c7b34-3d5d-4cf2-86b5-f9f8ef981e94 + - 6b2e1325-22ca-4979-87c4-4cda16afeffe status: code: 200 message: OK @@ -8657,9 +8657,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8671,7 +8671,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:38:00 GMT + - Tue, 22 Oct 2019 06:42:31 GMT expires: - '-1' pragma: @@ -8688,7 +8688,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 1a0a4133-d6e4-4dfa-8dd1-56f020001f45 + - 5b92cbc5-dcc4-4b90-aefb-28c2d1de388b status: code: 200 message: OK @@ -8703,9 +8703,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8717,7 +8717,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:38:11 GMT + - Tue, 22 Oct 2019 06:42:43 GMT expires: - '-1' pragma: @@ -8734,7 +8734,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 1fa19a10-0e51-479e-bdc4-26fa3c691dfd + - 68ece87e-1a9d-4195-99a5-6f95132fda3b status: code: 200 message: OK @@ -8749,9 +8749,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8763,7 +8763,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:38:21 GMT + - Tue, 22 Oct 2019 06:42:53 GMT expires: - '-1' pragma: @@ -8780,7 +8780,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 9a26f831-9385-48a6-b928-68638d7c003d + - 6a940605-7cf3-4b77-9b8a-eaee2a614bd1 status: code: 200 message: OK @@ -8795,9 +8795,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8809,7 +8809,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:38:31 GMT + - Tue, 22 Oct 2019 06:43:04 GMT expires: - '-1' pragma: @@ -8826,7 +8826,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 1ca7fd77-67e4-41f3-868e-8aa59fba1ecf + - 12356eec-70ba-4f5f-bcf4-b9c02b6da811 status: code: 200 message: OK @@ -8841,9 +8841,377 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/db08851b-9005-4598-82ed-d81924965b05?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + response: + body: + string: "{\r\n \"status\": \"InProgress\"\r\n}" + headers: + cache-control: + - no-cache + content-length: + - '30' + content-type: + - application/json; charset=utf-8 + date: + - Tue, 22 Oct 2019 06:43:14 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - Microsoft-HTTPAPI/2.0 + - Microsoft-HTTPAPI/2.0 + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + x-ms-arm-service-request-id: + - f01e0294-da51-460b-8589-4adb5dbe0c8d + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python + method: GET + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + response: + body: + string: "{\r\n \"status\": \"InProgress\"\r\n}" + headers: + cache-control: + - no-cache + content-length: + - '30' + content-type: + - application/json; charset=utf-8 + date: + - Tue, 22 Oct 2019 06:43:24 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - Microsoft-HTTPAPI/2.0 + - Microsoft-HTTPAPI/2.0 + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + x-ms-arm-service-request-id: + - 15812f5d-3a12-4c8c-9bc5-ed38c323da37 + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python + method: GET + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + response: + body: + string: "{\r\n \"status\": \"InProgress\"\r\n}" + headers: + cache-control: + - no-cache + content-length: + - '30' + content-type: + - application/json; charset=utf-8 + date: + - Tue, 22 Oct 2019 06:43:34 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - Microsoft-HTTPAPI/2.0 + - Microsoft-HTTPAPI/2.0 + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + x-ms-arm-service-request-id: + - 846352e5-7471-4f6f-951b-1f638c445ad3 + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python + method: GET + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + response: + body: + string: "{\r\n \"status\": \"InProgress\"\r\n}" + headers: + cache-control: + - no-cache + content-length: + - '30' + content-type: + - application/json; charset=utf-8 + date: + - Tue, 22 Oct 2019 06:43:45 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - Microsoft-HTTPAPI/2.0 + - Microsoft-HTTPAPI/2.0 + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + x-ms-arm-service-request-id: + - ac604e5a-e3ba-40c3-8fe7-f73384d46343 + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python + method: GET + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + response: + body: + string: "{\r\n \"status\": \"InProgress\"\r\n}" + headers: + cache-control: + - no-cache + content-length: + - '30' + content-type: + - application/json; charset=utf-8 + date: + - Tue, 22 Oct 2019 06:43:55 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - Microsoft-HTTPAPI/2.0 + - Microsoft-HTTPAPI/2.0 + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + x-ms-arm-service-request-id: + - ddd70f5f-01e8-4b0b-8bb2-754c12d72392 + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python + method: GET + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + response: + body: + string: "{\r\n \"status\": \"InProgress\"\r\n}" + headers: + cache-control: + - no-cache + content-length: + - '30' + content-type: + - application/json; charset=utf-8 + date: + - Tue, 22 Oct 2019 06:44:05 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - Microsoft-HTTPAPI/2.0 + - Microsoft-HTTPAPI/2.0 + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + x-ms-arm-service-request-id: + - 3eb22da8-648b-4ba2-b415-c3fd8f377cc3 + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python + method: GET + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + response: + body: + string: "{\r\n \"status\": \"InProgress\"\r\n}" + headers: + cache-control: + - no-cache + content-length: + - '30' + content-type: + - application/json; charset=utf-8 + date: + - Tue, 22 Oct 2019 06:44:15 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - Microsoft-HTTPAPI/2.0 + - Microsoft-HTTPAPI/2.0 + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + x-ms-arm-service-request-id: + - 823bc5df-f92d-44a2-9572-1ff6cda70f47 + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python + method: GET + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + response: + body: + string: "{\r\n \"status\": \"InProgress\"\r\n}" + headers: + cache-control: + - no-cache + content-length: + - '30' + content-type: + - application/json; charset=utf-8 + date: + - Tue, 22 Oct 2019 06:44:26 GMT + expires: + - '-1' + pragma: + - no-cache + server: + - Microsoft-HTTPAPI/2.0 + - Microsoft-HTTPAPI/2.0 + strict-transport-security: + - max-age=31536000; includeSubDomains + transfer-encoding: + - chunked + vary: + - Accept-Encoding + x-content-type-options: + - nosniff + x-ms-arm-service-request-id: + - f15f28e3-09dd-4055-b3c7-7492ae96c7ee + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - application/json + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python + method: GET + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -8855,7 +9223,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:38:42 GMT + - Tue, 22 Oct 2019 06:44:37 GMT expires: - '-1' pragma: @@ -8872,7 +9240,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - bea91237-14ae-45d7-be30-dc381fa8ee39 + - 0c1be701-2b45-4223-8857-e16420e34680 status: code: 200 message: OK @@ -8887,24 +9255,24 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyvngb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef\"\ - ,\r\n \"etag\": \"W/\\\"d8b33239-719a-41d2-988e-e5df1d45b10b\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyvngb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef\"\ + ,\r\n \"etag\": \"W/\\\"ce5e933a-433f-4432-819c-b7c5fdbc0dd5\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworkGateways\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"resourceGuid\": \"30051c36-8e23-4cb6-add9-ad1ca9243e89\",\r\n \ - \ \"ipConfigurations\": [\r\n {\r\n \"name\": \"default\",\r\ - \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef/ipConfigurations/default\"\ - ,\r\n \"etag\": \"W/\\\"d8b33239-719a-41d2-988e-e5df1d45b10b\\\"\"\ + ,\r\n \"resourceGuid\": \"8da9e6ab-660e-439d-ae18-db43d93dd506\",\r\n \ + \ \"packetCaptureDiagnosticState\": \"None\",\r\n \"ipConfigurations\"\ + : [\r\n {\r\n \"name\": \"default\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef/ipConfigurations/default\"\ + ,\r\n \"etag\": \"W/\\\"ce5e933a-433f-4432-819c-b7c5fdbc0dd5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/virtualNetworkGateways/ipConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAllocationMethod\": \"Dynamic\",\r\n \"\ - publicIPAddress\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ - \r\n },\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet\"\ + publicIPAddress\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ + \r\n },\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet\"\ \r\n }\r\n }\r\n }\r\n ],\r\n \"sku\": {\r\n \ \ \"name\": \"Standard\",\r\n \"tier\": \"Standard\",\r\n \"\ capacity\": 2\r\n },\r\n \"gatewayType\": \"Vpn\",\r\n \"vpnType\"\ @@ -8916,11 +9284,11 @@ interactions: cache-control: - no-cache content-length: - - '2003' + - '2048' content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:38:42 GMT + - Tue, 22 Oct 2019 06:44:37 GMT expires: - '-1' pragma: @@ -8937,7 +9305,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 0ebcbed7-1621-4308-b9bc-35aaaa891b0a + - b36dfdea-25ee-4f03-b763-e1c5ef087e3d status: code: 200 message: OK diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_networks.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_networks.yaml index 0c4485366861..3436be6f53d9 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_networks.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_networks.yaml @@ -18,32 +18,32 @@ interactions: - application/json; charset=utf-8 User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyvnet4725106e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ - ,\r\n \"etag\": \"W/\\\"a21fbbd5-04fc-4006-96c5-59d836fa86f8\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyvnet4725106e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ + ,\r\n \"etag\": \"W/\\\"a6325f09-6059-48e8-bb1f-7778307333ad\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ - \ \"resourceGuid\": \"4390850c-e69c-4944-b171-325a62eee193\",\r\n \"\ + \ \"resourceGuid\": \"9746f7f8-1f83-45f4-b7ea-14d06efeba10\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ \r\n ]\r\n },\r\n \"dhcpOptions\": {\r\n \"dnsServers\": [\r\ \n \"10.1.1.1\",\r\n \"10.1.2.4\"\r\n ]\r\n },\r\n \ \ \"subnets\": [\r\n {\r\n \"name\": \"pyvnetsubnetone4725106e\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ - ,\r\n \"etag\": \"W/\\\"a21fbbd5-04fc-4006-96c5-59d836fa86f8\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ + ,\r\n \"etag\": \"W/\\\"a6325f09-6059-48e8-bb1f-7778307333ad\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ : [],\r\n \"privateEndpointNetworkPolicies\": \"Enabled\",\r\n \ \ \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\n },\r\ \n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n \ \ },\r\n {\r\n \"name\": \"pyvnetsubnettwo4725106e\",\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ - ,\r\n \"etag\": \"W/\\\"a21fbbd5-04fc-4006-96c5-59d836fa86f8\\\"\"\ + \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ + ,\r\n \"etag\": \"W/\\\"a6325f09-6059-48e8-bb1f-7778307333ad\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\"\ : [],\r\n \"privateEndpointNetworkPolicies\": \"Enabled\",\r\n \ @@ -53,7 +53,7 @@ interactions: : false,\r\n \"enableVmProtection\": false\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/58f1dc1f-388b-419e-9cf3-0f9b141775f6?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/895e6c64-5697-486d-9b50-336c087407c3?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -61,7 +61,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:38:59 GMT + - Tue, 22 Oct 2019 06:44:52 GMT expires: - '-1' pragma: @@ -74,9 +74,9 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 6be60dab-3eac-48d6-953e-43867c52ef53 + - 22b946e5-257a-4056-96c5-073fb7ca40a5 x-ms-ratelimit-remaining-subscription-writes: - - '1193' + - '1199' status: code: 201 message: Created @@ -91,9 +91,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/58f1dc1f-388b-419e-9cf3-0f9b141775f6?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/895e6c64-5697-486d-9b50-336c087407c3?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -105,7 +105,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:39:03 GMT + - Tue, 22 Oct 2019 06:44:56 GMT expires: - '-1' pragma: @@ -122,7 +122,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - aabbcdae-c6ec-45e0-a8bd-b9b472ab7dba + - 3d34019a-7335-4b24-89b5-b42f7273b24f status: code: 200 message: OK @@ -137,30 +137,30 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyvnet4725106e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ - ,\r\n \"etag\": \"W/\\\"0d0e5dfa-8088-4790-9f18-fa86bdb20f1d\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyvnet4725106e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ + ,\r\n \"etag\": \"W/\\\"c040d832-9073-4f4d-b57b-5291a26ca6ae\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"4390850c-e69c-4944-b171-325a62eee193\",\r\n \"\ + \ \"resourceGuid\": \"9746f7f8-1f83-45f4-b7ea-14d06efeba10\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ \r\n ]\r\n },\r\n \"dhcpOptions\": {\r\n \"dnsServers\": [\r\ \n \"10.1.1.1\",\r\n \"10.1.2.4\"\r\n ]\r\n },\r\n \ \ \"subnets\": [\r\n {\r\n \"name\": \"pyvnetsubnetone4725106e\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ - ,\r\n \"etag\": \"W/\\\"0d0e5dfa-8088-4790-9f18-fa86bdb20f1d\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ + ,\r\n \"etag\": \"W/\\\"c040d832-9073-4f4d-b57b-5291a26ca6ae\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ : [],\r\n \"privateEndpointNetworkPolicies\": \"Enabled\",\r\n \ \ \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\n },\r\ \n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n \ \ },\r\n {\r\n \"name\": \"pyvnetsubnettwo4725106e\",\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ - ,\r\n \"etag\": \"W/\\\"0d0e5dfa-8088-4790-9f18-fa86bdb20f1d\\\"\"\ + \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ + ,\r\n \"etag\": \"W/\\\"c040d832-9073-4f4d-b57b-5291a26ca6ae\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\"\ : [],\r\n \"privateEndpointNetworkPolicies\": \"Enabled\",\r\n \ @@ -176,9 +176,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:39:03 GMT + - Tue, 22 Oct 2019 06:44:56 GMT etag: - - W/"0d0e5dfa-8088-4790-9f18-fa86bdb20f1d" + - W/"c040d832-9073-4f4d-b57b-5291a26ca6ae" expires: - '-1' pragma: @@ -195,7 +195,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 00037d13-5e32-4e92-b4d2-b879759cb82c + - 3a3726bd-776a-42f8-89bc-cef9bd5e7bb8 status: code: 200 message: OK @@ -210,32 +210,32 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyvnet4725106e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ - ,\r\n \"etag\": \"W/\\\"0d0e5dfa-8088-4790-9f18-fa86bdb20f1d\\\"\",\r\n \ + string: "{\r\n \"name\": \"pyvnet4725106e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ + ,\r\n \"etag\": \"W/\\\"c040d832-9073-4f4d-b57b-5291a26ca6ae\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ - \ \"resourceGuid\": \"4390850c-e69c-4944-b171-325a62eee193\",\r\n \"\ + \ \"resourceGuid\": \"9746f7f8-1f83-45f4-b7ea-14d06efeba10\",\r\n \"\ addressSpace\": {\r\n \"addressPrefixes\": [\r\n \"10.0.0.0/16\"\ \r\n ]\r\n },\r\n \"dhcpOptions\": {\r\n \"dnsServers\": [\r\ \n \"10.1.1.1\",\r\n \"10.1.2.4\"\r\n ]\r\n },\r\n \ \ \"subnets\": [\r\n {\r\n \"name\": \"pyvnetsubnetone4725106e\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ - ,\r\n \"etag\": \"W/\\\"0d0e5dfa-8088-4790-9f18-fa86bdb20f1d\\\"\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ + ,\r\n \"etag\": \"W/\\\"c040d832-9073-4f4d-b57b-5291a26ca6ae\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ : [],\r\n \"privateEndpointNetworkPolicies\": \"Enabled\",\r\n \ \ \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\n },\r\ \n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n \ \ },\r\n {\r\n \"name\": \"pyvnetsubnettwo4725106e\",\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ - ,\r\n \"etag\": \"W/\\\"0d0e5dfa-8088-4790-9f18-fa86bdb20f1d\\\"\"\ + \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ + ,\r\n \"etag\": \"W/\\\"c040d832-9073-4f4d-b57b-5291a26ca6ae\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\"\ : [],\r\n \"privateEndpointNetworkPolicies\": \"Enabled\",\r\n \ @@ -251,9 +251,9 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:39:03 GMT + - Tue, 22 Oct 2019 06:44:57 GMT etag: - - W/"0d0e5dfa-8088-4790-9f18-fa86bdb20f1d" + - W/"c040d832-9073-4f4d-b57b-5291a26ca6ae" expires: - '-1' pragma: @@ -270,7 +270,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - a4a6dd63-299d-48b1-a642-fe538e2cb706 + - 5b214eff-a275-4aee-924d-321a92cfc94e status: code: 200 message: OK @@ -285,11 +285,11 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/CheckIPAddressAvailability?ipAddress=10.0.1.35&api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/CheckIPAddressAvailability?ipAddress=10.0.1.35&api-version=2019-09-01 response: body: string: "{\r\n \"available\": true,\r\n \"isPlatformReserved\": false\r\n}" @@ -301,7 +301,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:39:03 GMT + - Tue, 22 Oct 2019 06:44:57 GMT expires: - '-1' pragma: @@ -318,7 +318,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 89f6b0ac-4430-4930-9090-73b659fda6d7 + - 0fcd0b9c-10bb-47c0-b53b-54f5b808c827 status: code: 200 message: OK @@ -333,34 +333,34 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pyvnet4725106e\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ - ,\r\n \"etag\": \"W/\\\"0d0e5dfa-8088-4790-9f18-fa86bdb20f1d\\\"\",\r\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ + ,\r\n \"etag\": \"W/\\\"c040d832-9073-4f4d-b57b-5291a26ca6ae\\\"\",\r\ \n \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ - : \"Succeeded\",\r\n \"resourceGuid\": \"4390850c-e69c-4944-b171-325a62eee193\"\ + : \"Succeeded\",\r\n \"resourceGuid\": \"9746f7f8-1f83-45f4-b7ea-14d06efeba10\"\ ,\r\n \"addressSpace\": {\r\n \"addressPrefixes\": [\r\n \ \ \"10.0.0.0/16\"\r\n ]\r\n },\r\n \"dhcpOptions\"\ : {\r\n \"dnsServers\": [\r\n \"10.1.1.1\",\r\n \ \ \"10.1.2.4\"\r\n ]\r\n },\r\n \"subnets\": [\r\ \n {\r\n \"name\": \"pyvnetsubnetone4725106e\",\r\n \ - \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ - ,\r\n \"etag\": \"W/\\\"0d0e5dfa-8088-4790-9f18-fa86bdb20f1d\\\"\ + \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ + ,\r\n \"etag\": \"W/\\\"c040d832-9073-4f4d-b57b-5291a26ca6ae\\\"\ \",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n\ \ \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ : \"Enabled\",\r\n \"privateLinkServiceNetworkPolicies\": \"\ Enabled\"\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\ \r\n },\r\n {\r\n \"name\": \"pyvnetsubnettwo4725106e\"\ - ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ - ,\r\n \"etag\": \"W/\\\"0d0e5dfa-8088-4790-9f18-fa86bdb20f1d\\\"\ + ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ + ,\r\n \"etag\": \"W/\\\"c040d832-9073-4f4d-b57b-5291a26ca6ae\\\"\ \",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"addressPrefix\": \"10.0.2.0/24\",\r\n\ \ \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ @@ -377,7 +377,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:39:04 GMT + - Tue, 22 Oct 2019 06:44:57 GMT expires: - '-1' pragma: @@ -394,7 +394,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - a0af5497-2701-4c0c-b655-007fe586e871 + - 7d311c81-9174-4a6d-be18-868f80d2df25 status: code: 200 message: OK @@ -409,23 +409,23 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/virtualNetworks?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/virtualNetworks?api-version=2019-09-01 response: body: - string: '{"value":[{"name":"vm-nameVNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Network/virtualNetworks/vm-nameVNET","etag":"W/\"ce9bbb43-cfa2-49c4-830a-ba8e4dcbbb15\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"50839a44-fe98-4bd3-bc6b-b79edc97254c","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vm-nameSubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Network/virtualNetworks/vm-nameVNET/subnets/vm-nameSubnet","etag":"W/\"ce9bbb43-cfa2-49c4-830a-ba8e4dcbbb15\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/clitest.rgsgwekjsz5la7k2ccuimgiv3n2d2akbxv3pduwkqnvnme42bmuwseslugnpm4qhox4/providers/Microsoft.Network/networkInterfaces/vm-nameVMNic/ipConfigurations/ipconfigvm-name"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"ag1Vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_http_listenertb7pymvq5kixiqstjlpacrnztz4dhslpayhqs2pexgcghahgnt/providers/Microsoft.Network/virtualNetworks/ag1Vnet","etag":"W/\"3d14c275-6c02-4237-a8bd-2d0cee1cdd90\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"b30d14cb-999b-4e03-849d-f4ce978302d3","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_http_listenertb7pymvq5kixiqstjlpacrnztz4dhslpayhqs2pexgcghahgnt/providers/Microsoft.Network/virtualNetworks/ag1Vnet/subnets/default","etag":"W/\"3d14c275-6c02-4237-a8bd-2d0cee1cdd90\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"cli-test-vmmwqr6rnm5pcjxgkxja5VNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Network/virtualNetworks/cli-test-vmmwqr6rnm5pcjxgkxja5VNET","etag":"W/\"6c6d0104-aee0-4a46-9f82-4c08133250f2\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"ae655a83-e280-4b43-a528-79eba362d773","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"cli-test-vmmwqr6rnm5pcjxgkxja5Subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Network/virtualNetworks/cli-test-vmmwqr6rnm5pcjxgkxja5VNET/subnets/cli-test-vmmwqr6rnm5pcjxgkxja5Subnet","etag":"W/\"6c6d0104-aee0-4a46-9f82-4c08133250f2\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_invoke_actionwfymrc3ubclrp6ylrgto76szw3dayq2c762kvodxz44kanl75epn4/providers/Microsoft.Network/networkInterfaces/cli-test-vmmwqr6rnm5pcjxgkxja5VMNic/ipConfigurations/ipconfigcli-test-vmmwqr6rnm5pcjxgkxja5"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vm1VNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/virtualNetworks/vm1VNET","etag":"W/\"3111642f-bb95-4101-8a6b-a6c5f18acea3\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"b269aa54-5c23-4fd0-bc45-0bd78380faa5","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vm1Subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/virtualNetworks/vm1VNET/subnets/vm1Subnet","etag":"W/\"3111642f-bb95-4101-8a6b-a6c5f18acea3\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkInterfaces/vm1VMNic/ipConfigurations/ipconfigvm1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1c6e6Nic/ipConfigurations/vmss1c6e6IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/vmss1c6e6Nic/ipConfigurations/vmss1c6e6IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_msi_no_scopetbanb44x5fslhr5u7jmtbbhyj64zgwd2pd2jh7t6gqzfwpusckht3h/providers/Microsoft.Network/networkInterfaces/vm2VMNic/ipConfigurations/ipconfigvm2"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"cli-test-vmss-local-1VNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Network/virtualNetworks/cli-test-vmss-local-1VNET","etag":"W/\"e93707a0-1498-46d8-bd8d-1de99eb2cd7f\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f86a3ef7-c0b6-4394-b52e-0fa1b6124977","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"cli-test-vmss-local-1Subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Network/virtualNetworks/cli-test-vmss-local-1VNET/subnets/cli-test-vmss-local-1Subnet","etag":"W/\"e93707a0-1498-46d8-bd8d-1de99eb2cd7f\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Compute/virtualMachineScaleSets/cli-test-vmss-local-1/virtualMachines/0/networkInterfaces/clite01dcNic/ipConfigurations/clite01dcIPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_ephemeral_os_diskub55vhezpyeod5e5ayi5rvqlsjkj2cuurfsjt/providers/Microsoft.Compute/virtualMachineScaleSets/cli-test-vmss-local-1/virtualMachines/1/networkInterfaces/clite01dcNic/ipConfigurations/clite01dcIPConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vrfvnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_existing_idskfymxzondfqnj5dthktz5642i6kemhpnp2og7r5u7s/providers/Microsoft.Network/virtualNetworks/vrfvnet","etag":"W/\"4e558951-f102-4114-b29d-f03363270341\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"4cfa3b92-2337-4b64-b798-dae0189813d7","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":[]},"subnets":[{"name":"vrfsubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_existing_idskfymxzondfqnj5dthktz5642i6kemhpnp2og7r5u7s/providers/Microsoft.Network/virtualNetworks/vrfvnet/subnets/vrfsubnet","etag":"W/\"4e558951-f102-4114-b29d-f03363270341\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_existing_idskfymxzondfqnj5dthktz5642i6kemhpnp2og7r5u7s/providers/Microsoft.Compute/virtualMachineScaleSets/vrfvmss/virtualMachines/2/networkInterfaces/vrfvm4affNic/ipConfigurations/vrfvm4affIPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_existing_idskfymxzondfqnj5dthktz5642i6kemhpnp2og7r5u7s/providers/Microsoft.Compute/virtualMachineScaleSets/vrfvmss/virtualMachines/3/networkInterfaces/vrfvm4affNic/ipConfigurations/vrfvm4affIPConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vmss1VNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Network/virtualNetworks/vmss1VNET","etag":"W/\"e24030ae-e205-452e-90d9-82230e015a9c\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"e7c09dcf-c002-4bac-b782-660173222761","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vmss1Subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Network/virtualNetworks/vmss1VNET/subnets/vmss1Subnet","etag":"W/\"e24030ae-e205-452e-90d9-82230e015a9c\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss14c8aNic/ipConfigurations/vmss14c8aIPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_idempotentmuvg6r7ly6f4ews5lgps4vvkqnaisqf5guo6dsbne7oc/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss14c8aNic/ipConfigurations/vmss14c8aIPConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vmss1VNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_w_agwtq5qrlgrmxgkrmohihmdzytopjwvcqmj6a7ppuihsl5vm7rz4/providers/Microsoft.Network/virtualNetworks/vmss1VNET","etag":"W/\"bcbfee9e-2413-4869-9f91-6b4feb69db72\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"b2ebc147-5e7f-4185-800b-dfadd2def05c","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vmss1Subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_w_agwtq5qrlgrmxgkrmohihmdzytopjwvcqmj6a7ppuihsl5vm7rz4/providers/Microsoft.Network/virtualNetworks/vmss1VNET/subnets/vmss1Subnet","etag":"W/\"bcbfee9e-2413-4869-9f91-6b4feb69db72\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_w_agwtq5qrlgrmxgkrmohihmdzytopjwvcqmj6a7ppuihsl5vm7rz4/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1d418Nic/ipConfigurations/vmss1d418IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_w_agwtq5qrlgrmxgkrmohihmdzytopjwvcqmj6a7ppuihsl5vm7rz4/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/vmss1d418Nic/ipConfigurations/vmss1d418IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_w_agwtq5qrlgrmxgkrmohihmdzytopjwvcqmj6a7ppuihsl5vm7rz4/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/vmss1d418Nic/ipConfigurations/vmss1d418IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_w_agwtq5qrlgrmxgkrmohihmdzytopjwvcqmj6a7ppuihsl5vm7rz4/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/4/networkInterfaces/vmss1d418Nic/ipConfigurations/vmss1d418IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_w_agwtq5qrlgrmxgkrmohihmdzytopjwvcqmj6a7ppuihsl5vm7rz4/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/5/networkInterfaces/vmss1d418Nic/ipConfigurations/vmss1d418IPConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"appGwSubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_w_agwtq5qrlgrmxgkrmohihmdzytopjwvcqmj6a7ppuihsl5vm7rz4/providers/Microsoft.Network/virtualNetworks/vmss1VNET/subnets/appGwSubnet","etag":"W/\"bcbfee9e-2413-4869-9f91-6b4feb69db72\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.1.0/24","applicationGatewayIPConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_create_w_agwtq5qrlgrmxgkrmohihmdzytopjwvcqmj6a7ppuihsl5vm7rz4/providers/Microsoft.Network/applicationGateways/apt1/gatewayIPConfigurations/appGwIpConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"winvmssVNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_update_aupwr6f7s56h72i42rtexgc6j3sulqhdjyjcwvdjsvnc2jxtac3z55/providers/Microsoft.Network/virtualNetworks/winvmssVNET","etag":"W/\"97ae2125-784b-4d85-9706-334a4efe38d3\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"4c1de69c-e1cb-4a92-9b47-a71485cf3f77","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"winvmssSubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_update_aupwr6f7s56h72i42rtexgc6j3sulqhdjyjcwvdjsvnc2jxtac3z55/providers/Microsoft.Network/virtualNetworks/winvmssVNET/subnets/winvmssSubnet","etag":"W/\"97ae2125-784b-4d85-9706-334a4efe38d3\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_update_aupwr6f7s56h72i42rtexgc6j3sulqhdjyjcwvdjsvnc2jxtac3z55/providers/Microsoft.Compute/virtualMachineScaleSets/winvmss/virtualMachines/1/networkInterfaces/winvmd2c1Nic/ipConfigurations/winvmd2c1IPConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vmss1VNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Network/virtualNetworks/vmss1VNET","etag":"W/\"26089e07-7ac4-4fda-8fe2-4aa2082226e8\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"5d6e1168-e7cd-4686-8ef2-e313cf977f41","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vmss1Subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Network/virtualNetworks/vmss1VNET/subnets/vmss1Subnet","etag":"W/\"26089e07-7ac4-4fda-8fe2-4aa2082226e8\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss13e08Nic/ipConfigurations/vmss13e08IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_vmsp37gpewnjhmkod54oyqhneon2pfi7lulckz54rehqea72nykjpd5ibcnib/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/vmss13e08Nic/ipConfigurations/vmss13e08IPConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vm-unmanaged-diskVNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/virtualNetworks/vm-unmanaged-diskVNET","etag":"W/\"14770f64-b7d7-4d24-96d8-290668e1bed1\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"4f7e3370-b2ff-4d70-a332-5c715ec383ca","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vm-unmanaged-diskSubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/virtualNetworks/vm-unmanaged-diskVNET/subnets/vm-unmanaged-diskSubnet","etag":"W/\"14770f64-b7d7-4d24-96d8-290668e1bed1\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/vm-unmanaged-diskVMNic/ipConfigurations/ipconfigvm-unmanaged-disk"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/vm-managed-diskVMNic/ipConfigurations/ipconfigvm-managed-disk"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/fromimage1VMNic/ipConfigurations/ipconfigfromimage1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss11b4cNic/ipConfigurations/vmss11b4cIPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/2/networkInterfaces/vmss11b4cNic/ipConfigurations/vmss11b4cIPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/fromimage2VMNic/ipConfigurations/ipconfigfromimage2"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Network/networkInterfaces/vm3VMNic/ipConfigurations/ipconfigvm3"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/0/networkInterfaces/vmss27f47Nic/ipConfigurations/vmss27f47IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_custom_image7tl4g334mpratp4zwyoq4zw727u2tidxj7v4zqtelxuxwbqniya/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/1/networkInterfaces/vmss27f47Nic/ipConfigurations/vmss27f47IPConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"myvnet2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vpn_gatewayvw7airivlqrqz3bcd5uhmduodlahzmqr2tcg5rcbuv6s3uz7gq3zk4f/providers/Microsoft.Network/virtualNetworks/myvnet2","etag":"W/\"fefccb74-4751-419d-9b6f-332df13c5674\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"7814e493-5552-4368-bab0-897913611104","addressSpace":{"addressPrefixes":["10.1.0.0/16"]},"dhcpOptions":{"dnsServers":[]},"subnets":[{"name":"GatewaySubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vpn_gatewayvw7airivlqrqz3bcd5uhmduodlahzmqr2tcg5rcbuv6s3uz7gq3zk4f/providers/Microsoft.Network/virtualNetworks/myvnet2/subnets/GatewaySubnet","etag":"W/\"fefccb74-4751-419d-9b6f-332df13c5674\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vpn_gatewayvw7airivlqrqz3bcd5uhmduodlahzmqr2tcg5rcbuv6s3uz7gq3zk4f/providers/Microsoft.Network/virtualNetworkGateways/gateway2/ipConfigurations/vnetGatewayConfig0"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"fengtest-vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/fengtest-vnet","etag":"W/\"6863e044-00dd-43b7-99be-4edfc3ca29e4\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"bbf63c2d-03b0-4630-8f9c-39199a9524bd","addressSpace":{"addressPrefixes":["10.2.6.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/fengtest-vnet/subnets/default","etag":"W/\"6863e044-00dd-43b7-99be-4edfc3ca29e4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.6.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/fengubuntu763/ipConfigurations/ipconfig1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/fengubuntu523/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"start-1VNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/virtualNetworks/start-1VNET","etag":"W/\"b924357a-1cad-4881-94da-56d1c712ae0c\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0d67fe10-f709-4454-a571-d4c528064257","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"start-1Subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/virtualNetworks/start-1VNET/subnets/start-1Subnet","etag":"W/\"b924357a-1cad-4881-94da-56d1c712ae0c\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic/ipConfigurations/ipconfigstart-1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic/ipConfigurations/ipconfiga"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pyvnet4725106e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e","etag":"W/\"0d0e5dfa-8088-4790-9f18-fa86bdb20f1d\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"4390850c-e69c-4944-b171-325a62eee193","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":["10.1.1.1","10.1.2.4"]},"subnets":[{"name":"pyvnetsubnetone4725106e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e","etag":"W/\"0d0e5dfa-8088-4790-9f18-fa86bdb20f1d\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.1.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"pyvnetsubnettwo4725106e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e","etag":"W/\"0d0e5dfa-8088-4790-9f18-fa86bdb20f1d\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.2.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pyvirtnetb4d417ef","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef","etag":"W/\"cdeeb760-0e1f-4ff6-b2bb-b649a299cd95\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"b9118101-31a6-4b74-985a-55fa7414cec7","addressSpace":{"addressPrefixes":["10.11.0.0/16","10.12.0.0/16"]},"subnets":[{"name":"pysubnetfeb4d417ef","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef","etag":"W/\"cdeeb760-0e1f-4ff6-b2bb-b649a299cd95\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.11.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"pysubnetbeb4d417ef","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef","etag":"W/\"cdeeb760-0e1f-4ff6-b2bb-b649a299cd95\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.12.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"GatewaySubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet","etag":"W/\"cdeeb760-0e1f-4ff6-b2bb-b649a299cd95\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.12.255.0/27","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef/ipConfigurations/default"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"0930vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/virtualNetworks/0930vnet","etag":"W/\"6509e04c-66b9-46ef-a283-5dcd8e0fafbf\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"9cebc68a-7d2e-4e56-ad44-3ca473d5a920","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":[]},"subnets":[],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"0930vnet02","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/virtualNetworks/0930vnet02","etag":"W/\"8d6e1ca6-115b-4f01-8622-442bb0a3c41c\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"21343a44-d3cc-445d-85c2-843a6b7608dd","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":[]},"subnets":[],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"0930vnet03","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/virtualNetworks/0930vnet03","etag":"W/\"c6dd2a35-38f6-41d2-a5c2-49130a12051c\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"b12e9b7a-4aeb-4f4b-9795-db0053a07337","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":[]},"subnets":[],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"ag11Vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/virtualNetworks/ag11Vnet","etag":"W/\"851e3379-a0a9-4b45-b195-e2ccb930821e\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"e416806c-c71a-4d7b-a79c-e3b45481bdc3","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/virtualNetworks/ag11Vnet/subnets/default","etag":"W/\"851e3379-a0a9-4b45-b195-e2ccb930821e\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/applicationGateways/ag11/frontendIPConfigurations/appGatewayFrontendIP"}],"applicationGatewayIPConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/applicationGateways/ag11/gatewayIPConfigurations/appGatewayFrontendIP"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"workspacetestvmVNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/virtualNetworks/workspacetestvmVNET","etag":"W/\"c08957cb-6309-4631-b184-c6ce34e07d95\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"394c4bd0-2a36-4e3e-9cb2-099eb914c010","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"workspacetestvmSubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/virtualNetworks/workspacetestvmVNET/subnets/workspacetestvmSubnet","etag":"W/\"c08957cb-6309-4631-b184-c6ce34e07d95\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0924fanqiu/providers/Microsoft.Network/networkInterfaces/workspacetestvmVMNic/ipConfigurations/ipconfigworkspacetestvm"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"fozippy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/virtualNetworks/fozippy98","etag":"W/\"1491f1a5-4ddb-43ee-a981-e3d576b97659\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"aee855ee-cab8-4599-b3ed-209ffcbc5149","addressSpace":{"addressPrefixes":["192.168.0.0/16"]},"subnets":[{"name":"fozippy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/virtualNetworks/fozippy98/subnets/fozippy98","etag":"W/\"1491f1a5-4ddb-43ee-a981-e3d576b97659\"","properties":{"provisioningState":"Succeeded","addressPrefix":"192.168.1.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/0/networkInterfaces/fozippy98/ipConfigurations/fozippy98"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/3/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vmss1VNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/virtualNetworks/vmss1VNET","etag":"W/\"a3357b39-1bf1-452e-8604-b8e2f80ca37e\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"865c17b3-830b-4982-9612-7f395e15a387","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vmss1Subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/virtualNetworks/vmss1VNET/subnets/vmss1Subnet","etag":"W/\"a3357b39-1bf1-452e-8604-b8e2f80ca37e\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkInterfaces/ubuntuVMNic/ipConfigurations/ipconfigubuntu"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss10282Nic/ipConfigurations/vmss10282IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/vmss10282Nic/ipConfigurations/vmss10282IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/networkInterfaces/vm1VMNic/ipConfigurations/ipconfigvm1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"testVMVNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Network/virtualNetworks/testVMVNET","etag":"W/\"f67b2bc0-d9ea-4d02-a4d1-5bf26f436769\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"21bf80b1-ca80-43d8-91ae-4c53074bffa6","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"testVMSubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.Network/virtualNetworks/testVMVNET/subnets/testVMSubnet","etag":"W/\"f67b2bc0-d9ea-4d02-a4d1-5bf26f436769\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"storagerule","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/storagerule","etag":"W/\"8e8c51cf-4cdd-44c7-a56a-82abe464ff98\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"1b917d9e-2206-4172-abe3-9d1b328453d7","addressSpace":{"addressPrefixes":["10.4.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/storagerule/subnets/default","etag":"W/\"8e8c51cf-4cdd-44c7-a56a-82abe464ff98\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.4.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638/ipConfigurations/ipconfig1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359/ipConfigurations/ipconfig1"}],"serviceEndpoints":[{"provisioningState":"Succeeded","service":"Microsoft.Storage","locations":["eastus","westus"]}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"testzuh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/testzuh","etag":"W/\"52b88025-11b5-44d6-9db9-00ae39abb096\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"5c4d3ad3-5ccb-497f-9d7d-179fd1ab28bf","addressSpace":{"addressPrefixes":["10.3.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/testzuh/subnets/default","etag":"W/\"52b88025-11b5-44d6-9db9-00ae39abb096\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.3.0.0/24","applicationGatewayIPConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/applicationGateways/aaaaa/gatewayIPConfigurations/appGatewayIpConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"zuh-vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuh-vnet","etag":"W/\"a3e70c32-eb86-48d6-b0d5-31428a1f0a16\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"5bd58890-46ce-4785-9445-b3092a02abee","addressSpace":{"addressPrefixes":["10.2.0.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuh-vnet/subnets/default","etag":"W/\"a3e70c32-eb86-48d6-b0d5-31428a1f0a16\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"jlrg1vnet623","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1vnet623","etag":"W/\"cd12f2fe-ad80-400d-a5b9-6ca50f8b5285\"","type":"Microsoft.Network/virtualNetworks","location":"eastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"4937c1e9-9025-439d-959a-a6842c82e584","addressSpace":{"addressPrefixes":["10.2.4.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1vnet623/subnets/default","etag":"W/\"cd12f2fe-ad80-400d-a5b9-6ca50f8b5285\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.4.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"acrtest-vm1vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/virtualNetworks/acrtest-vm1vnet","etag":"W/\"1d47a750-82ab-4570-95b3-786d83ccfa07\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a26bf0fe-1ea7-4ec2-bec5-379058a0b980","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"acrtest-vm1Subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/virtualNetworks/acrtest-vm1vnet/subnets/acrtest-vm1Subnet","etag":"W/\"1d47a750-82ab-4570-95b3-786d83ccfa07\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm1VMNic/ipConfigurations/ipconfigacrtest-vm1"}],"serviceEndpoints":[{"provisioningState":"Succeeded","service":"Microsoft.ContainerRegistry","locations":["*"]}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"arctets-vm1subnet2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/virtualNetworks/acrtest-vm1VNET/subnets/arctets-vm1subnet2","etag":"W/\"1d47a750-82ab-4570-95b3-786d83ccfa07\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.3.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm2VMNic/ipConfigurations/ipconfigacrtest-vm2"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm3VMNic/ipConfigurations/ipconfigacrtest-vm3"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/acrtest/providers/Microsoft.Network/networkInterfaces/acrtest-vm4VMNic/ipConfigurations/ipconfigacrtest-vm4"}],"serviceEndpoints":[{"provisioningState":"Succeeded","service":"Microsoft.ContainerRegistry","locations":["*"]}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"helm-1VNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Network/virtualNetworks/helm-1VNET","etag":"W/\"4f893c7b-6993-428a-b617-34439bef6dcc\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"136f59a2-8714-41fe-ae87-b040c86716b2","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"helm-1Subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Network/virtualNetworks/helm-1VNET/subnets/helm-1Subnet","etag":"W/\"4f893c7b-6993-428a-b617-34439bef6dcc\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/helm/providers/Microsoft.Network/networkInterfaces/helm-1VMNic/ipConfigurations/ipconfighelm-1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"jlrg1-vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1-vnet","etag":"W/\"fd93565e-45f8-41a4-b108-85b595f7cecf\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9dfeb5f2-adef-408a-9d3c-746fcb42a757","addressSpace":{"addressPrefixes":["10.2.2.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1-vnet/subnets/default","etag":"W/\"fd93565e-45f8-41a4-b108-85b595f7cecf\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.2.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"jlwvmrg-vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/virtualNetworks/jlwvmrg-vnet","etag":"W/\"a27b7970-2d69-4098-9048-2ccd23db1de2\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"b791b303-d438-45e1-a31b-d8e8ba6897ff","addressSpace":{"addressPrefixes":["10.2.5.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/virtualNetworks/jlwvmrg-vnet/subnets/default","etag":"W/\"a27b7970-2d69-4098-9048-2ccd23db1de2\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.5.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"yugangw-vm1VNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/virtualNetworks/yugangw-vm1VNET","etag":"W/\"478e021d-cd8a-4dcb-b3e9-4b2756f2bd5e\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d55aef73-fea8-4c33-8a43-ca572693d2fb","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"yugangw-vm1Subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/virtualNetworks/yugangw-vm1VNET/subnets/yugangw-vm1Subnet","etag":"W/\"478e021d-cd8a-4dcb-b3e9-4b2756f2bd5e\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw-vm1VMNic/ipConfigurations/ipconfigyugangw-vm1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"zuhvnet584","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet584","etag":"W/\"9c934546-3720-428f-9e3a-786b4c5a7b2f\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"b6d3cf11-df2a-4b02-97f0-6c8dfa8dba3d","addressSpace":{"addressPrefixes":["10.2.1.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet584/subnets/default","etag":"W/\"9c934546-3720-428f-9e3a-786b4c5a7b2f\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.1.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"0925vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0925testpe/providers/Microsoft.Network/virtualNetworks/0925vnet","etag":"W/\"954a5cce-8257-45fa-a291-3da65bb3716d\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"28f4a07f-24b9-407e-bf5d-7882cc90f661","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":[]},"subnets":[{"name":"0925subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0925testpe/providers/Microsoft.Network/virtualNetworks/0925vnet/subnets/0925subnet","etag":"W/\"954a5cce-8257-45fa-a291-3da65bb3716d\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"monitor_vmVNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/virtualNetworks/monitor_vmVNET","etag":"W/\"6e3d31db-b243-4a76-8f2f-44c337a22491\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"23584ff1-678c-4d58-a6f0-d8daded452fd","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"monitor_vmSubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/virtualNetworks/monitor_vmVNET/subnets/monitor_vmSubnet","etag":"W/\"6e3d31db-b243-4a76-8f2f-44c337a22491\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkInterfaces/monitor_vmVMNic/ipConfigurations/ipconfigmonitor_vm"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0926monitor/providers/Microsoft.Network/networkInterfaces/monitorVmVMNic/ipConfigurations/ipconfigmonitorVm"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnet1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1","etag":"W/\"5880e151-6c6e-42b3-92df-bbfb7147cf43\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d7c5b183-ce82-4303-92ae-8d61a645f08a","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":[]},"subnets":[{"name":"subnet1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1","etag":"W/\"5880e151-6c6e-42b3-92df-bbfb7147cf43\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/lks1.nic.7f9003f5-5e86-42b9-9979-80a9797cf484/ipConfigurations/lks1_ipconfig_0"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/privateLinkServices/lks1/ipConfigurations/lks1_ipconfig_0"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Disabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"subnet2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet2","etag":"W/\"5880e151-6c6e-42b3-92df-bbfb7147cf43\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.2.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/pe1.nic.42302fcd-0ffa-4e8d-8094-9f06c8639a3e/ipConfigurations/privateEndpointIpConfig"}],"privateEndpoints":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/privateEndpoints/pe1"}],"delegations":[],"purpose":"PrivateEndpoints","privateEndpointNetworkPolicies":"Disabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnet1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpoints5g6w2vswk3ajqexqwta4in3ictwrqwgvneqw3hbnp/providers/Microsoft.Network/virtualNetworks/vnet1","etag":"W/\"d12f96e6-22c8-48ec-bdd4-b6fe1f7545d6\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"18ec7029-db12-41ca-b585-03798b6dff23","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":[]},"subnets":[{"name":"subnet1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpoints5g6w2vswk3ajqexqwta4in3ictwrqwgvneqw3hbnp/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1","etag":"W/\"d12f96e6-22c8-48ec-bdd4-b6fe1f7545d6\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpoints5g6w2vswk3ajqexqwta4in3ictwrqwgvneqw3hbnp/providers/Microsoft.Network/networkInterfaces/lks1.nic.65156728-e757-4204-9c0e-c3abd60fa974/ipConfigurations/lks1_ipconfig_0"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpoints5g6w2vswk3ajqexqwta4in3ictwrqwgvneqw3hbnp/providers/Microsoft.Network/privateLinkServices/lks1/ipConfigurations/lks1_ipconfig_0"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Disabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"subnet2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpoints5g6w2vswk3ajqexqwta4in3ictwrqwgvneqw3hbnp/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet2","etag":"W/\"d12f96e6-22c8-48ec-bdd4-b6fe1f7545d6\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.2.0/24","delegations":[],"privateEndpointNetworkPolicies":"Disabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnet1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/virtualNetworks/vnet1","etag":"W/\"bf27940c-f7bb-4ee2-88e8-d0ebe5a34063\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"41977662-520b-4836-9912-d7e33e5cbea9","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":[]},"subnets":[{"name":"subnet1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1","etag":"W/\"bf27940c-f7bb-4ee2-88e8-d0ebe5a34063\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/networkInterfaces/lks1.nic.e277358c-ae81-4320-a600-be2f5fb9f560/ipConfigurations/lks1_ipconfig_0"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/privateLinkServices/lks1/ipConfigurations/lks1_ipconfig_0"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Disabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"subnet2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet2","etag":"W/\"bf27940c-f7bb-4ee2-88e8-d0ebe5a34063\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.2.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/networkInterfaces/pe1.nic.44995400-c039-4ef7-b5cd-9fcf4f8e4403/ipConfigurations/privateEndpointIpConfig"}],"privateEndpoints":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_network_private_endpointsqawqdio7cezk226lz5eelqsfc6t2obtqrxkq6l7t3/providers/Microsoft.Network/privateEndpoints/pe1"}],"delegations":[],"purpose":"PrivateEndpoints","privateEndpointNetworkPolicies":"Disabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnettest","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"069414bc-bd93-47a1-976e-2e51578a2c72","addressSpace":{"addressPrefixes":["10.1.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/default","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/networkInterfaces/sdfsdfsdf.nic.483f3d12-3ba8-4789-92dd-b7ed9c4d43db/ipConfigurations/sdfsdfsdf_ipconfig_0"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/privateLinkServices/sdfsdfsdf/ipConfigurations/sdfsdfsdf_ipconfig_0"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Disabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"GatewaySubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/GatewaySubnet","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.3.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"test1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/test1","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.1.0/24","serviceEndpoints":[],"delegations":[],"privateEndpointNetworkPolicies":"Disabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"test2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/test2","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.2.0/24","serviceEndpoints":[],"delegations":[],"purpose":"PrivateEndpoints","privateEndpointNetworkPolicies":"Disabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"test3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/test3","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.4.0/24","serviceEndpoints":[],"delegations":[],"purpose":"PrivateEndpoints","privateEndpointNetworkPolicies":"Disabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"test4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/test4","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.5.0/24","serviceEndpoints":[],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Disabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnet1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/vnet1","etag":"W/\"cdf55d73-7582-425a-bdd1-5383e2daba61\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"c946fed5-e511-4060-b29e-9d317d552d8e","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":[]},"subnets":[{"name":"subnet1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1","etag":"W/\"cdf55d73-7582-425a-bdd1-5383e2daba61\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"zuhvnet370","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet370","etag":"W/\"1e1b4ae5-022a-475e-969a-f96339c8648e\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"2c951b45-735f-4cf6-bb8a-de4095665900","addressSpace":{"addressPrefixes":["10.2.3.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet370/subnets/default","etag":"W/\"1e1b4ae5-022a-475e-969a-f96339c8648e\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.3.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285/ipConfigurations/ipconfig1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"fooziipy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/virtualNetworks/fooziipy98","etag":"W/\"02e6c4d1-dc43-4614-b7f7-65a9a5e9de84\"","type":"Microsoft.Network/virtualNetworks","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"96537f60-9ee3-4e56-bbb4-e622048d764d","addressSpace":{"addressPrefixes":["192.168.0.0/16"]},"subnets":[{"name":"fooziipy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/virtualNetworks/fooziipy98/subnets/fooziipy98","etag":"W/\"02e6c4d1-dc43-4614-b7f7-65a9a5e9de84\"","properties":{"provisioningState":"Succeeded","addressPrefix":"192.168.1.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98/ipConfigurations/fooziipy98"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"fooziipy99","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/virtualNetworks/fooziipy99","etag":"W/\"39477a34-d029-470a-91ad-975873313a30\"","type":"Microsoft.Network/virtualNetworks","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"deea6a38-de92-4d49-82d6-deb59d695873","addressSpace":{"addressPrefixes":["192.168.0.0/16"]},"subnets":[{"name":"fooziipy99","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/virtualNetworks/fooziipy99/subnets/fooziipy99","etag":"W/\"39477a34-d029-470a-91ad-975873313a30\"","properties":{"provisioningState":"Succeeded","addressPrefix":"192.168.1.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99/ipConfigurations/fooziipy99"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"sdk-vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/virtualNetworks/sdk-vnet","etag":"W/\"b277f4c3-62f6-411f-b1e3-80ca12a5ea9c\"","type":"Microsoft.Network/virtualNetworks","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"7637a963-71f9-4aed-905b-8c0f4aed45b9","addressSpace":{"addressPrefixes":["10.6.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/virtualNetworks/sdk-vnet/subnets/default","etag":"W/\"b277f4c3-62f6-411f-b1e3-80ca12a5ea9c\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.6.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/networkInterfaces/anf-sdk-vnet-nic-VLB5RZ/ipConfigurations/ipconfig1"}],"serviceEndpoints":[],"delegations":[{"name":"514c6b63b2df4757ba448bd8f44d10a5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/virtualNetworks/sdk-vnet/subnets/default/delegations/514c6b63b2df4757ba448bd8f44d10a5","etag":"W/\"b277f4c3-62f6-411f-b1e3-80ca12a5ea9c\"","properties":{"provisioningState":"Succeeded","serviceName":"Microsoft.Netapp/volumes","actions":["Microsoft.Network/networkinterfaces/*","Microsoft.Network/virtualNetworks/subnets/join/action"]},"type":"Microsoft.Network/virtualNetworks/subnets/delegations"}],"purpose":"HostedWorkloads","privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pytest-vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg/providers/Microsoft.Network/virtualNetworks/pytest-vnet","etag":"W/\"aa662f30-f19c-4f27-bd8a-2fd7a22c04fe\"","type":"Microsoft.Network/virtualNetworks","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"27e8ce4b-11fc-4bb5-a8de-c9425c01900c","addressSpace":{"addressPrefixes":["10.5.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg/providers/Microsoft.Network/virtualNetworks/pytest-vnet/subnets/default","etag":"W/\"aa662f30-f19c-4f27-bd8a-2fd7a22c04fe\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.5.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}}]}' + string: '{"value":[{"name":"ag1Vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_address_poolb7vwzkoul4hnlo2ptgwrpa562ek4hoa5pq2gc4ekn2rrhgslo2a/providers/Microsoft.Network/virtualNetworks/ag1Vnet","etag":"W/\"ab537fc6-326b-41c5-b34d-4f415c358bb9\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"3c3b1ccb-caa7-4c6a-8d6e-ec2087f3fc44","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_address_poolb7vwzkoul4hnlo2ptgwrpa562ek4hoa5pq2gc4ekn2rrhgslo2a/providers/Microsoft.Network/virtualNetworks/ag1Vnet/subnets/default","etag":"W/\"ab537fc6-326b-41c5-b34d-4f415c358bb9\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_frontend_ip_private4g2fakklpk5ifocmi72mw5gmvhf3zvf5u3bonj2eehlq/providers/Microsoft.Network/virtualNetworks/vnet1","etag":"W/\"8c411fef-74d8-4452-a271-c88ff578e93e\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d3a5d83d-f484-457a-9f76-72480fc19ad0","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":[]},"subnets":[{"name":"subnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_frontend_ip_private4g2fakklpk5ifocmi72mw5gmvhf3zvf5u3bonj2eehlq/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1","etag":"W/\"8c411fef-74d8-4452-a271-c88ff578e93e\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"ag1Vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_frontend_ip_publicglwm4jk2aep5y7hj33emv7b6t2abgr4fvy5zsxtebs2sr/providers/Microsoft.Network/virtualNetworks/ag1Vnet","etag":"W/\"7b4cd5fd-37de-4625-8561-03c67a562d19\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"3ae71df6-5296-485a-9ead-b6202537a2ea","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_frontend_ip_publicglwm4jk2aep5y7hj33emv7b6t2abgr4fvy5zsxtebs2sr/providers/Microsoft.Network/virtualNetworks/ag1Vnet/subnets/default","etag":"W/\"7b4cd5fd-37de-4625-8561-03c67a562d19\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"ag1Vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_frontend_ip_publicibdwzsizl4kai4bmnsmr3oh4fadlt7gvn24umxxgk4olz/providers/Microsoft.Network/virtualNetworks/ag1Vnet","etag":"W/\"060e91d1-dd8d-4906-99c9-6ef33b0c7d41\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d34d0f53-1da7-44d4-86e7-3908a95be9d1","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_frontend_ip_publicibdwzsizl4kai4bmnsmr3oh4fadlt7gvn24umxxgk4olz/providers/Microsoft.Network/virtualNetworks/ag1Vnet/subnets/default","etag":"W/\"060e91d1-dd8d-4906-99c9-6ef33b0c7d41\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"ag1Vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_frontend_portwbitfwqlqjoz6jzbl3fa4x4nk4jhzjdet6bichvfgye2n2jtim/providers/Microsoft.Network/virtualNetworks/ag1Vnet","etag":"W/\"9b0d79c5-03fd-48fc-b001-cdc89bb53393\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"5f61d7a7-5dd1-41a3-9195-808406448da7","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_frontend_portwbitfwqlqjoz6jzbl3fa4x4nk4jhzjdet6bichvfgye2n2jtim/providers/Microsoft.Network/virtualNetworks/ag1Vnet/subnets/default","etag":"W/\"9b0d79c5-03fd-48fc-b001-cdc89bb53393\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"ag3Vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_private_ip47l4iutevepeno4eleto4yn6uobjzmcmyodfx6gav4bcxbp3zh7yi/providers/Microsoft.Network/virtualNetworks/ag3Vnet","etag":"W/\"c279638e-08d9-4466-aeb4-1843bc9112e9\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"2b3381b7-f968-4774-a5f3-1d1c67ed20e4","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"subnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_private_ip47l4iutevepeno4eleto4yn6uobjzmcmyodfx6gav4bcxbp3zh7yi/providers/Microsoft.Network/virtualNetworks/ag3Vnet/subnets/subnet1","etag":"W/\"c279638e-08d9-4466-aeb4-1843bc9112e9\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"ag3Vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_private_ipp2ykus5y6rkqaz5tnozsd754n36zwxyv4bl6exm4w2r4zi2fdw3tf/providers/Microsoft.Network/virtualNetworks/ag3Vnet","etag":"W/\"a2671389-f108-4b9d-94c5-bd841f0bd951\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f231167d-c706-4b7d-a706-cdaae9918ae5","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"subnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_private_ipp2ykus5y6rkqaz5tnozsd754n36zwxyv4bl6exm4w2r4zi2fdw3tf/providers/Microsoft.Network/virtualNetworks/ag3Vnet/subnets/subnet1","etag":"W/\"a2671389-f108-4b9d-94c5-bd841f0bd951\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"gw1Vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_rewrite_rulesetspm5eoivju7bbk7ji5ig4m5nuu4yreqobo4eio2uj34rrqvf/providers/Microsoft.Network/virtualNetworks/gw1Vnet","etag":"W/\"66164ade-8e7f-413a-8510-9a52d9a05393\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d9fabe9a-feaf-43e6-ab5b-24f2bc12e288","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_rewrite_rulesetspm5eoivju7bbk7ji5ig4m5nuu4yreqobo4eio2uj34rrqvf/providers/Microsoft.Network/virtualNetworks/gw1Vnet/subnets/default","etag":"W/\"66164ade-8e7f-413a-8510-9a52d9a05393\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"gw1Vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_rewrite_rulesetsqdemdi2b6abi4kp6jz2yqszfx47uy35cdveusufscfyjrck/providers/Microsoft.Network/virtualNetworks/gw1Vnet","etag":"W/\"64172557-ad70-44d2-9e98-5e79024e4436\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a2c135e0-a3c2-477a-923d-f035746af251","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_rewrite_rulesetsqdemdi2b6abi4kp6jz2yqszfx47uy35cdveusufscfyjrck/providers/Microsoft.Network/virtualNetworks/gw1Vnet/subnets/default","etag":"W/\"64172557-ad70-44d2-9e98-5e79024e4436\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_app_gateway_waf_configqmmu6wjrdktmmocgings2wpaeenqmgbn7xf2eug5swlm/providers/Microsoft.Network/virtualNetworks/vnet1","etag":"W/\"e48ea213-25b7-4f6a-badb-1b5077a059e7\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"1448ee43-96d5-4e0d-a2a4-cc0b42d09133","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"subnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_app_gateway_waf_configqmmu6wjrdktmmocgings2wpaeenqmgbn7xf2eug5swlm/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1","etag":"W/\"e48ea213-25b7-4f6a-badb-1b5077a059e7\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vmss1VNET","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/virtualNetworks/vmss1VNET","etag":"W/\"870d9ddd-99c7-4a80-945b-8eef36a7e020\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"67ad67fe-48fa-4d93-9d5f-fd1274921852","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vmss1Subnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/virtualNetworks/vmss1VNET/subnets/vmss1Subnet","etag":"W/\"870d9ddd-99c7-4a80-945b-8eef36a7e020\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"fengtest-vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/fengtest-vnet","etag":"W/\"683ea4ba-a82d-4ab9-9afb-16eb4ebb914a\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"bbf63c2d-03b0-4630-8f9c-39199a9524bd","addressSpace":{"addressPrefixes":["10.2.6.0/24"]},"subnets":[{"name":"GatewaySubnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/fengtest-vnet/subnets/GatewaySubnet","etag":"W/\"683ea4ba-a82d-4ab9-9afb-16eb4ebb914a\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.6.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworkGateways/fenggw/ipConfigurations/default"}],"serviceEndpoints":[],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"feng_rhel_8VNET","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/feng_rhel_8VNET","etag":"W/\"2f942af6-8ff0-4e39-a25f-629076d46b8b\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a73fe0a0-7a42-44b9-a583-f614b1acbee2","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"feng_rhel_8Subnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/feng_rhel_8VNET/subnets/feng_rhel_8Subnet","etag":"W/\"2f942af6-8ff0-4e39-a25f-629076d46b8b\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng_rhel_8VMNic/ipConfigurations/ipconfigfeng_rhel_8"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-rhel-8VMNic/ipConfigurations/ipconfigfeng-rhel-8"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"harold-vnet-01","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-01","etag":"W/\"4e980251-42f9-493e-8912-84098812ed55\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"42338af7-eb67-475b-a216-b07759ce5e50","addressSpace":{"addressPrefixes":["10.7.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-01/subnets/default","etag":"W/\"4e980251-42f9-493e-8912-84098812ed55\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.7.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-01543/ipConfigurations/ipconfig1"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-02540/ipConfigurations/ipconfig1"}],"serviceEndpoints":[{"provisioningState":"Succeeded","service":"Microsoft.KeyVault","locations":["*"]}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"GatewaySubnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-01/subnets/GatewaySubnet","etag":"W/\"4e980251-42f9-493e-8912-84098812ed55\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.7.1.0/28","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworkGateways/harold-vnet-gw-01/ipConfigurations/default"}],"serviceEndpoints":[{"provisioningState":"Succeeded","service":"Microsoft.KeyVault","locations":["*"]}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"AzureFirewallSubnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-01/subnets/AzureFirewallSubnet","etag":"W/\"4e980251-42f9-493e-8912-84098812ed55\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.7.2.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/azureFirewalls/harold-fw-01/azureFirewallIpConfigurations/IpConf"}],"serviceEndpoints":[],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"harold-vnet-02","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-02","etag":"W/\"b399d6d0-f2bb-4e02-a68c-7233aa78192a\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"408c17a1-9605-4d3f-b601-c3472b2479eb","addressSpace":{"addressPrefixes":["10.10.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-02/subnets/default","etag":"W/\"b399d6d0-f2bb-4e02-a68c-7233aa78192a\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.10.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"GatewaySubnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-02/subnets/GatewaySubnet","etag":"W/\"b399d6d0-f2bb-4e02-a68c-7233aa78192a\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.10.1.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworkGateways/harold-vnet-gw-02/ipConfigurations/vnetGatewayConfig0"}],"serviceEndpoints":[],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"start-1VNET","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/virtualNetworks/start-1VNET","etag":"W/\"b924357a-1cad-4881-94da-56d1c712ae0c\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0d67fe10-f709-4454-a571-d4c528064257","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"start-1Subnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/virtualNetworks/start-1VNET/subnets/start-1Subnet","etag":"W/\"b924357a-1cad-4881-94da-56d1c712ae0c\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic/ipConfigurations/ipconfigstart-1"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic/ipConfigurations/ipconfiga"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pyvmirnet5cc18eb","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb","etag":"W/\"bf516b23-6a3d-44bb-9581-f174fcdd50e2\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"b4065c95-d7b3-4c8f-bc82-3ffa80ab3ce6","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"pyvmirsub5cc18eb","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb/subnets/pyvmirsub5cc18eb","etag":"W/\"bf516b23-6a3d-44bb-9581-f174fcdd50e2\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pyvmirnet9bd146b","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b","etag":"W/\"3091dedc-e8f0-4b2d-bfad-739a76de687c\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"5ba3308a-6a50-4b85-9c59-42def9396cdc","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"pyvmirsub9bd146b","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b/subnets/pyvmirsub9bd146b","etag":"W/\"3091dedc-e8f0-4b2d-bfad-739a76de687c\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b/ipConfigurations/pyarmconfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pyvnet4725106e","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e","etag":"W/\"c040d832-9073-4f4d-b57b-5291a26ca6ae\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"9746f7f8-1f83-45f4-b7ea-14d06efeba10","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":["10.1.1.1","10.1.2.4"]},"subnets":[{"name":"pyvnetsubnetone4725106e","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e","etag":"W/\"c040d832-9073-4f4d-b57b-5291a26ca6ae\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.1.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"pyvnetsubnettwo4725106e","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e","etag":"W/\"c040d832-9073-4f4d-b57b-5291a26ca6ae\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.2.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pyvirtnetb4d417ef","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef","etag":"W/\"a6d60390-4234-4ebb-baed-35ad4727c4b0\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"4dc1befd-0e17-465e-90f3-251856f22a7a","addressSpace":{"addressPrefixes":["10.11.0.0/16","10.12.0.0/16"]},"subnets":[{"name":"pysubnetfeb4d417ef","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef","etag":"W/\"a6d60390-4234-4ebb-baed-35ad4727c4b0\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.11.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"pysubnetbeb4d417ef","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef","etag":"W/\"a6d60390-4234-4ebb-baed-35ad4727c4b0\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.12.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"GatewaySubnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet","etag":"W/\"a6d60390-4234-4ebb-baed-35ad4727c4b0\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.12.255.0/27","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef/ipConfigurations/default"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"zimsstuff-vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/virtualNetworks/zimsstuff-vnet","etag":"W/\"f2bf4716-9fbb-4f88-ac84-44d6873b3387\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"d4706934-8008-46f1-bfea-c84a8f591ec3","addressSpace":{"addressPrefixes":["10.2.8.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/virtualNetworks/zimsstuff-vnet/subnets/default","etag":"W/\"f2bf4716-9fbb-4f88-ac84-44d6873b3387\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.8.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkInterfaces/zimsvm64/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"zuhtest","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh2/providers/Microsoft.Network/virtualNetworks/zuhtest","etag":"W/\"781dbf03-ef57-4daa-9cea-6c392b0c8b19\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"8afda190-e999-4772-bb49-1d6b83b3656c","addressSpace":{"addressPrefixes":["10.9.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh2/providers/Microsoft.Network/virtualNetworks/zuhtest/subnets/default","etag":"W/\"781dbf03-ef57-4daa-9cea-6c392b0c8b19\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.9.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"testsubnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh2/providers/Microsoft.Network/virtualNetworks/zuhtest/subnets/testsubnet","etag":"W/\"781dbf03-ef57-4daa-9cea-6c392b0c8b19\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.9.1.0/24","serviceEndpoints":[{"provisioningState":"Succeeded","service":"Microsoft.Storage","locations":["westus","eastus"]}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"fozippy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/virtualNetworks/fozippy98","etag":"W/\"1491f1a5-4ddb-43ee-a981-e3d576b97659\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"aee855ee-cab8-4599-b3ed-209ffcbc5149","addressSpace":{"addressPrefixes":["192.168.0.0/16"]},"subnets":[{"name":"fozippy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/virtualNetworks/fozippy98/subnets/fozippy98","etag":"W/\"1491f1a5-4ddb-43ee-a981-e3d576b97659\"","properties":{"provisioningState":"Succeeded","addressPrefix":"192.168.1.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/0/networkInterfaces/fozippy98/ipConfigurations/fozippy98"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/3/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vmss1VNET","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/virtualNetworks/vmss1VNET","etag":"W/\"14edd799-2b8c-46bd-9fc0-cce703b6f554\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"85087d8d-1c2e-4659-8ae5-248d609e07bd","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vmss1Subnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/virtualNetworks/vmss1VNET/subnets/vmss1Subnet","etag":"W/\"14edd799-2b8c-46bd-9fc0-cce703b6f554\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/2/networkInterfaces/vmss249baNic/ipConfigurations/vmss249baIPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/3/networkInterfaces/vmss249baNic/ipConfigurations/vmss249baIPConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"storagerule","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/storagerule","etag":"W/\"892fd56f-6d7b-4131-a886-2ebdf25c71ab\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"1b917d9e-2206-4172-abe3-9d1b328453d7","addressSpace":{"addressPrefixes":["10.4.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/storagerule/subnets/default","etag":"W/\"892fd56f-6d7b-4131-a886-2ebdf25c71ab\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.4.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638/ipConfigurations/ipconfig1"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359/ipConfigurations/ipconfig1"}],"serviceEndpoints":[{"provisioningState":"Succeeded","service":"Microsoft.Storage","locations":["eastus","westus"]}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"testzuh","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/testzuh","etag":"W/\"da384904-b968-4599-b4cb-8edc49bf4e8a\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"5c4d3ad3-5ccb-497f-9d7d-179fd1ab28bf","addressSpace":{"addressPrefixes":["10.3.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/testzuh/subnets/default","etag":"W/\"da384904-b968-4599-b4cb-8edc49bf4e8a\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.3.0.0/24","applicationGatewayIPConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/applicationGateways/aaaaa/gatewayIPConfigurations/appGatewayIpConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"zuh-vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuh-vnet","etag":"W/\"a3e70c32-eb86-48d6-b0d5-31428a1f0a16\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"5bd58890-46ce-4785-9445-b3092a02abee","addressSpace":{"addressPrefixes":["10.2.0.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuh-vnet/subnets/default","etag":"W/\"a3e70c32-eb86-48d6-b0d5-31428a1f0a16\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"jlrg1vnet623","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1vnet623","etag":"W/\"cd12f2fe-ad80-400d-a5b9-6ca50f8b5285\"","type":"Microsoft.Network/virtualNetworks","location":"eastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"4937c1e9-9025-439d-959a-a6842c82e584","addressSpace":{"addressPrefixes":["10.2.4.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1vnet623/subnets/default","etag":"W/\"cd12f2fe-ad80-400d-a5b9-6ca50f8b5285\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.4.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"fengtestvnet658","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/fengtestvnet658","etag":"W/\"95c669ab-216d-4a5c-8332-179e1c55580b\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"f0e2e6ce-894a-4958-87d4-1ff6ba4c3a6e","addressSpace":{"addressPrefixes":["10.2.7.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/fengtestvnet658/subnets/default","etag":"W/\"95c669ab-216d-4a5c-8332-179e1c55580b\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.7.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-ubuntu388/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"jlrg1-vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1-vnet","etag":"W/\"fd93565e-45f8-41a4-b108-85b595f7cecf\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9dfeb5f2-adef-408a-9d3c-746fcb42a757","addressSpace":{"addressPrefixes":["10.2.2.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1-vnet/subnets/default","etag":"W/\"fd93565e-45f8-41a4-b108-85b595f7cecf\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.2.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"jlwvmrg-vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/virtualNetworks/jlwvmrg-vnet","etag":"W/\"a27b7970-2d69-4098-9048-2ccd23db1de2\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"b791b303-d438-45e1-a31b-d8e8ba6897ff","addressSpace":{"addressPrefixes":["10.2.5.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/virtualNetworks/jlwvmrg-vnet/subnets/default","etag":"W/\"a27b7970-2d69-4098-9048-2ccd23db1de2\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.5.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"yugangw1VNET","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/virtualNetworks/yugangw1VNET","etag":"W/\"17e634f3-ad31-4ec1-b0b8-a77a9a1ad7df\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"19020449-b774-4b76-940d-d2488be0bc4a","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"yugangw1Subnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/virtualNetworks/yugangw1VNET/subnets/yugangw1Subnet","etag":"W/\"17e634f3-ad31-4ec1-b0b8-a77a9a1ad7df\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw1VMNic/ipConfigurations/ipconfigyugangw1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"zuhvnet584","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet584","etag":"W/\"9c934546-3720-428f-9e3a-786b4c5a7b2f\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"b6d3cf11-df2a-4b02-97f0-6c8dfa8dba3d","addressSpace":{"addressPrefixes":["10.2.1.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet584/subnets/default","etag":"W/\"9c934546-3720-428f-9e3a-786b4c5a7b2f\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.1.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1","etag":"W/\"5880e151-6c6e-42b3-92df-bbfb7147cf43\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d7c5b183-ce82-4303-92ae-8d61a645f08a","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":[]},"subnets":[{"name":"subnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1","etag":"W/\"5880e151-6c6e-42b3-92df-bbfb7147cf43\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/lks1.nic.7f9003f5-5e86-42b9-9979-80a9797cf484/ipConfigurations/lks1_ipconfig_0"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/privateLinkServices/lks1/ipConfigurations/lks1_ipconfig_0"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Disabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"subnet2","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet2","etag":"W/\"5880e151-6c6e-42b3-92df-bbfb7147cf43\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.2.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/pe1.nic.42302fcd-0ffa-4e8d-8094-9f06c8639a3e/ipConfigurations/privateEndpointIpConfig"}],"privateEndpoints":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/privateEndpoints/pe1"}],"delegations":[],"purpose":"PrivateEndpoints","privateEndpointNetworkPolicies":"Disabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"test_vm1VNET","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/virtualNetworks/test_vm1VNET","etag":"W/\"7b1a9ab9-3c77-4ca0-a64b-569151f29774\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"12e2f10b-184b-40b6-a11a-3dc67162e882","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"test_vm1Subnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/virtualNetworks/test_vm1VNET/subnets/test_vm1Subnet","etag":"W/\"7b1a9ab9-3c77-4ca0-a64b-569151f29774\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm1VMNic/ipConfigurations/ipconfigtest_vm1"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm2VMNic/ipConfigurations/ipconfigtest_vm2"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnettest","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"069414bc-bd93-47a1-976e-2e51578a2c72","addressSpace":{"addressPrefixes":["10.1.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/default","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/networkInterfaces/sdfsdfsdf.nic.483f3d12-3ba8-4789-92dd-b7ed9c4d43db/ipConfigurations/sdfsdfsdf_ipconfig_0"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/privateLinkServices/sdfsdfsdf/ipConfigurations/sdfsdfsdf_ipconfig_0"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Disabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"GatewaySubnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/GatewaySubnet","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.3.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"test1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/test1","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.1.0/24","serviceEndpoints":[],"delegations":[],"privateEndpointNetworkPolicies":"Disabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"test2","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/test2","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.2.0/24","serviceEndpoints":[],"delegations":[],"purpose":"PrivateEndpoints","privateEndpointNetworkPolicies":"Disabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"test3","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/test3","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.4.0/24","serviceEndpoints":[],"delegations":[],"purpose":"PrivateEndpoints","privateEndpointNetworkPolicies":"Disabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"test4","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/test4","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.5.0/24","serviceEndpoints":[],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Disabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/vnet1","etag":"W/\"cdf55d73-7582-425a-bdd1-5383e2daba61\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"c946fed5-e511-4060-b29e-9d317d552d8e","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":[]},"subnets":[{"name":"subnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1","etag":"W/\"cdf55d73-7582-425a-bdd1-5383e2daba61\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"zuhvnet370","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet370","etag":"W/\"1e1b4ae5-022a-475e-969a-f96339c8648e\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"2c951b45-735f-4cf6-bb8a-de4095665900","addressSpace":{"addressPrefixes":["10.2.3.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet370/subnets/default","etag":"W/\"1e1b4ae5-022a-475e-969a-f96339c8648e\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.3.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285/ipConfigurations/ipconfig1"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"testavrdfv","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh2/providers/Microsoft.Network/virtualNetworks/testavrdfv","etag":"W/\"3f7e69a9-676c-4a01-8627-056ac12189cf\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"a1dfe155-c47d-4e06-be55-a60785e40051","addressSpace":{"addressPrefixes":["10.8.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh2/providers/Microsoft.Network/virtualNetworks/testavrdfv/subnets/default","etag":"W/\"3f7e69a9-676c-4a01-8627-056ac12189cf\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.8.0.0/24","serviceEndpoints":[{"provisioningState":"Succeeded","service":"Microsoft.Storage","locations":["centralus","eastus2"]}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vm-storage-sku-testVNET","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/virtualNetworks/vm-storage-sku-testVNET","etag":"W/\"8df6771f-81e1-4a5c-96c2-15d36dd1cfea\"","type":"Microsoft.Network/virtualNetworks","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"570cea8a-c239-4c97-8da8-838620cbb9d3","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vm-storage-sku-testSubnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/virtualNetworks/vm-storage-sku-testVNET/subnets/vm-storage-sku-testSubnet","etag":"W/\"8df6771f-81e1-4a5c-96c2-15d36dd1cfea\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkInterfaces/vm-storage-sku-testVMNic/ipConfigurations/ipconfigvm-storage-sku-test"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vm-ultrassdVNET","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/virtualNetworks/vm-ultrassdVNET","etag":"W/\"4a7d1fdf-5c9b-4cce-8152-ecc0316bccd7\"","type":"Microsoft.Network/virtualNetworks","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"98206c04-978f-4eff-80aa-d810edd68151","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vm-ultrassdSubnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/virtualNetworks/vm-ultrassdVNET/subnets/vm-ultrassdSubnet","etag":"W/\"4a7d1fdf-5c9b-4cce-8152-ecc0316bccd7\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/0/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/1/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/2/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/3/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vmss0VNET","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/virtualNetworks/vmss0VNET","etag":"W/\"7481b1e0-d5c8-494c-bee2-d6710a524917\"","type":"Microsoft.Network/virtualNetworks","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d50bd84b-f9c9-4a3b-97b5-c3f0e078dade","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vmss0Subnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/virtualNetworks/vmss0VNET/subnets/vmss0Subnet","etag":"W/\"7481b1e0-d5c8-494c-bee2-d6710a524917\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/0/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/1/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/2/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/3/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"fooziipy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/virtualNetworks/fooziipy98","etag":"W/\"02e6c4d1-dc43-4614-b7f7-65a9a5e9de84\"","type":"Microsoft.Network/virtualNetworks","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"96537f60-9ee3-4e56-bbb4-e622048d764d","addressSpace":{"addressPrefixes":["192.168.0.0/16"]},"subnets":[{"name":"fooziipy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/virtualNetworks/fooziipy98/subnets/fooziipy98","etag":"W/\"02e6c4d1-dc43-4614-b7f7-65a9a5e9de84\"","properties":{"provisioningState":"Succeeded","addressPrefix":"192.168.1.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98/ipConfigurations/fooziipy98"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"fooziipy99","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/virtualNetworks/fooziipy99","etag":"W/\"39477a34-d029-470a-91ad-975873313a30\"","type":"Microsoft.Network/virtualNetworks","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"deea6a38-de92-4d49-82d6-deb59d695873","addressSpace":{"addressPrefixes":["192.168.0.0/16"]},"subnets":[{"name":"fooziipy99","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/virtualNetworks/fooziipy99/subnets/fooziipy99","etag":"W/\"39477a34-d029-470a-91ad-975873313a30\"","properties":{"provisioningState":"Succeeded","addressPrefix":"192.168.1.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99/ipConfigurations/fooziipy99"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"sdk-vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/virtualNetworks/sdk-vnet","etag":"W/\"b277f4c3-62f6-411f-b1e3-80ca12a5ea9c\"","type":"Microsoft.Network/virtualNetworks","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"7637a963-71f9-4aed-905b-8c0f4aed45b9","addressSpace":{"addressPrefixes":["10.6.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/virtualNetworks/sdk-vnet/subnets/default","etag":"W/\"b277f4c3-62f6-411f-b1e3-80ca12a5ea9c\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.6.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/networkInterfaces/anf-sdk-vnet-nic-VLB5RZ/ipConfigurations/ipconfig1"}],"serviceEndpoints":[],"delegations":[{"name":"514c6b63b2df4757ba448bd8f44d10a5","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/virtualNetworks/sdk-vnet/subnets/default/delegations/514c6b63b2df4757ba448bd8f44d10a5","etag":"W/\"b277f4c3-62f6-411f-b1e3-80ca12a5ea9c\"","properties":{"provisioningState":"Succeeded","serviceName":"Microsoft.Netapp/volumes","actions":["Microsoft.Network/networkinterfaces/*","Microsoft.Network/virtualNetworks/subnets/join/action"]},"type":"Microsoft.Network/virtualNetworks/subnets/delegations"}],"purpose":"HostedWorkloads","privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pytest-vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg/providers/Microsoft.Network/virtualNetworks/pytest-vnet","etag":"W/\"aa662f30-f19c-4f27-bd8a-2fd7a22c04fe\"","type":"Microsoft.Network/virtualNetworks","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"27e8ce4b-11fc-4bb5-a8de-c9425c01900c","addressSpace":{"addressPrefixes":["10.5.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg/providers/Microsoft.Network/virtualNetworks/pytest-vnet/subnets/default","etag":"W/\"aa662f30-f19c-4f27-bd8a-2fd7a22c04fe\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.5.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}}]}' headers: cache-control: - no-cache content-length: - - '73226' + - '66402' content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:39:06 GMT + - Tue, 22 Oct 2019 06:44:58 GMT expires: - '-1' pragma: @@ -437,13 +437,13 @@ interactions: x-content-type-options: - nosniff x-ms-original-request-ids: - - dd47f8d3-a605-40f3-93ee-5bdd6c381eb1 - - e04b6c80-619d-4005-947e-910da153f9ad - - bd3314ea-6756-4c48-ad09-008bafe5f8e9 - - 2946431f-aa67-4723-aed6-bef664c54e3f - - 0799619c-f8e3-43ea-810f-5dc74391d93a - - daee3fea-9758-4728-852f-99c8ab70e3e4 - - 0dc40b9c-a9de-439a-a428-85723644d49a + - 5c07e25e-5e10-4f22-8455-29960cbf2df1 + - 1935cafa-8d48-4000-a324-45127dbfc2de + - 6cef0ca2-3a47-4d54-b43a-287da7a1dcbd + - 922d1538-5a7c-40ec-88c7-2a2724c51c9a + - 1e43b5ed-4deb-43b7-b12e-3251f2d9a1ba + - a53c01a1-1398-4fda-b298-756bacc5b3e0 + - 3961d4c1-8fbc-4099-9b54-96cd07dc0c44 status: code: 200 message: OK @@ -460,27 +460,27 @@ interactions: - '0' User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python accept-language: - en-US method: DELETE - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2019-09-01 response: body: string: '' headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/85254850-b20a-4af8-9ea7-6a70e3962fd6?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/1ddcf9b9-fbe0-4a46-b26f-3060a7be59fa?api-version=2019-09-01 cache-control: - no-cache content-length: - '0' date: - - Tue, 08 Oct 2019 12:39:06 GMT + - Tue, 22 Oct 2019 06:44:59 GMT expires: - '-1' location: - - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/85254850-b20a-4af8-9ea7-6a70e3962fd6?api-version=2019-08-01 + - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operationResults/1ddcf9b9-fbe0-4a46-b26f-3060a7be59fa?api-version=2019-09-01 pragma: - no-cache server: @@ -491,7 +491,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 15c89096-56f1-4d4c-b659-88fe00a064a9 + - ee604d78-0ac9-4d4c-9ee6-7f513819c447 x-ms-ratelimit-remaining-subscription-deletes: - '14999' status: @@ -508,9 +508,9 @@ interactions: - keep-alive User-Agent: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 - msrest_azure/0.4.34 azure-mgmt-network/5.1.0 Azure-SDK-For-Python + msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/85254850-b20a-4af8-9ea7-6a70e3962fd6?api-version=2019-08-01 + uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/1ddcf9b9-fbe0-4a46-b26f-3060a7be59fa?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -522,7 +522,7 @@ interactions: content-type: - application/json; charset=utf-8 date: - - Tue, 08 Oct 2019 12:39:17 GMT + - Tue, 22 Oct 2019 06:45:10 GMT expires: - '-1' pragma: @@ -539,7 +539,7 @@ interactions: x-content-type-options: - nosniff x-ms-arm-service-request-id: - - 930a0955-9b9a-4894-8349-102478b0528a + - 0f9e26e0-b023-42a2-8d3d-1fd87ef380ec status: code: 200 message: OK From 6ff4930aa661147d4ce5a34e5c511e43e6e94eb9 Mon Sep 17 00:00:00 2001 From: Feng Zhou Date: Tue, 22 Oct 2019 07:27:25 +0000 Subject: [PATCH 2/3] changelog --- sdk/network/azure-mgmt-network/HISTORY.rst | 51 +++++++++++++++++++ .../azure/mgmt/network/version.py | 2 +- 2 files changed, 52 insertions(+), 1 deletion(-) diff --git a/sdk/network/azure-mgmt-network/HISTORY.rst b/sdk/network/azure-mgmt-network/HISTORY.rst index f048420886ac..994b7d7b9b0a 100644 --- a/sdk/network/azure-mgmt-network/HISTORY.rst +++ b/sdk/network/azure-mgmt-network/HISTORY.rst @@ -3,6 +3,57 @@ Release History =============== +7.0.0 (2019-10-22) +++++++++++++++++++ + +**Features** + +- Model ApplicationGatewayHttpListener has a new parameter hostnames +- Model ApplicationGatewayHttpListener has a new parameter firewall_policy +- Model ApplicationGatewayPathRule has a new parameter firewall_policy +- Model P2SVpnGateway has a new parameter p2_sconnection_configurations +- Model VpnServerConfiguration has a new parameter vpn_client_root_certificates +- Model VpnServerConfiguration has a new parameter radius_server_root_certificates +- Model VpnServerConfiguration has a new parameter radius_client_root_certificates +- Model VpnServerConfiguration has a new parameter vpn_client_revoked_certificates +- Model ExpressRouteConnection has a new parameter enable_internet_security +- Model AzureFirewallApplicationRule has a new parameter source_ip_groups +- Model WebApplicationFirewallPolicy has a new parameter path_based_rules +- Model WebApplicationFirewallPolicy has a new parameter http_listeners +- Model PrivateLinkService has a new parameter enable_proxy_protocol +- Model AzureFirewallNetworkRule has a new parameter destination_ip_groups +- Model AzureFirewallNetworkRule has a new parameter source_ip_groups +- Model AzureFirewallNetworkRule has a new parameter destination_fqdns +- Model VirtualWAN has a new parameter virtual_wan_type +- Model VirtualHub has a new parameter sku +- Model VirtualHub has a new parameter virtual_hub_route_table_v2s +- Model AzureFirewallNatRule has a new parameter translated_fqdn +- Model AzureFirewallNatRule has a new parameter source_ip_groups +- Model PrivateEndpointConnection has a new parameter link_identifier +- Model AzureFirewall has a new parameter additional_properties +- Added operation RouteFiltersOperations.update_tags +- Added operation ServiceEndpointPoliciesOperations.update_tags +- Added operation PrivateLinkServicesOperations.get_private_endpoint_connection +- Added operation PrivateLinkServicesOperations.list_private_endpoint_connections +- Added operation group VirtualHubRouteTableV2sOperations +- Added operation group IpGroupsOperations + +**Breaking changes** + +- Operation AzureFirewallsOperations.update_tags has a new signature +- Operation ExpressRouteCircuitAuthorizationsOperations.create_or_update has a new signature +- Model P2SVpnGateway no longer has parameter p2s_connection_configurations +- Model VpnServerConfiguration no longer has parameter vpn_server_config_vpn_client_root_certificates +- Model VpnServerConfiguration no longer has parameter vpn_server_config_radius_client_root_certificates +- Model VpnServerConfiguration no longer has parameter vpn_server_config_vpn_client_revoked_certificates +- Model VpnServerConfiguration no longer has parameter vpn_server_config_radius_server_root_certificates +- Removed operation RouteFiltersOperations.update +- Removed operation VirtualRoutersOperations.update +- Removed operation RouteFilterRulesOperations.update +- Removed operation VirtualRouterPeeringsOperations.update +- Removed operation FirewallPoliciesOperations.update_tags +- Removed operation ServiceEndpointPoliciesOperations.update + 6.0.0 (2019-10-09) ++++++++++++++++++ diff --git a/sdk/network/azure-mgmt-network/azure/mgmt/network/version.py b/sdk/network/azure-mgmt-network/azure/mgmt/network/version.py index d15d41e4399e..99fc271627d8 100644 --- a/sdk/network/azure-mgmt-network/azure/mgmt/network/version.py +++ b/sdk/network/azure-mgmt-network/azure/mgmt/network/version.py @@ -5,4 +5,4 @@ # license information. # -------------------------------------------------------------------------- -VERSION = "6.0.0" +VERSION = "7.0.0" From 8d7d585042665f4e7689f59a0afe3d51ce6dc6de Mon Sep 17 00:00:00 2001 From: Feng Zhou Date: Wed, 23 Oct 2019 03:02:31 +0000 Subject: [PATCH 3/3] replace subscription id in recordings --- ...st_mgmt_network.test_dns_availability.yaml | 2 +- ....test_express_route_service_providers.yaml | 2 +- ...test_mgmt_network.test_load_balancers.yaml | 192 ++++---- ...t_network.test_network_interface_card.yaml | 74 +-- ..._network.test_network_security_groups.yaml | 446 ++++++++--------- ...mgmt_network.test_public_ip_addresses.yaml | 34 +- .../test_mgmt_network.test_routes.yaml | 60 +-- .../test_mgmt_network.test_subnets.yaml | 54 +-- .../test_mgmt_network.test_usages.yaml | 80 ++-- ...st_virtual_network_gateway_operations.yaml | 450 +++++++++--------- ...st_mgmt_network.test_virtual_networks.yaml | 50 +- 11 files changed, 722 insertions(+), 722 deletions(-) diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_dns_availability.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_dns_availability.yaml index d3f0c7c22b7d..83a58d589ffb 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_dns_availability.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_dns_availability.yaml @@ -14,7 +14,7 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/CheckDnsNameAvailability?domainNameLabel=pydomain&api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/CheckDnsNameAvailability?domainNameLabel=pydomain&api-version=2019-09-01 response: body: string: "{\r\n \"available\": true\r\n}" diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_express_route_service_providers.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_express_route_service_providers.yaml index 1e67b4becef5..90978cbbe97e 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_express_route_service_providers.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_express_route_service_providers.yaml @@ -14,7 +14,7 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/expressRouteServiceProviders?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/expressRouteServiceProviders?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"ARM Test Provider\"\ diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_load_balancers.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_load_balancers.yaml index be92dc333d80..9ad6763d83cc 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_load_balancers.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_load_balancers.yaml @@ -19,10 +19,10 @@ interactions: accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyipname239e0f35\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ + string: "{\r\n \"name\": \"pyipname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ ,\r\n \"etag\": \"W/\\\"27dc2466-212b-4232-9abd-963ae7c4ac6f\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Updating\",\r\n \"resourceGuid\": \"de2e8db6-131b-40e4-b26f-3ed4a3bf65d4\"\ @@ -32,7 +32,7 @@ interactions: : {\r\n \"name\": \"Basic\",\r\n \"tier\": \"Regional\"\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/cbe321a2-9785-431f-bcc1-0ee9cd8027d4?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/cbe321a2-9785-431f-bcc1-0ee9cd8027d4?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -72,7 +72,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/cbe321a2-9785-431f-bcc1-0ee9cd8027d4?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/cbe321a2-9785-431f-bcc1-0ee9cd8027d4?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -118,10 +118,10 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyipname239e0f35\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ + string: "{\r\n \"name\": \"pyipname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ ,\r\n \"etag\": \"W/\\\"d1d9f467-c0a0-4b3b-be21-46dd9ffd74cf\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"resourceGuid\": \"de2e8db6-131b-40e4-b26f-3ed4a3bf65d4\"\ @@ -163,19 +163,19 @@ interactions: message: OK - request: body: '{"location": "westus", "properties": {"frontendIPConfigurations": [{"properties": - {"privateIPAllocationMethod": "Dynamic", "publicIPAddress": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35"}}, + {"privateIPAllocationMethod": "Dynamic", "publicIPAddress": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35"}}, "name": "pyfipname239e0f35"}], "backendAddressPools": [{"name": "pyapname239e0f35"}], - "loadBalancingRules": [{"properties": {"frontendIPConfiguration": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"}, - "backendAddressPool": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35"}, - "probe": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35"}, + "loadBalancingRules": [{"properties": {"frontendIPConfiguration": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"}, + "backendAddressPool": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35"}, + "probe": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35"}, "protocol": "tcp", "loadDistribution": "Default", "frontendPort": 80, "backendPort": 80, "idleTimeoutInMinutes": 4, "enableFloatingIP": false}, "name": "azure-sample-lb-rule"}], "probes": [{"properties": {"protocol": "Http", "port": 80, "intervalInSeconds": 15, "numberOfProbes": 4, "requestPath": "healthprobe.aspx"}, "name": "pyprobename239e0f35"}], - "inboundNatRules": [{"properties": {"frontendIPConfiguration": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"}, + "inboundNatRules": [{"properties": {"frontendIPConfiguration": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"}, "protocol": "tcp", "frontendPort": 21, "backendPort": 22, "idleTimeoutInMinutes": 4, "enableFloatingIP": false}, "name": "azure-sample-netrule1"}, {"properties": - {"frontendIPConfiguration": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"}, + {"frontendIPConfiguration": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"}, "protocol": "tcp", "frontendPort": 23, "backendPort": 22, "idleTimeoutInMinutes": 4, "enableFloatingIP": false}, "name": "azure-sample-netrule2"}]}}' headers: @@ -195,74 +195,74 @@ interactions: accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pylbname239e0f35\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ + string: "{\r\n \"name\": \"pylbname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/loadBalancers\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ \ \"resourceGuid\": \"3d2dc17e-2603-4a85-a584-76635ab53fbc\",\r\n \"\ frontendIPConfigurations\": [\r\n {\r\n \"name\": \"pyfipname239e0f35\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/frontendIPConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAllocationMethod\": \"Dynamic\",\r\n \"\ - publicIPAddress\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ + publicIPAddress\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ \r\n },\r\n \"loadBalancingRules\": [\r\n {\r\ - \n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ],\r\n \"inboundNatRules\": [\r\n\ - \ {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ - \r\n },\r\n {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + \ {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + \r\n },\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ \r\n }\r\n ],\r\n \"privateIPAddressVersion\"\ : \"IPv4\"\r\n }\r\n }\r\n ],\r\n \"backendAddressPools\"\ : [\r\n {\r\n \"name\": \"pyapname239e0f35\",\r\n \"id\"\ - : \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"loadBalancingRules\": [\r\n {\r\n \ - \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/loadBalancers/backendAddressPools\"\ \r\n }\r\n ],\r\n \"loadBalancingRules\": [\r\n {\r\n \ - \ \"name\": \"azure-sample-lb-rule\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \ \"name\": \"azure-sample-lb-rule\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/loadBalancingRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 80,\r\n \"backendPort\"\ : 80,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ : false,\r\n \"enableTcpReset\": false,\r\n \"allowBackendPortConflict\"\ : false,\r\n \"loadDistribution\": \"Default\",\r\n \"backendAddressPool\"\ - : {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ - \r\n },\r\n \"probe\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ + : {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + \r\n },\r\n \"probe\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ \r\n }\r\n }\r\n }\r\n ],\r\n \"probes\": [\r\n\ \ {\r\n \"name\": \"pyprobename239e0f35\",\r\n \"id\":\ - \ \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ + \ \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"protocol\": \"Http\",\r\n \"port\": 80,\r\n \ \ \"requestPath\": \"healthprobe.aspx\",\r\n \"intervalInSeconds\"\ : 15,\r\n \"numberOfProbes\": 4,\r\n \"loadBalancingRules\"\ - : [\r\n {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + : [\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/loadBalancers/probes\"\ \r\n }\r\n ],\r\n \"inboundNatRules\": [\r\n {\r\n \ - \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 21,\r\n \"backendPort\"\ : 22,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ : false,\r\n \"enableTcpReset\": false,\r\n \"allowBackendPortConflict\"\ : false\r\n }\r\n },\r\n {\r\n \"name\": \"azure-sample-netrule2\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 23,\r\n \"backendPort\"\ : 22,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ @@ -272,7 +272,7 @@ interactions: \r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/593273e7-b9f7-46fb-b436-775579dd8fb1?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/593273e7-b9f7-46fb-b436-775579dd8fb1?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -312,7 +312,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/593273e7-b9f7-46fb-b436-775579dd8fb1?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/593273e7-b9f7-46fb-b436-775579dd8fb1?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -358,74 +358,74 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pylbname239e0f35\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ + string: "{\r\n \"name\": \"pylbname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/loadBalancers\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ \ \"resourceGuid\": \"3d2dc17e-2603-4a85-a584-76635ab53fbc\",\r\n \"\ frontendIPConfigurations\": [\r\n {\r\n \"name\": \"pyfipname239e0f35\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/frontendIPConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAllocationMethod\": \"Dynamic\",\r\n \"\ - publicIPAddress\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ + publicIPAddress\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ \r\n },\r\n \"loadBalancingRules\": [\r\n {\r\ - \n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ],\r\n \"inboundNatRules\": [\r\n\ - \ {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ - \r\n },\r\n {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + \ {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + \r\n },\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ \r\n }\r\n ],\r\n \"privateIPAddressVersion\"\ : \"IPv4\"\r\n }\r\n }\r\n ],\r\n \"backendAddressPools\"\ : [\r\n {\r\n \"name\": \"pyapname239e0f35\",\r\n \"id\"\ - : \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"loadBalancingRules\": [\r\n {\r\n \ - \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/loadBalancers/backendAddressPools\"\ \r\n }\r\n ],\r\n \"loadBalancingRules\": [\r\n {\r\n \ - \ \"name\": \"azure-sample-lb-rule\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \ \"name\": \"azure-sample-lb-rule\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/loadBalancingRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 80,\r\n \"backendPort\"\ : 80,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ : false,\r\n \"enableTcpReset\": false,\r\n \"allowBackendPortConflict\"\ : false,\r\n \"loadDistribution\": \"Default\",\r\n \"backendAddressPool\"\ - : {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ - \r\n },\r\n \"probe\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ + : {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + \r\n },\r\n \"probe\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ \r\n }\r\n }\r\n }\r\n ],\r\n \"probes\": [\r\n\ \ {\r\n \"name\": \"pyprobename239e0f35\",\r\n \"id\":\ - \ \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ + \ \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"protocol\": \"Http\",\r\n \"port\": 80,\r\n \ \ \"requestPath\": \"healthprobe.aspx\",\r\n \"intervalInSeconds\"\ : 15,\r\n \"numberOfProbes\": 4,\r\n \"loadBalancingRules\"\ - : [\r\n {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + : [\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/loadBalancers/probes\"\ \r\n }\r\n ],\r\n \"inboundNatRules\": [\r\n {\r\n \ - \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 21,\r\n \"backendPort\"\ : 22,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ : false,\r\n \"enableTcpReset\": false,\r\n \"allowBackendPortConflict\"\ : false\r\n }\r\n },\r\n {\r\n \"name\": \"azure-sample-netrule2\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 23,\r\n \"backendPort\"\ : 22,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ @@ -479,74 +479,74 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pylbname239e0f35\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ + string: "{\r\n \"name\": \"pylbname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/loadBalancers\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ \ \"resourceGuid\": \"3d2dc17e-2603-4a85-a584-76635ab53fbc\",\r\n \"\ frontendIPConfigurations\": [\r\n {\r\n \"name\": \"pyfipname239e0f35\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/frontendIPConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAllocationMethod\": \"Dynamic\",\r\n \"\ - publicIPAddress\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ + publicIPAddress\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ \r\n },\r\n \"loadBalancingRules\": [\r\n {\r\ - \n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ],\r\n \"inboundNatRules\": [\r\n\ - \ {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ - \r\n },\r\n {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + \ {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + \r\n },\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ \r\n }\r\n ],\r\n \"privateIPAddressVersion\"\ : \"IPv4\"\r\n }\r\n }\r\n ],\r\n \"backendAddressPools\"\ : [\r\n {\r\n \"name\": \"pyapname239e0f35\",\r\n \"id\"\ - : \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"loadBalancingRules\": [\r\n {\r\n \ - \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/loadBalancers/backendAddressPools\"\ \r\n }\r\n ],\r\n \"loadBalancingRules\": [\r\n {\r\n \ - \ \"name\": \"azure-sample-lb-rule\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \ \"name\": \"azure-sample-lb-rule\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/loadBalancingRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 80,\r\n \"backendPort\"\ : 80,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ : false,\r\n \"enableTcpReset\": false,\r\n \"allowBackendPortConflict\"\ : false,\r\n \"loadDistribution\": \"Default\",\r\n \"backendAddressPool\"\ - : {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ - \r\n },\r\n \"probe\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ + : {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + \r\n },\r\n \"probe\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ \r\n }\r\n }\r\n }\r\n ],\r\n \"probes\": [\r\n\ \ {\r\n \"name\": \"pyprobename239e0f35\",\r\n \"id\":\ - \ \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ + \ \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"protocol\": \"Http\",\r\n \"port\": 80,\r\n \ \ \"requestPath\": \"healthprobe.aspx\",\r\n \"intervalInSeconds\"\ : 15,\r\n \"numberOfProbes\": 4,\r\n \"loadBalancingRules\"\ - : [\r\n {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + : [\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ]\r\n },\r\n \"type\": \"Microsoft.Network/loadBalancers/probes\"\ \r\n }\r\n ],\r\n \"inboundNatRules\": [\r\n {\r\n \ - \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 21,\r\n \"backendPort\"\ : 22,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ : false,\r\n \"enableTcpReset\": false,\r\n \"allowBackendPortConflict\"\ : false\r\n }\r\n },\r\n {\r\n \"name\": \"azure-sample-netrule2\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ - ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + ,\r\n \"frontendIPConfiguration\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 23,\r\n \"backendPort\"\ : 22,\r\n \"enableFloatingIP\": false,\r\n \"idleTimeoutInMinutes\"\ : 4,\r\n \"protocol\": \"Tcp\",\r\n \"enableDestinationServiceEndpoint\"\ @@ -600,10 +600,10 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/loadBalancers?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/loadBalancers?api-version=2019-09-01 response: body: - string: '{"value":[{"name":"vmss1LB","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB","etag":"W/\"9a384036-63c8-4f96-808b-4821b13b1a47\"","type":"Microsoft.Network/loadBalancers","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d8256b75-90ff-4934-abc6-8972d13b010d","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"9a384036-63c8-4f96-808b-4821b13b1a47\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP"},"inboundNatPools":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vmss1LBBEPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB/backendAddressPools/vmss1LBBEPool","etag":"W/\"9a384036-63c8-4f96-808b-4821b13b1a47\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"inboundNatPools":[{"name":"vmss1LBNatPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool","etag":"W/\"9a384036-63c8-4f96-808b-4821b13b1a47\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"asdfLB","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB","etag":"W/\"1d7b95ed-66b3-4224-88d8-74316c72a760\"","type":"Microsoft.Network/loadBalancers","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"5bd3ae17-f6a1-4786-85ba-cd442e1af9c1","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"1d7b95ed-66b3-4224-88d8-74316c72a760\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/asdfLBPublicIP"},"inboundNatPools":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/inboundNatPools/asdfLBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"asdfLBBEPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/backendAddressPools/asdfLBBEPool","etag":"W/\"1d7b95ed-66b3-4224-88d8-74316c72a760\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"inboundNatPools":[{"name":"asdfLBNatPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/inboundNatPools/asdfLBNatPool","etag":"W/\"1d7b95ed-66b3-4224-88d8-74316c72a760\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"vm5LB","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB","etag":"W/\"b198e267-5e61-47a2-a7b9-3dafe6425ce6\"","type":"Microsoft.Network/loadBalancers","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"cc41b28b-1e12-4ea3-b2a1-d45c659bae86","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"b198e267-5e61-47a2-a7b9-3dafe6425ce6\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/vm5LBPublicIP"},"inboundNatPools":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/inboundNatPools/vm5LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vm5LBBEPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/backendAddressPools/vm5LBBEPool","etag":"W/\"b198e267-5e61-47a2-a7b9-3dafe6425ce6\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"inboundNatPools":[{"name":"vm5LBNatPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/inboundNatPools/vm5LBNatPool","etag":"W/\"b198e267-5e61-47a2-a7b9-3dafe6425ce6\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"pylbname239e0f35","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","type":"Microsoft.Network/loadBalancers","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"3d2dc17e-2603-4a85-a584-76635ab53fbc","frontendIPConfigurations":[{"name":"pyfipname239e0f35","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35"},"loadBalancingRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule"}],"inboundNatRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"pyapname239e0f35","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","properties":{"provisioningState":"Succeeded","loadBalancingRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[{"name":"azure-sample-lb-rule","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","type":"Microsoft.Network/loadBalancers/loadBalancingRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"},"frontendPort":80,"backendPort":80,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"loadDistribution":"Default","backendAddressPool":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35"},"probe":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35"}}}],"probes":[{"name":"pyprobename239e0f35","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","properties":{"provisioningState":"Succeeded","protocol":"Http","port":80,"requestPath":"healthprobe.aspx","intervalInSeconds":15,"numberOfProbes":4,"loadBalancingRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule"}]},"type":"Microsoft.Network/loadBalancers/probes"}],"inboundNatRules":[{"name":"azure-sample-netrule1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"},"frontendPort":21,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false}},{"name":"azure-sample-netrule2","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"},"frontendPort":23,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false}}],"inboundNatPools":[]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"fozippy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"924ede91-f213-4a0f-94c9-d1a17c2d09c7","frontendIPConfigurations":[{"name":"fozippy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/publicIPAddresses/fozippy98"},"loadBalancingRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/loadBalancingRules/fozippy9880"}],"inboundNatRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy983389.0"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy985985.0"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy983389.3"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy985985.3"}],"inboundNatPools":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatPools/fozippy983389"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatPools/fozippy985985"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"fozippy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/backendAddressPools/fozippy98","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/0/networkInterfaces/fozippy98/ipConfigurations/fozippy98"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/3/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}],"loadBalancingRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/loadBalancingRules/fozippy9880"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[{"name":"fozippy9880","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/loadBalancingRules/fozippy9880","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/loadBalancingRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":80,"backendPort":80,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"loadDistribution":"Default","disableOutboundSnat":false,"backendAddressPool":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/backendAddressPools/fozippy98"}}}],"probes":[],"inboundNatRules":[{"name":"fozippy983389.0","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy983389.0","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":50000,"backendPort":3389,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/0/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}}},{"name":"fozippy985985.0","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy985985.0","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":52000,"backendPort":5985,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/0/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}}},{"name":"fozippy983389.3","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy983389.3","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":50003,"backendPort":3389,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/3/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}}},{"name":"fozippy985985.3","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy985985.3","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":52003,"backendPort":5985,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/3/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}}}],"outboundRules":[],"inboundNatPools":[{"name":"fozippy983389","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatPools/fozippy983389","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50004,"backendPort":3389,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"},{"name":"fozippy985985","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatPools/fozippy985985","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":52000,"frontendPortRangeEnd":52004,"backendPort":5985,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Standard","tier":"Regional"}},{"name":"vmss1LB","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB","etag":"W/\"320c0978-30d2-42e8-a8da-5c14b479a6cd\"","type":"Microsoft.Network/loadBalancers","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f38ddc5e-493b-4dc0-b253-196c501c24f8","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"320c0978-30d2-42e8-a8da-5c14b479a6cd\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP"},"inboundNatPools":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vmss1LBBEPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/backendAddressPools/vmss1LBBEPool","etag":"W/\"320c0978-30d2-42e8-a8da-5c14b479a6cd\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"inboundNatPools":[{"name":"vmss1LBNatPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool","etag":"W/\"320c0978-30d2-42e8-a8da-5c14b479a6cd\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"vmss2LB","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB","etag":"W/\"dc52a07c-7ab0-4f78-85bf-87824b6189c5\"","type":"Microsoft.Network/loadBalancers","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d5b98044-4b26-49db-a828-7cc77a2fb65a","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"dc52a07c-7ab0-4f78-85bf-87824b6189c5\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/publicIPAddresses/vmss2LBPublicIP"},"inboundNatRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatRules/vmss2LBNatPool.2"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatRules/vmss2LBNatPool.3"}],"inboundNatPools":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatPools/vmss2LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vmss2LBBEPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/backendAddressPools/vmss2LBBEPool","etag":"W/\"dc52a07c-7ab0-4f78-85bf-87824b6189c5\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/2/networkInterfaces/vmss249baNic/ipConfigurations/vmss249baIPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/3/networkInterfaces/vmss249baNic/ipConfigurations/vmss249baIPConfig"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[{"name":"vmss2LBNatPool.2","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatRules/vmss2LBNatPool.2","etag":"W/\"dc52a07c-7ab0-4f78-85bf-87824b6189c5\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50002,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/2/networkInterfaces/vmss249baNic/ipConfigurations/vmss249baIPConfig"}}},{"name":"vmss2LBNatPool.3","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatRules/vmss2LBNatPool.3","etag":"W/\"dc52a07c-7ab0-4f78-85bf-87824b6189c5\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50003,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/3/networkInterfaces/vmss249baNic/ipConfigurations/vmss249baIPConfig"}}}],"inboundNatPools":[{"name":"vmss2LBNatPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatPools/vmss2LBNatPool","etag":"W/\"dc52a07c-7ab0-4f78-85bf-87824b6189c5\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"lb1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/loadBalancers/lb1","etag":"W/\"2a8a7756-e895-4ac5-aa83-0384620e905d\"","type":"Microsoft.Network/loadBalancers","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"4e520635-d0d8-441b-9448-3e3b2120993e","frontendIPConfigurations":[{"name":"LoadBalancerFrontEnd","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/LoadBalancerFrontEnd","etag":"W/\"2a8a7756-e895-4ac5-aa83-0384620e905d\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/publicIPAddresses/pubip1"},"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"lb1bepool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/lb1bepool","etag":"W/\"2a8a7756-e895-4ac5-aa83-0384620e905d\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"outboundRules":[],"inboundNatPools":[]},"sku":{"name":"Standard","tier":"Regional"}},{"name":"vm-ultrassdLB","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"dc0fc1f5-bffa-469f-a982-e86ad42e8c1c","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/publicIPAddresses/vm-ultrassdLBPublicIP"},"loadBalancingRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/loadBalancingRules/LBRule"}],"inboundNatRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.0"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.1"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.2"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.3"}],"inboundNatPools":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatPools/vm-ultrassdLBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vm-ultrassdLBBEPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/backendAddressPools/vm-ultrassdLBBEPool","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/0/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/1/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/2/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/3/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"}],"loadBalancingRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/loadBalancingRules/LBRule"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[{"name":"LBRule","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/loadBalancingRules/LBRule","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers/loadBalancingRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":80,"backendPort":80,"enableFloatingIP":false,"idleTimeoutInMinutes":5,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"loadDistribution":"Default","disableOutboundSnat":false,"backendAddressPool":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/backendAddressPools/vm-ultrassdLBBEPool"}}}],"probes":[],"inboundNatRules":[{"name":"vm-ultrassdLBNatPool.0","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.0","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50000,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/0/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"}}},{"name":"vm-ultrassdLBNatPool.1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.1","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50001,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/1/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"}}},{"name":"vm-ultrassdLBNatPool.2","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.2","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50002,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/2/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"}}},{"name":"vm-ultrassdLBNatPool.3","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.3","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50003,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/3/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"}}}],"outboundRules":[],"inboundNatPools":[{"name":"vm-ultrassdLBNatPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatPools/vm-ultrassdLBNatPool","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Standard","tier":"Regional"}},{"name":"vmss0LB","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","type":"Microsoft.Network/loadBalancers","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0db81372-67a5-44cc-995f-2f7977ee240e","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/publicIPAddresses/vmss0LBPublicIP"},"inboundNatRules":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.0"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.1"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.2"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.3"}],"inboundNatPools":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatPools/vmss0LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vmss0LBBEPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/backendAddressPools/vmss0LBBEPool","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/0/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/1/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/2/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/3/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[{"name":"vmss0LBNatPool.0","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.0","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50000,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/0/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"}}},{"name":"vmss0LBNatPool.1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.1","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50001,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/1/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"}}},{"name":"vmss0LBNatPool.2","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.2","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50002,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/2/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"}}},{"name":"vmss0LBNatPool.3","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.3","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50003,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/3/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"}}}],"inboundNatPools":[{"name":"vmss0LBNatPool","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatPools/vmss0LBNatPool","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}}]}' + string: '{"value":[{"name":"vmss1LB","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB","etag":"W/\"9a384036-63c8-4f96-808b-4821b13b1a47\"","type":"Microsoft.Network/loadBalancers","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d8256b75-90ff-4934-abc6-8972d13b010d","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"9a384036-63c8-4f96-808b-4821b13b1a47\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP"},"inboundNatPools":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vmss1LBBEPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB/backendAddressPools/vmss1LBBEPool","etag":"W/\"9a384036-63c8-4f96-808b-4821b13b1a47\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"inboundNatPools":[{"name":"vmss1LBNatPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool","etag":"W/\"9a384036-63c8-4f96-808b-4821b13b1a47\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"asdfLB","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB","etag":"W/\"1d7b95ed-66b3-4224-88d8-74316c72a760\"","type":"Microsoft.Network/loadBalancers","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"5bd3ae17-f6a1-4786-85ba-cd442e1af9c1","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"1d7b95ed-66b3-4224-88d8-74316c72a760\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/asdfLBPublicIP"},"inboundNatPools":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/inboundNatPools/asdfLBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"asdfLBBEPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/backendAddressPools/asdfLBBEPool","etag":"W/\"1d7b95ed-66b3-4224-88d8-74316c72a760\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"inboundNatPools":[{"name":"asdfLBNatPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/inboundNatPools/asdfLBNatPool","etag":"W/\"1d7b95ed-66b3-4224-88d8-74316c72a760\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"vm5LB","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB","etag":"W/\"b198e267-5e61-47a2-a7b9-3dafe6425ce6\"","type":"Microsoft.Network/loadBalancers","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"cc41b28b-1e12-4ea3-b2a1-d45c659bae86","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"b198e267-5e61-47a2-a7b9-3dafe6425ce6\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/vm5LBPublicIP"},"inboundNatPools":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/inboundNatPools/vm5LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vm5LBBEPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/backendAddressPools/vm5LBBEPool","etag":"W/\"b198e267-5e61-47a2-a7b9-3dafe6425ce6\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"inboundNatPools":[{"name":"vm5LBNatPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/inboundNatPools/vm5LBNatPool","etag":"W/\"b198e267-5e61-47a2-a7b9-3dafe6425ce6\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"pylbname239e0f35","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","type":"Microsoft.Network/loadBalancers","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"3d2dc17e-2603-4a85-a584-76635ab53fbc","frontendIPConfigurations":[{"name":"pyfipname239e0f35","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35"},"loadBalancingRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule"}],"inboundNatRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"pyapname239e0f35","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","properties":{"provisioningState":"Succeeded","loadBalancingRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[{"name":"azure-sample-lb-rule","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","type":"Microsoft.Network/loadBalancers/loadBalancingRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"},"frontendPort":80,"backendPort":80,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"loadDistribution":"Default","backendAddressPool":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35"},"probe":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35"}}}],"probes":[{"name":"pyprobename239e0f35","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","properties":{"provisioningState":"Succeeded","protocol":"Http","port":80,"requestPath":"healthprobe.aspx","intervalInSeconds":15,"numberOfProbes":4,"loadBalancingRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule"}]},"type":"Microsoft.Network/loadBalancers/probes"}],"inboundNatRules":[{"name":"azure-sample-netrule1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"},"frontendPort":21,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false}},{"name":"azure-sample-netrule2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2","etag":"W/\"87545c48-97db-4c27-955e-bd88c9b0a9d5\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35"},"frontendPort":23,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false}}],"inboundNatPools":[]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"fozippy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"924ede91-f213-4a0f-94c9-d1a17c2d09c7","frontendIPConfigurations":[{"name":"fozippy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/publicIPAddresses/fozippy98"},"loadBalancingRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/loadBalancingRules/fozippy9880"}],"inboundNatRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy983389.0"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy985985.0"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy983389.3"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy985985.3"}],"inboundNatPools":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatPools/fozippy983389"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatPools/fozippy985985"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"fozippy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/backendAddressPools/fozippy98","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/0/networkInterfaces/fozippy98/ipConfigurations/fozippy98"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/3/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}],"loadBalancingRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/loadBalancingRules/fozippy9880"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[{"name":"fozippy9880","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/loadBalancingRules/fozippy9880","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/loadBalancingRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":80,"backendPort":80,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"loadDistribution":"Default","disableOutboundSnat":false,"backendAddressPool":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/backendAddressPools/fozippy98"}}}],"probes":[],"inboundNatRules":[{"name":"fozippy983389.0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy983389.0","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":50000,"backendPort":3389,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/0/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}}},{"name":"fozippy985985.0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy985985.0","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":52000,"backendPort":5985,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/0/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}}},{"name":"fozippy983389.3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy983389.3","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":50003,"backendPort":3389,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/3/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}}},{"name":"fozippy985985.3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatRules/fozippy985985.3","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"},"frontendPort":52003,"backendPort":5985,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/3/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}}}],"outboundRules":[],"inboundNatPools":[{"name":"fozippy983389","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatPools/fozippy983389","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50004,"backendPort":3389,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"},{"name":"fozippy985985","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/inboundNatPools/fozippy985985","etag":"W/\"5dcb20a0-2d73-4af3-94cb-952dd569637a\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":52000,"frontendPortRangeEnd":52004,"backendPort":5985,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Standard","tier":"Regional"}},{"name":"vmss1LB","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB","etag":"W/\"320c0978-30d2-42e8-a8da-5c14b479a6cd\"","type":"Microsoft.Network/loadBalancers","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f38ddc5e-493b-4dc0-b253-196c501c24f8","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"320c0978-30d2-42e8-a8da-5c14b479a6cd\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP"},"inboundNatPools":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vmss1LBBEPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/backendAddressPools/vmss1LBBEPool","etag":"W/\"320c0978-30d2-42e8-a8da-5c14b479a6cd\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"inboundNatPools":[{"name":"vmss1LBNatPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/inboundNatPools/vmss1LBNatPool","etag":"W/\"320c0978-30d2-42e8-a8da-5c14b479a6cd\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"vmss2LB","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB","etag":"W/\"dc52a07c-7ab0-4f78-85bf-87824b6189c5\"","type":"Microsoft.Network/loadBalancers","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d5b98044-4b26-49db-a828-7cc77a2fb65a","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"dc52a07c-7ab0-4f78-85bf-87824b6189c5\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/publicIPAddresses/vmss2LBPublicIP"},"inboundNatRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatRules/vmss2LBNatPool.2"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatRules/vmss2LBNatPool.3"}],"inboundNatPools":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatPools/vmss2LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vmss2LBBEPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/backendAddressPools/vmss2LBBEPool","etag":"W/\"dc52a07c-7ab0-4f78-85bf-87824b6189c5\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/2/networkInterfaces/vmss249baNic/ipConfigurations/vmss249baIPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/3/networkInterfaces/vmss249baNic/ipConfigurations/vmss249baIPConfig"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[{"name":"vmss2LBNatPool.2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatRules/vmss2LBNatPool.2","etag":"W/\"dc52a07c-7ab0-4f78-85bf-87824b6189c5\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50002,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/2/networkInterfaces/vmss249baNic/ipConfigurations/vmss249baIPConfig"}}},{"name":"vmss2LBNatPool.3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatRules/vmss2LBNatPool.3","etag":"W/\"dc52a07c-7ab0-4f78-85bf-87824b6189c5\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50003,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/3/networkInterfaces/vmss249baNic/ipConfigurations/vmss249baIPConfig"}}}],"inboundNatPools":[{"name":"vmss2LBNatPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/inboundNatPools/vmss2LBNatPool","etag":"W/\"dc52a07c-7ab0-4f78-85bf-87824b6189c5\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}},{"name":"lb1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/loadBalancers/lb1","etag":"W/\"2a8a7756-e895-4ac5-aa83-0384620e905d\"","type":"Microsoft.Network/loadBalancers","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"4e520635-d0d8-441b-9448-3e3b2120993e","frontendIPConfigurations":[{"name":"LoadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/LoadBalancerFrontEnd","etag":"W/\"2a8a7756-e895-4ac5-aa83-0384620e905d\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/publicIPAddresses/pubip1"},"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"lb1bepool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/lb1bepool","etag":"W/\"2a8a7756-e895-4ac5-aa83-0384620e905d\"","properties":{"provisioningState":"Succeeded"},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[],"outboundRules":[],"inboundNatPools":[]},"sku":{"name":"Standard","tier":"Regional"}},{"name":"vm-ultrassdLB","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"dc0fc1f5-bffa-469f-a982-e86ad42e8c1c","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/publicIPAddresses/vm-ultrassdLBPublicIP"},"loadBalancingRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/loadBalancingRules/LBRule"}],"inboundNatRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.0"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.2"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.3"}],"inboundNatPools":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatPools/vm-ultrassdLBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vm-ultrassdLBBEPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/backendAddressPools/vm-ultrassdLBBEPool","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/0/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/1/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/2/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/3/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"}],"loadBalancingRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/loadBalancingRules/LBRule"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[{"name":"LBRule","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/loadBalancingRules/LBRule","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers/loadBalancingRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":80,"backendPort":80,"enableFloatingIP":false,"idleTimeoutInMinutes":5,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"loadDistribution":"Default","disableOutboundSnat":false,"backendAddressPool":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/backendAddressPools/vm-ultrassdLBBEPool"}}}],"probes":[],"inboundNatRules":[{"name":"vm-ultrassdLBNatPool.0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.0","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50000,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/0/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"}}},{"name":"vm-ultrassdLBNatPool.1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.1","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50001,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/1/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"}}},{"name":"vm-ultrassdLBNatPool.2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.2","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50002,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/2/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"}}},{"name":"vm-ultrassdLBNatPool.3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatRules/vm-ultrassdLBNatPool.3","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50003,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/3/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"}}}],"outboundRules":[],"inboundNatPools":[{"name":"vm-ultrassdLBNatPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/inboundNatPools/vm-ultrassdLBNatPool","etag":"W/\"2419d7a5-4136-4282-9287-44f984bfe459\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Standard","tier":"Regional"}},{"name":"vmss0LB","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","type":"Microsoft.Network/loadBalancers","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0db81372-67a5-44cc-995f-2f7977ee240e","frontendIPConfigurations":[{"name":"loadBalancerFrontEnd","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","type":"Microsoft.Network/loadBalancers/frontendIPConfigurations","properties":{"provisioningState":"Succeeded","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/publicIPAddresses/vmss0LBPublicIP"},"inboundNatRules":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.0"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.2"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.3"}],"inboundNatPools":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatPools/vmss0LBNatPool"}],"privateIPAddressVersion":"IPv4"}}],"backendAddressPools":[{"name":"vmss0LBBEPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/backendAddressPools/vmss0LBBEPool","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","properties":{"provisioningState":"Succeeded","backendIPConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/0/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/1/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/2/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/3/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"}]},"type":"Microsoft.Network/loadBalancers/backendAddressPools"}],"loadBalancingRules":[],"probes":[],"inboundNatRules":[{"name":"vmss0LBNatPool.0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.0","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50000,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/0/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"}}},{"name":"vmss0LBNatPool.1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.1","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50001,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/1/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"}}},{"name":"vmss0LBNatPool.2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.2","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50002,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/2/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"}}},{"name":"vmss0LBNatPool.3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatRules/vmss0LBNatPool.3","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","type":"Microsoft.Network/loadBalancers/inboundNatRules","properties":{"provisioningState":"Succeeded","frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd"},"frontendPort":50003,"backendPort":22,"enableFloatingIP":false,"idleTimeoutInMinutes":4,"protocol":"Tcp","enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"backendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/3/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"}}}],"inboundNatPools":[{"name":"vmss0LBNatPool","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/inboundNatPools/vmss0LBNatPool","etag":"W/\"f538a6cd-b644-4302-8f1b-1f6453515292\"","properties":{"provisioningState":"Succeeded","frontendPortRangeStart":50000,"frontendPortRangeEnd":50119,"backendPort":22,"protocol":"Tcp","idleTimeoutInMinutes":4,"enableFloatingIP":false,"enableDestinationServiceEndpoint":false,"enableTcpReset":false,"allowBackendPortConflict":false,"frontendIPConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/loadBalancers/inboundNatPools"}]},"sku":{"name":"Basic","tier":"Regional"}}]}' headers: cache-control: - no-cache @@ -646,86 +646,86 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pylbname239e0f35\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\",\r\ \n \"type\": \"Microsoft.Network/loadBalancers\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"resourceGuid\": \"3d2dc17e-2603-4a85-a584-76635ab53fbc\"\ ,\r\n \"frontendIPConfigurations\": [\r\n {\r\n \ - \ \"name\": \"pyfipname239e0f35\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + \ \"name\": \"pyfipname239e0f35\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\ \",\r\n \"type\": \"Microsoft.Network/loadBalancers/frontendIPConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"privateIPAllocationMethod\": \"Dynamic\"\ - ,\r\n \"publicIPAddress\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ + ,\r\n \"publicIPAddress\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/publicIPAddresses/pyipname239e0f35\"\ \r\n },\r\n \"loadBalancingRules\": [\r\n \ - \ {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \ {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ],\r\n \"inboundNatRules\"\ - : [\r\n {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + : [\r\n {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ \r\n },\r\n {\r\n \"id\": \"\ - /subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ \r\n }\r\n ],\r\n \"privateIPAddressVersion\"\ : \"IPv4\"\r\n }\r\n }\r\n ],\r\n \"backendAddressPools\"\ : [\r\n {\r\n \"name\": \"pyapname239e0f35\",\r\n \ - \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\ \",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"loadBalancingRules\": [\r\n \ - \ {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \ {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ]\r\n },\r\n \ \ \"type\": \"Microsoft.Network/loadBalancers/backendAddressPools\"\r\n \ \ }\r\n ],\r\n \"loadBalancingRules\": [\r\n \ \ {\r\n \"name\": \"azure-sample-lb-rule\",\r\n \"\ - id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\ \",\r\n \"type\": \"Microsoft.Network/loadBalancers/loadBalancingRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"frontendIPConfiguration\": {\r\n \ - \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 80,\r\n \ \ \"backendPort\": 80,\r\n \"enableFloatingIP\": false,\r\n\ \ \"idleTimeoutInMinutes\": 4,\r\n \"protocol\"\ : \"Tcp\",\r\n \"enableDestinationServiceEndpoint\": false,\r\ \n \"enableTcpReset\": false,\r\n \"allowBackendPortConflict\"\ : false,\r\n \"loadDistribution\": \"Default\",\r\n \ - \ \"backendAddressPool\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ + \ \"backendAddressPool\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/backendAddressPools/pyapname239e0f35\"\ \r\n },\r\n \"probe\": {\r\n \"id\"\ - : \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ + : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ \r\n }\r\n }\r\n }\r\n ],\r\n \ \ \"probes\": [\r\n {\r\n \"name\": \"pyprobename239e0f35\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/probes/pyprobename239e0f35\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\ \",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"protocol\": \"Http\",\r\n \ \ \"port\": 80,\r\n \"requestPath\": \"healthprobe.aspx\",\r\ \n \"intervalInSeconds\": 15,\r\n \"numberOfProbes\"\ : 4,\r\n \"loadBalancingRules\": [\r\n {\r\n \ - \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/loadBalancingRules/azure-sample-lb-rule\"\ \r\n }\r\n ]\r\n },\r\n \ \ \"type\": \"Microsoft.Network/loadBalancers/probes\"\r\n }\r\n\ \ ],\r\n \"inboundNatRules\": [\r\n {\r\n \ - \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ + \ \"name\": \"azure-sample-netrule1\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule1\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\ \",\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"frontendIPConfiguration\": {\r\n \ - \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 21,\r\n \ \ \"backendPort\": 22,\r\n \"enableFloatingIP\": false,\r\n\ \ \"idleTimeoutInMinutes\": 4,\r\n \"protocol\"\ : \"Tcp\",\r\n \"enableDestinationServiceEndpoint\": false,\r\ \n \"enableTcpReset\": false,\r\n \"allowBackendPortConflict\"\ : false\r\n }\r\n },\r\n {\r\n \"\ - name\": \"azure-sample-netrule2\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ + name\": \"azure-sample-netrule2\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/inboundNatRules/azure-sample-netrule2\"\ ,\r\n \"etag\": \"W/\\\"87545c48-97db-4c27-955e-bd88c9b0a9d5\\\"\ \",\r\n \"type\": \"Microsoft.Network/loadBalancers/inboundNatRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"frontendIPConfiguration\": {\r\n \ - \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35/frontendIPConfigurations/pyfipname239e0f35\"\ \r\n },\r\n \"frontendPort\": 23,\r\n \ \ \"backendPort\": 22,\r\n \"enableFloatingIP\": false,\r\n\ \ \"idleTimeoutInMinutes\": 4,\r\n \"protocol\"\ @@ -780,13 +780,13 @@ interactions: accept-language: - en-US method: DELETE - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_load_balancers239e0f35/providers/Microsoft.Network/loadBalancers/pylbname239e0f35?api-version=2019-09-01 response: body: string: '' headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/10fc03d1-6336-49d3-9471-4a5a03e2e2ad?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/10fc03d1-6336-49d3-9471-4a5a03e2e2ad?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -796,7 +796,7 @@ interactions: expires: - '-1' location: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operationResults/10fc03d1-6336-49d3-9471-4a5a03e2e2ad?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/10fc03d1-6336-49d3-9471-4a5a03e2e2ad?api-version=2019-09-01 pragma: - no-cache server: @@ -826,7 +826,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/10fc03d1-6336-49d3-9471-4a5a03e2e2ad?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/10fc03d1-6336-49d3-9471-4a5a03e2e2ad?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_interface_card.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_interface_card.yaml index 1eeb5bbefb08..c3ed9d897e88 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_interface_card.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_interface_card.yaml @@ -19,10 +19,10 @@ interactions: accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyvnetb046129e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e\"\ + string: "{\r\n \"name\": \"pyvnetb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e\"\ ,\r\n \"etag\": \"W/\\\"f47bd5d0-54d6-4a94-b550-84f0403a5bec\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ @@ -33,7 +33,7 @@ interactions: : false\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/a91597ec-13bc-43c4-a2be-f435a802999b?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a91597ec-13bc-43c4-a2be-f435a802999b?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -73,7 +73,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/a91597ec-13bc-43c4-a2be-f435a802999b?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a91597ec-13bc-43c4-a2be-f435a802999b?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -119,10 +119,10 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyvnetb046129e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e\"\ + string: "{\r\n \"name\": \"pyvnetb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e\"\ ,\r\n \"etag\": \"W/\\\"2043a502-e168-41c4-a0cf-5e849dd35dca\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ @@ -181,10 +181,10 @@ interactions: accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnetb046129e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ + string: "{\r\n \"name\": \"pysubnetb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ ,\r\n \"etag\": \"W/\\\"b4a941f2-d983-40b0-a1f9-8a405947592e\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ @@ -192,7 +192,7 @@ interactions: \n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/a492a002-7cf7-4d25-8b04-67b405788475?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a492a002-7cf7-4d25-8b04-67b405788475?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -232,7 +232,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/a492a002-7cf7-4d25-8b04-67b405788475?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/a492a002-7cf7-4d25-8b04-67b405788475?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -278,10 +278,10 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnetb046129e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ + string: "{\r\n \"name\": \"pysubnetb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ ,\r\n \"etag\": \"W/\\\"7f347546-2434-44c4-a8a7-0d4e53a5379c\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ addressPrefix\": \"10.0.0.0/24\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ @@ -320,7 +320,7 @@ interactions: message: OK - request: body: '{"location": "westus", "properties": {"ipConfigurations": [{"properties": - {"subnet": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e"}}, + {"subnet": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e"}}, "name": "MyIpConfig"}]}}' headers: Accept: @@ -339,20 +339,20 @@ interactions: accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pynicb046129e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ + string: "{\r\n \"name\": \"pynicb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ ,\r\n \"etag\": \"W/\\\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"resourceGuid\": \"fe1dbcae-6e61-446d-8a60-934d6633b35b\"\ ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\": \"MyIpConfig\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ ,\r\n \"etag\": \"W/\\\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\"\ - : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ + : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ \r\n },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\"\ : \"IPv4\"\r\n }\r\n }\r\n ],\r\n \"dnsSettings\": {\r\n\ \ \"dnsServers\": [],\r\n \"appliedDnsServers\": [],\r\n \"\ @@ -362,7 +362,7 @@ interactions: \n },\r\n \"type\": \"Microsoft.Network/networkInterfaces\"\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b2933957-27a5-4a64-b902-03474811a725?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b2933957-27a5-4a64-b902-03474811a725?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -402,7 +402,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b2933957-27a5-4a64-b902-03474811a725?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b2933957-27a5-4a64-b902-03474811a725?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -448,20 +448,20 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pynicb046129e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ + string: "{\r\n \"name\": \"pynicb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ ,\r\n \"etag\": \"W/\\\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"resourceGuid\": \"fe1dbcae-6e61-446d-8a60-934d6633b35b\"\ ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\": \"MyIpConfig\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ ,\r\n \"etag\": \"W/\\\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\"\ - : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ + : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ \r\n },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\"\ : \"IPv4\"\r\n }\r\n }\r\n ],\r\n \"dnsSettings\": {\r\n\ \ \"dnsServers\": [],\r\n \"appliedDnsServers\": [],\r\n \"\ @@ -515,20 +515,20 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pynicb046129e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ + string: "{\r\n \"name\": \"pynicb046129e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ ,\r\n \"etag\": \"W/\\\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"resourceGuid\": \"fe1dbcae-6e61-446d-8a60-934d6633b35b\"\ ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\": \"MyIpConfig\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ ,\r\n \"etag\": \"W/\\\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n \"privateIPAllocationMethod\"\ - : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ + : \"Dynamic\",\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ \r\n },\r\n \"primary\": true,\r\n \"privateIPAddressVersion\"\ : \"IPv4\"\r\n }\r\n }\r\n ],\r\n \"dnsSettings\": {\r\n\ \ \"dnsServers\": [],\r\n \"appliedDnsServers\": [],\r\n \"\ @@ -582,22 +582,22 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pynicb046129e\",\r\ - \n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ + \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e\"\ ,\r\n \"etag\": \"W/\\\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\\\"\",\r\ \n \"location\": \"westus\",\r\n \"properties\": {\r\n \"\ provisioningState\": \"Succeeded\",\r\n \"resourceGuid\": \"fe1dbcae-6e61-446d-8a60-934d6633b35b\"\ ,\r\n \"ipConfigurations\": [\r\n {\r\n \"name\"\ - : \"MyIpConfig\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ + : \"MyIpConfig\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig\"\ ,\r\n \"etag\": \"W/\\\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\\\"\ \",\r\n \"type\": \"Microsoft.Network/networkInterfaces/ipConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"privateIPAddress\": \"10.0.0.4\",\r\n\ \ \"privateIPAllocationMethod\": \"Dynamic\",\r\n \ - \ \"subnet\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ + \ \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e\"\ \r\n },\r\n \"primary\": true,\r\n \ \ \"privateIPAddressVersion\": \"IPv4\"\r\n }\r\n }\r\n\ \ ],\r\n \"dnsSettings\": {\r\n \"dnsServers\": [],\r\ @@ -651,10 +651,10 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/networkInterfaces?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/networkInterfaces?api-version=2019-09-01 response: body: - string: '{"value":[{"name":"feng-rhel-8VMNic","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-rhel-8VMNic","etag":"W/\"7a9698bd-fc73-4a94-b649-b13954f77c98\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"e3a7c6f4-6867-4bc1-ad6f-8bf9f4051ff8","ipConfigurations":[{"name":"ipconfigfeng-rhel-8","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-rhel-8VMNic/ipConfigurations/ipconfigfeng-rhel-8","etag":"W/\"7a9698bd-fc73-4a94-b649-b13954f77c98\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/feng-rhel-8PublicIP"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/feng_rhel_8VNET/subnets/feng_rhel_8Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-36-3C-A2","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Compute/virtualMachines/feng-rhel-8"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"feng_rhel_8VMNic","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng_rhel_8VMNic","etag":"W/\"8c7a1d3e-f54a-48e4-bf25-8f13b2176138\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a3c76119-0317-43f2-b8f5-73a7dbb8e9bd","ipConfigurations":[{"name":"ipconfigfeng_rhel_8","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng_rhel_8VMNic/ipConfigurations/ipconfigfeng_rhel_8","etag":"W/\"8c7a1d3e-f54a-48e4-bf25-8f13b2176138\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/feng_rhel_8PublicIP"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/feng_rhel_8VNET/subnets/feng_rhel_8Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"udqd5j0cpk2ujjmd4ykldlf42c.dx.internal.cloudapp.net"},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"vm-01543","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-01543","etag":"W/\"8e5d9aa9-8e65-47dd-81c1-d76e02da4c17\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"36c07bd9-5047-4484-a724-382fbaaeaccb","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-01543/ipConfigurations/ipconfig1","etag":"W/\"8e5d9aa9-8e65-47dd-81c1-d76e02da4c17\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.7.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/vm-01-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-01/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"44fdgqth3nnupiqwwb1vtts4ka.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-36-83-75","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Compute/virtualMachines/vm-01"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"vm-02540","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-02540","etag":"W/\"21993c34-b5d5-4f59-a454-9d029f2d380a\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"4a669b33-d2ec-465c-8968-8c6d68fcc0c5","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-02540/ipConfigurations/ipconfig1","etag":"W/\"21993c34-b5d5-4f59-a454-9d029f2d380a\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.7.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/vm-02-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-01/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"44fdgqth3nnupiqwwb1vtts4ka.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-30-70-22","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Compute/virtualMachines/vm-02"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"aVMNic","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic","etag":"W/\"1391908c-f1ad-4953-9909-319d4ddc92fa\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"ad720304-2c44-4706-95c8-19b21f162f79","ipConfigurations":[{"name":"ipconfiga","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic/ipConfigurations/ipconfiga","etag":"W/\"1391908c-f1ad-4953-9909-319d4ddc92fa\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/aPublicIP"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/virtualNetworks/start-1VNET/subnets/start-1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"cd5godij43kejjlr0tcsqbsckh.dx.internal.cloudapp.net"},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"start-1VMNic","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic","etag":"W/\"d273d36c-179c-4644-b606-8b6219c7f6a5\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a4bf8a33-2737-46b6-91fc-e7b335c8f957","ipConfigurations":[{"name":"ipconfigstart-1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic/ipConfigurations/ipconfigstart-1","etag":"W/\"d273d36c-179c-4644-b606-8b6219c7f6a5\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/start-1PublicIP"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/virtualNetworks/start-1VNET/subnets/start-1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-36-17-80","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Compute/virtualMachines/start-1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"pyvmextnic15a60f10","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10","etag":"W/\"f3e14d8d-009e-4a1c-9540-184aacb71166\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"24a1db82-87d6-4258-8281-db423e1d6a9e","ipConfigurations":[{"name":"pyarmconfig","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10/ipConfigurations/pyarmconfig","etag":"W/\"f3e14d8d-009e-4a1c-9540-184aacb71166\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10/subnets/pyvmextsub15a60f10"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"m45dve4iaz3uliden4mw3qsqod.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-3B-D3-41","enableAcceleratedNetworking":false,"enableIPForwarding":false,"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"pynicb046129e","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e","etag":"W/\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"fe1dbcae-6e61-446d-8a60-934d6633b35b","ipConfigurations":[{"name":"MyIpConfig","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig","etag":"W/\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"x4henm4vuofuphji0uiipf1zue.dx.internal.cloudapp.net"},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zimsvm64","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkInterfaces/zimsvm64","etag":"W/\"424fad23-e124-4cd4-99ac-08d4bc1922f0\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"12f5071f-0b35-4148-9ac0-7216d5d82553","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkInterfaces/zimsvm64/ipConfigurations/ipconfig1","etag":"W/\"424fad23-e124-4cd4-99ac-08d4bc1922f0\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.8.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/publicIPAddresses/zimsvm-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/virtualNetworks/zimsstuff-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"gruxbvaiqdyunp5kzbfi4wi4yd.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-36-78-C1","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Compute/virtualMachines/zimsvm"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhlinux359","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359","etag":"W/\"46ae9efb-f525-4c4e-a9be-c62c588d5f9b\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"f9b28136-8dab-423d-9091-33210eccc288","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359/ipConfigurations/ipconfig1","etag":"W/\"46ae9efb-f525-4c4e-a9be-c62c588d5f9b\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.4.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhlinux-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/storagerule/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"tz4zcgygejzedk5dtuntfbct0h.bx.internal.cloudapp.net"},"macAddress":"00-0D-3A-54-09-6E","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Compute/virtualMachines/zuhlinux"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhtestvm638","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638","etag":"W/\"f0b2b81c-fc36-4cc8-897a-c6ab8e7144a1\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"e6a3accb-1e48-4fb7-bb66-161f0d50e6c7","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638/ipConfigurations/ipconfig1","etag":"W/\"f0b2b81c-fc36-4cc8-897a-c6ab8e7144a1\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.4.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhtestvm-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/storagerule/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-10-D9-B3","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Compute/virtualMachines/zuhtestvm"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhubuntu26","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26","etag":"W/\"fbd94511-2e10-4fef-84ed-29e2b2a8ac86\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"81443a59-3f65-4a92-90c6-9e3f05e48f7c","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26/ipConfigurations/ipconfig1","etag":"W/\"fbd94511-2e10-4fef-84ed-29e2b2a8ac86\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhUbuntu-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuh-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-55-26-74","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"vm22523","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523","etag":"W/\"cb1a4fc0-7fab-437f-b5b6-2c1bdea2251c\"","location":"eastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"a3258816-793d-4b67-917f-ecd46735d922","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523/ipConfigurations/ipconfig1","etag":"W/\"cb1a4fc0-7fab-437f-b5b6-2c1bdea2251c\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.4.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/publicIPAddresses/vm22-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1vnet623/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-85-12-9D","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Compute/virtualMachines/vm22"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"feng-ubuntu388","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-ubuntu388","etag":"W/\"732cea5d-db2a-4564-9ed8-7f1d2d99a46e\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"c57553b2-64cf-4cf5-8f82-0d8e9f033192","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-ubuntu388/ipConfigurations/ipconfig1","etag":"W/\"732cea5d-db2a-4564-9ed8-7f1d2d99a46e\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.7.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/feng-ubuntu-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/fengtestvnet658/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-08-78-DD","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Compute/virtualMachines/feng-ubuntu"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"jlvmwin1184","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184","etag":"W/\"447e5c05-f50d-4db9-b916-de48795a7608\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9f67d029-e4a2-4011-a328-6fc7b3bad722","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184/ipConfigurations/ipconfig1","etag":"W/\"447e5c05-f50d-4db9-b916-de48795a7608\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.5.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/publicIPAddresses/jlvmwin1-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/virtualNetworks/jlwvmrg-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-08-79-79","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Compute/virtualMachines/jlvmwin1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"yugangw1VMNic","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw1VMNic","etag":"W/\"242894a5-aa6b-43f6-b5f0-be9d0bde48c6\"","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0ae03145-7282-4c29-97ba-94c954cf5550","ipConfigurations":[{"name":"ipconfigyugangw1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw1VMNic/ipConfigurations/ipconfigyugangw1","etag":"W/\"242894a5-aa6b-43f6-b5f0-be9d0bde48c6\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/publicIPAddresses/yugangw1PublicIP"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/virtualNetworks/yugangw1VNET/subnets/yugangw1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"jecaegluw31exfan0jeixyf2jc.ix.internal.cloudapp.net"},"macAddress":"00-0D-3A-A2-33-47","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Compute/virtualMachines/yugangw1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhwin154","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154","etag":"W/\"9afdb254-3b49-4931-a7ca-ae01889a107a\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9bd34bc5-6f44-4e98-89bd-ea08f8095294","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154/ipConfigurations/ipconfig1","etag":"W/\"9afdb254-3b49-4931-a7ca-ae01889a107a\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.1.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhWin-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet584/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-A2-9B-01","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Compute/virtualMachines/zuhWin"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"lks1.nic.7f9003f5-5e86-42b9-9979-80a9797cf484","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/lks1.nic.7f9003f5-5e86-42b9-9979-80a9797cf484","etag":"W/\"e003152b-5900-4cec-b700-e07f88af632d\"","properties":{"provisioningState":"Succeeded","resourceGuid":"b6a42b0e-dd0e-47f2-bd46-5e345ca749fc","ipConfigurations":[{"name":"lks1_ipconfig_0","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/lks1.nic.7f9003f5-5e86-42b9-9979-80a9797cf484/ipConfigurations/lks1_ipconfig_0","etag":"W/\"e003152b-5900-4cec-b700-e07f88af632d\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"qoy2lv2czybuhevorvq0mrpqrc.gx.internal.cloudapp.net"},"macAddress":"","enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[],"privateLinkService":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/privateLinkServices/lks1"}},"type":"Microsoft.Network/networkInterfaces"},{"name":"pe1.nic.42302fcd-0ffa-4e8d-8094-9f06c8639a3e","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/pe1.nic.42302fcd-0ffa-4e8d-8094-9f06c8639a3e","etag":"W/\"3b8ae29d-153d-4dcd-9a17-d846b50a8121\"","properties":{"provisioningState":"Succeeded","resourceGuid":"c2ada8e6-a192-4d0c-a07d-452a851fe03f","ipConfigurations":[{"name":"privateEndpointIpConfig","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/pe1.nic.42302fcd-0ffa-4e8d-8094-9f06c8639a3e/ipConfigurations/privateEndpointIpConfig","etag":"W/\"3b8ae29d-153d-4dcd-9a17-d846b50a8121\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.2.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet2"},"primary":true,"privateIPAddressVersion":"IPv4","privateLinkConnectionProperties":{"groupId":"","requiredMemberName":"","fqdns":[]}}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"qoy2lv2czybuhevorvq0mrpqrc.gx.internal.cloudapp.net"},"macAddress":"","enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[],"privateEndpoint":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/privateEndpoints/pe1"}},"type":"Microsoft.Network/networkInterfaces"},{"name":"test_vm1VMNic","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm1VMNic","etag":"W/\"86d951c9-c84f-4214-8066-76b125139932\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"1b8b3641-fc9b-421d-ad9f-0148955733c0","ipConfigurations":[{"name":"ipconfigtest_vm1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm1VMNic/ipConfigurations/ipconfigtest_vm1","etag":"W/\"86d951c9-c84f-4214-8066-76b125139932\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/publicIPAddresses/test_vm1PublicIP"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/virtualNetworks/test_vm1VNET/subnets/test_vm1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"bpy4eesldc1ebii0hxdhcyxiqc.gx.internal.cloudapp.net"},"macAddress":"00-0D-3A-97-89-CD","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Compute/virtualMachines/test_vm1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"test_vm2VMNic","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm2VMNic","etag":"W/\"367659e0-c8da-44ed-8974-b74d8fd43647\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"7dcdeea4-5af1-497b-89a5-be1d32487b7f","ipConfigurations":[{"name":"ipconfigtest_vm2","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm2VMNic/ipConfigurations/ipconfigtest_vm2","etag":"W/\"367659e0-c8da-44ed-8974-b74d8fd43647\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/publicIPAddresses/test_vm2PublicIP"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/virtualNetworks/test_vm1VNET/subnets/test_vm1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"bpy4eesldc1ebii0hxdhcyxiqc.gx.internal.cloudapp.net"},"macAddress":"00-0D-3A-97-81-3B","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Compute/virtualMachines/test_vm2"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"sdfsdfsdf.nic.483f3d12-3ba8-4789-92dd-b7ed9c4d43db","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/networkInterfaces/sdfsdfsdf.nic.483f3d12-3ba8-4789-92dd-b7ed9c4d43db","etag":"W/\"3bbee30b-95f7-405e-8381-1d9abf9b4c0a\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"724714f7-43b7-4ffc-998f-9c65823ba090","ipConfigurations":[{"name":"sdfsdfsdf_ipconfig_0","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/networkInterfaces/sdfsdfsdf.nic.483f3d12-3ba8-4789-92dd-b7ed9c4d43db/ipConfigurations/sdfsdfsdf_ipconfig_0","etag":"W/\"3bbee30b-95f7-405e-8381-1d9abf9b4c0a\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.1.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"xqkjibutxwqupf1ofzivpcrmoc.gx.internal.cloudapp.net"},"macAddress":"","enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[],"privateLinkService":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/privateLinkServices/sdfsdfsdf"}},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhcentos285","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285","etag":"W/\"624add92-0972-43f9-acc0-940c129b40c2\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"68322b51-ca64-42a4-9320-d0c1e79be92b","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285/ipConfigurations/ipconfig1","etag":"W/\"624add92-0972-43f9-acc0-940c129b40c2\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.3.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhCentOSip151"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet370/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-92-AF-02","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhwindows2016246","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246","etag":"W/\"0fccc225-356c-4ac3-9b19-3655145b924c\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"889673be-6ac0-44ce-b815-9b68d2bc8268","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246/ipConfigurations/ipconfig1","etag":"W/\"0fccc225-356c-4ac3-9b19-3655145b924c\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.3.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhWindows2016-ip"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet370/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-96-A2-2A","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"vm-storage-sku-testVMNic","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkInterfaces/vm-storage-sku-testVMNic","etag":"W/\"80e84427-5292-4292-a843-4d1a1e4470d4\"","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a164a80c-d348-4802-9a85-12c1e616ce6e","ipConfigurations":[{"name":"ipconfigvm-storage-sku-test","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkInterfaces/vm-storage-sku-testVMNic/ipConfigurations/ipconfigvm-storage-sku-test","etag":"W/\"80e84427-5292-4292-a843-4d1a1e4470d4\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/publicIPAddresses/vm-storage-sku-testPublicIP"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/virtualNetworks/vm-storage-sku-testVNET/subnets/vm-storage-sku-testSubnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG"},"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Compute/virtualMachines/vm-storage-sku-test"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"fooziipy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98","etag":"W/\"3d1f7ae5-7539-4e68-932e-51c477ef91b3\"","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"eb3d07ad-0fb9-4c18-8754-cd996f1d6553","ipConfigurations":[{"name":"fooziipy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98/ipConfigurations/fooziipy98","etag":"W/\"3d1f7ae5-7539-4e68-932e-51c477ef91b3\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"192.168.1.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/publicIPAddresses/fooziipy98"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/virtualNetworks/fooziipy98/subnets/fooziipy98"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-02-48-1D","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Compute/virtualMachines/fooziipy98"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"fooziipy99","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99","etag":"W/\"c28bce2e-56ae-4edc-b659-2254cfbf3eec\"","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"0b41838c-3baa-45aa-bfc1-7bfdfefed133","ipConfigurations":[{"name":"fooziipy99","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99/ipConfigurations/fooziipy99","etag":"W/\"c28bce2e-56ae-4edc-b659-2254cfbf3eec\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"192.168.1.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/publicIPAddresses/fooziipy99"},"subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/virtualNetworks/fooziipy99/subnets/fooziipy99"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-02-C5-15","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99"},"primary":true,"virtualMachine":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Compute/virtualMachines/fooziipy99"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"anf-sdk-vnet-nic-VLB5RZ","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/networkInterfaces/anf-sdk-vnet-nic-VLB5RZ","etag":"W/\"a4268957-31af-497a-8856-8d01bdafff95\"","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"22a0f747-010a-4888-a399-437e428797e3","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/networkInterfaces/anf-sdk-vnet-nic-VLB5RZ/ipConfigurations/ipconfig1","etag":"W/\"a4268957-31af-497a-8856-8d01bdafff95\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.6.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/virtualNetworks/sdk-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"mouto3xzohwuvec1rqhuv1kfxb.xx.internal.cloudapp.net"},"macAddress":"","enableAcceleratedNetworking":false,"enableIPForwarding":false,"linkedResourceType":"Microsoft.Netapp/volumes","primary":true,"hostedWorkloads":["/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.NetApp/netAppAccounts/sdk-py-tests-acc-1/capacityPools/sdk-py-tests-pool-1/volumes/sdk-py-tests-vol-1"],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"}]}' + string: '{"value":[{"name":"feng-rhel-8VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-rhel-8VMNic","etag":"W/\"7a9698bd-fc73-4a94-b649-b13954f77c98\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"e3a7c6f4-6867-4bc1-ad6f-8bf9f4051ff8","ipConfigurations":[{"name":"ipconfigfeng-rhel-8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-rhel-8VMNic/ipConfigurations/ipconfigfeng-rhel-8","etag":"W/\"7a9698bd-fc73-4a94-b649-b13954f77c98\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/feng-rhel-8PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/feng_rhel_8VNET/subnets/feng_rhel_8Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-36-3C-A2","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Compute/virtualMachines/feng-rhel-8"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"feng_rhel_8VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng_rhel_8VMNic","etag":"W/\"8c7a1d3e-f54a-48e4-bf25-8f13b2176138\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a3c76119-0317-43f2-b8f5-73a7dbb8e9bd","ipConfigurations":[{"name":"ipconfigfeng_rhel_8","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng_rhel_8VMNic/ipConfigurations/ipconfigfeng_rhel_8","etag":"W/\"8c7a1d3e-f54a-48e4-bf25-8f13b2176138\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/feng_rhel_8PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/feng_rhel_8VNET/subnets/feng_rhel_8Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"udqd5j0cpk2ujjmd4ykldlf42c.dx.internal.cloudapp.net"},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"vm-01543","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-01543","etag":"W/\"8e5d9aa9-8e65-47dd-81c1-d76e02da4c17\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"36c07bd9-5047-4484-a724-382fbaaeaccb","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-01543/ipConfigurations/ipconfig1","etag":"W/\"8e5d9aa9-8e65-47dd-81c1-d76e02da4c17\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.7.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/vm-01-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-01/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"44fdgqth3nnupiqwwb1vtts4ka.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-36-83-75","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Compute/virtualMachines/vm-01"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"vm-02540","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-02540","etag":"W/\"21993c34-b5d5-4f59-a454-9d029f2d380a\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"4a669b33-d2ec-465c-8968-8c6d68fcc0c5","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-02540/ipConfigurations/ipconfig1","etag":"W/\"21993c34-b5d5-4f59-a454-9d029f2d380a\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.7.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/vm-02-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-01/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"44fdgqth3nnupiqwwb1vtts4ka.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-30-70-22","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Compute/virtualMachines/vm-02"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"aVMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic","etag":"W/\"1391908c-f1ad-4953-9909-319d4ddc92fa\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"ad720304-2c44-4706-95c8-19b21f162f79","ipConfigurations":[{"name":"ipconfiga","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic/ipConfigurations/ipconfiga","etag":"W/\"1391908c-f1ad-4953-9909-319d4ddc92fa\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/aPublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/virtualNetworks/start-1VNET/subnets/start-1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"cd5godij43kejjlr0tcsqbsckh.dx.internal.cloudapp.net"},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"start-1VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic","etag":"W/\"d273d36c-179c-4644-b606-8b6219c7f6a5\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a4bf8a33-2737-46b6-91fc-e7b335c8f957","ipConfigurations":[{"name":"ipconfigstart-1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic/ipConfigurations/ipconfigstart-1","etag":"W/\"d273d36c-179c-4644-b606-8b6219c7f6a5\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/start-1PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/virtualNetworks/start-1VNET/subnets/start-1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-36-17-80","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Compute/virtualMachines/start-1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"pyvmextnic15a60f10","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10","etag":"W/\"f3e14d8d-009e-4a1c-9540-184aacb71166\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"24a1db82-87d6-4258-8281-db423e1d6a9e","ipConfigurations":[{"name":"pyarmconfig","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/networkInterfaces/pyvmextnic15a60f10/ipConfigurations/pyarmconfig","etag":"W/\"f3e14d8d-009e-4a1c-9540-184aacb71166\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Network/virtualNetworks/pyvmextnet15a60f10/subnets/pyvmextsub15a60f10"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"m45dve4iaz3uliden4mw3qsqod.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-3B-D3-41","enableAcceleratedNetworking":false,"enableIPForwarding":false,"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_compute_test_vm_extensions15a60f10/providers/Microsoft.Compute/virtualMachines/pyvmextvm15a60f10"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"pynicb046129e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e","etag":"W/\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"fe1dbcae-6e61-446d-8a60-934d6633b35b","ipConfigurations":[{"name":"MyIpConfig","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e/ipConfigurations/MyIpConfig","etag":"W/\"f1b95c75-0354-41ba-83ed-81ee0999c6ca\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/virtualNetworks/pyvnetb046129e/subnets/pysubnetb046129e"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"x4henm4vuofuphji0uiipf1zue.dx.internal.cloudapp.net"},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zimsvm64","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zimsstuff/providers/Microsoft.Network/networkInterfaces/zimsvm64","etag":"W/\"424fad23-e124-4cd4-99ac-08d4bc1922f0\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"12f5071f-0b35-4148-9ac0-7216d5d82553","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zimsstuff/providers/Microsoft.Network/networkInterfaces/zimsvm64/ipConfigurations/ipconfig1","etag":"W/\"424fad23-e124-4cd4-99ac-08d4bc1922f0\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.8.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zimsstuff/providers/Microsoft.Network/publicIPAddresses/zimsvm-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zimsstuff/providers/Microsoft.Network/virtualNetworks/zimsstuff-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"gruxbvaiqdyunp5kzbfi4wi4yd.dx.internal.cloudapp.net"},"macAddress":"00-0D-3A-36-78-C1","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zimsstuff/providers/Microsoft.Compute/virtualMachines/zimsvm"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhlinux359","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359","etag":"W/\"46ae9efb-f525-4c4e-a9be-c62c588d5f9b\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"f9b28136-8dab-423d-9091-33210eccc288","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359/ipConfigurations/ipconfig1","etag":"W/\"46ae9efb-f525-4c4e-a9be-c62c588d5f9b\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.4.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhlinux-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/storagerule/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"tz4zcgygejzedk5dtuntfbct0h.bx.internal.cloudapp.net"},"macAddress":"00-0D-3A-54-09-6E","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Compute/virtualMachines/zuhlinux"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhtestvm638","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638","etag":"W/\"f0b2b81c-fc36-4cc8-897a-c6ab8e7144a1\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"e6a3accb-1e48-4fb7-bb66-161f0d50e6c7","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638/ipConfigurations/ipconfig1","etag":"W/\"f0b2b81c-fc36-4cc8-897a-c6ab8e7144a1\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.4.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhtestvm-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/storagerule/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-10-D9-B3","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Compute/virtualMachines/zuhtestvm"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhubuntu26","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26","etag":"W/\"fbd94511-2e10-4fef-84ed-29e2b2a8ac86\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"81443a59-3f65-4a92-90c6-9e3f05e48f7c","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26/ipConfigurations/ipconfig1","etag":"W/\"fbd94511-2e10-4fef-84ed-29e2b2a8ac86\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhUbuntu-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuh-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-55-26-74","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"vm22523","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523","etag":"W/\"cb1a4fc0-7fab-437f-b5b6-2c1bdea2251c\"","location":"eastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"a3258816-793d-4b67-917f-ecd46735d922","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523/ipConfigurations/ipconfig1","etag":"W/\"cb1a4fc0-7fab-437f-b5b6-2c1bdea2251c\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.4.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/publicIPAddresses/vm22-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1vnet623/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-85-12-9D","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Compute/virtualMachines/vm22"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"feng-ubuntu388","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-ubuntu388","etag":"W/\"732cea5d-db2a-4564-9ed8-7f1d2d99a46e\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"c57553b2-64cf-4cf5-8f82-0d8e9f033192","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-ubuntu388/ipConfigurations/ipconfig1","etag":"W/\"732cea5d-db2a-4564-9ed8-7f1d2d99a46e\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.7.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/feng-ubuntu-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/fengtestvnet658/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-08-78-DD","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Compute/virtualMachines/feng-ubuntu"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"jlvmwin1184","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184","etag":"W/\"447e5c05-f50d-4db9-b916-de48795a7608\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9f67d029-e4a2-4011-a328-6fc7b3bad722","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184/ipConfigurations/ipconfig1","etag":"W/\"447e5c05-f50d-4db9-b916-de48795a7608\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.5.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/publicIPAddresses/jlvmwin1-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/virtualNetworks/jlwvmrg-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-08-79-79","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Compute/virtualMachines/jlvmwin1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"yugangw1VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw1VMNic","etag":"W/\"242894a5-aa6b-43f6-b5f0-be9d0bde48c6\"","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0ae03145-7282-4c29-97ba-94c954cf5550","ipConfigurations":[{"name":"ipconfigyugangw1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw1VMNic/ipConfigurations/ipconfigyugangw1","etag":"W/\"242894a5-aa6b-43f6-b5f0-be9d0bde48c6\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/publicIPAddresses/yugangw1PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/virtualNetworks/yugangw1VNET/subnets/yugangw1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"jecaegluw31exfan0jeixyf2jc.ix.internal.cloudapp.net"},"macAddress":"00-0D-3A-A2-33-47","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Compute/virtualMachines/yugangw1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhwin154","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154","etag":"W/\"9afdb254-3b49-4931-a7ca-ae01889a107a\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9bd34bc5-6f44-4e98-89bd-ea08f8095294","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154/ipConfigurations/ipconfig1","etag":"W/\"9afdb254-3b49-4931-a7ca-ae01889a107a\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.1.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhWin-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet584/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-A2-9B-01","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Compute/virtualMachines/zuhWin"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"lks1.nic.7f9003f5-5e86-42b9-9979-80a9797cf484","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/lks1.nic.7f9003f5-5e86-42b9-9979-80a9797cf484","etag":"W/\"e003152b-5900-4cec-b700-e07f88af632d\"","properties":{"provisioningState":"Succeeded","resourceGuid":"b6a42b0e-dd0e-47f2-bd46-5e345ca749fc","ipConfigurations":[{"name":"lks1_ipconfig_0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/lks1.nic.7f9003f5-5e86-42b9-9979-80a9797cf484/ipConfigurations/lks1_ipconfig_0","etag":"W/\"e003152b-5900-4cec-b700-e07f88af632d\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"qoy2lv2czybuhevorvq0mrpqrc.gx.internal.cloudapp.net"},"macAddress":"","enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[],"privateLinkService":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/privateLinkServices/lks1"}},"type":"Microsoft.Network/networkInterfaces"},{"name":"pe1.nic.42302fcd-0ffa-4e8d-8094-9f06c8639a3e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/pe1.nic.42302fcd-0ffa-4e8d-8094-9f06c8639a3e","etag":"W/\"3b8ae29d-153d-4dcd-9a17-d846b50a8121\"","properties":{"provisioningState":"Succeeded","resourceGuid":"c2ada8e6-a192-4d0c-a07d-452a851fe03f","ipConfigurations":[{"name":"privateEndpointIpConfig","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/pe1.nic.42302fcd-0ffa-4e8d-8094-9f06c8639a3e/ipConfigurations/privateEndpointIpConfig","etag":"W/\"3b8ae29d-153d-4dcd-9a17-d846b50a8121\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.2.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet2"},"primary":true,"privateIPAddressVersion":"IPv4","privateLinkConnectionProperties":{"groupId":"","requiredMemberName":"","fqdns":[]}}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"qoy2lv2czybuhevorvq0mrpqrc.gx.internal.cloudapp.net"},"macAddress":"","enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[],"privateEndpoint":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/privateEndpoints/pe1"}},"type":"Microsoft.Network/networkInterfaces"},{"name":"test_vm1VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm1VMNic","etag":"W/\"86d951c9-c84f-4214-8066-76b125139932\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"1b8b3641-fc9b-421d-ad9f-0148955733c0","ipConfigurations":[{"name":"ipconfigtest_vm1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm1VMNic/ipConfigurations/ipconfigtest_vm1","etag":"W/\"86d951c9-c84f-4214-8066-76b125139932\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/publicIPAddresses/test_vm1PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/virtualNetworks/test_vm1VNET/subnets/test_vm1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"bpy4eesldc1ebii0hxdhcyxiqc.gx.internal.cloudapp.net"},"macAddress":"00-0D-3A-97-89-CD","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Compute/virtualMachines/test_vm1"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"test_vm2VMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm2VMNic","etag":"W/\"367659e0-c8da-44ed-8974-b74d8fd43647\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"7dcdeea4-5af1-497b-89a5-be1d32487b7f","ipConfigurations":[{"name":"ipconfigtest_vm2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm2VMNic/ipConfigurations/ipconfigtest_vm2","etag":"W/\"367659e0-c8da-44ed-8974-b74d8fd43647\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/publicIPAddresses/test_vm2PublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/virtualNetworks/test_vm1VNET/subnets/test_vm1Subnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"bpy4eesldc1ebii0hxdhcyxiqc.gx.internal.cloudapp.net"},"macAddress":"00-0D-3A-97-81-3B","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Compute/virtualMachines/test_vm2"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"sdfsdfsdf.nic.483f3d12-3ba8-4789-92dd-b7ed9c4d43db","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/networkInterfaces/sdfsdfsdf.nic.483f3d12-3ba8-4789-92dd-b7ed9c4d43db","etag":"W/\"3bbee30b-95f7-405e-8381-1d9abf9b4c0a\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"724714f7-43b7-4ffc-998f-9c65823ba090","ipConfigurations":[{"name":"sdfsdfsdf_ipconfig_0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/networkInterfaces/sdfsdfsdf.nic.483f3d12-3ba8-4789-92dd-b7ed9c4d43db/ipConfigurations/sdfsdfsdf_ipconfig_0","etag":"W/\"3bbee30b-95f7-405e-8381-1d9abf9b4c0a\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.1.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"xqkjibutxwqupf1ofzivpcrmoc.gx.internal.cloudapp.net"},"macAddress":"","enableAcceleratedNetworking":false,"enableIPForwarding":false,"hostedWorkloads":[],"tapConfigurations":[],"privateLinkService":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/privateLinkServices/sdfsdfsdf"}},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhcentos285","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285","etag":"W/\"624add92-0972-43f9-acc0-940c129b40c2\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"68322b51-ca64-42a4-9320-d0c1e79be92b","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285/ipConfigurations/ipconfig1","etag":"W/\"624add92-0972-43f9-acc0-940c129b40c2\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.3.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhCentOSip151"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet370/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-92-AF-02","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"zuhwindows2016246","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246","etag":"W/\"0fccc225-356c-4ac3-9b19-3655145b924c\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"889673be-6ac0-44ce-b815-9b68d2bc8268","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246/ipConfigurations/ipconfig1","etag":"W/\"0fccc225-356c-4ac3-9b19-3655145b924c\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.2.3.5","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhWindows2016-ip"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet370/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-96-A2-2A","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"vm-storage-sku-testVMNic","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkInterfaces/vm-storage-sku-testVMNic","etag":"W/\"80e84427-5292-4292-a843-4d1a1e4470d4\"","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a164a80c-d348-4802-9a85-12c1e616ce6e","ipConfigurations":[{"name":"ipconfigvm-storage-sku-test","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkInterfaces/vm-storage-sku-testVMNic/ipConfigurations/ipconfigvm-storage-sku-test","etag":"W/\"80e84427-5292-4292-a843-4d1a1e4470d4\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.0.0.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/publicIPAddresses/vm-storage-sku-testPublicIP"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/virtualNetworks/vm-storage-sku-testVNET/subnets/vm-storage-sku-testSubnet"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG"},"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Compute/virtualMachines/vm-storage-sku-test"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"fooziipy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98","etag":"W/\"3d1f7ae5-7539-4e68-932e-51c477ef91b3\"","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"eb3d07ad-0fb9-4c18-8754-cd996f1d6553","ipConfigurations":[{"name":"fooziipy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98/ipConfigurations/fooziipy98","etag":"W/\"3d1f7ae5-7539-4e68-932e-51c477ef91b3\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"192.168.1.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/publicIPAddresses/fooziipy98"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/virtualNetworks/fooziipy98/subnets/fooziipy98"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-02-48-1D","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Compute/virtualMachines/fooziipy98"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"fooziipy99","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99","etag":"W/\"c28bce2e-56ae-4edc-b659-2254cfbf3eec\"","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"0b41838c-3baa-45aa-bfc1-7bfdfefed133","ipConfigurations":[{"name":"fooziipy99","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99/ipConfigurations/fooziipy99","etag":"W/\"c28bce2e-56ae-4edc-b659-2254cfbf3eec\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"192.168.1.4","privateIPAllocationMethod":"Dynamic","publicIPAddress":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/publicIPAddresses/fooziipy99"},"subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/virtualNetworks/fooziipy99/subnets/fooziipy99"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[]},"macAddress":"00-0D-3A-02-C5-15","enableAcceleratedNetworking":false,"enableIPForwarding":false,"networkSecurityGroup":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99"},"primary":true,"virtualMachine":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Compute/virtualMachines/fooziipy99"},"hostedWorkloads":[],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"},{"name":"anf-sdk-vnet-nic-VLB5RZ","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/networkInterfaces/anf-sdk-vnet-nic-VLB5RZ","etag":"W/\"a4268957-31af-497a-8856-8d01bdafff95\"","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"22a0f747-010a-4888-a399-437e428797e3","ipConfigurations":[{"name":"ipconfig1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/networkInterfaces/anf-sdk-vnet-nic-VLB5RZ/ipConfigurations/ipconfig1","etag":"W/\"a4268957-31af-497a-8856-8d01bdafff95\"","type":"Microsoft.Network/networkInterfaces/ipConfigurations","properties":{"provisioningState":"Succeeded","privateIPAddress":"10.6.0.4","privateIPAllocationMethod":"Dynamic","subnet":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/virtualNetworks/sdk-vnet/subnets/default"},"primary":true,"privateIPAddressVersion":"IPv4"}}],"dnsSettings":{"dnsServers":[],"appliedDnsServers":[],"internalDomainNameSuffix":"mouto3xzohwuvec1rqhuv1kfxb.xx.internal.cloudapp.net"},"macAddress":"","enableAcceleratedNetworking":false,"enableIPForwarding":false,"linkedResourceType":"Microsoft.Netapp/volumes","primary":true,"hostedWorkloads":["/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.NetApp/netAppAccounts/sdk-py-tests-acc-1/capacityPools/sdk-py-tests-pool-1/volumes/sdk-py-tests-vol-1"],"tapConfigurations":[]},"type":"Microsoft.Network/networkInterfaces"}]}' headers: cache-control: - no-cache @@ -702,13 +702,13 @@ interactions: accept-language: - en-US method: DELETE - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_interface_cardb046129e/providers/Microsoft.Network/networkInterfaces/pynicb046129e?api-version=2019-09-01 response: body: string: '' headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/babbc11d-4324-4878-86dd-85df7d2561c3?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/babbc11d-4324-4878-86dd-85df7d2561c3?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -718,7 +718,7 @@ interactions: expires: - '-1' location: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operationResults/babbc11d-4324-4878-86dd-85df7d2561c3?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/babbc11d-4324-4878-86dd-85df7d2561c3?api-version=2019-09-01 pragma: - no-cache server: @@ -748,7 +748,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/babbc11d-4324-4878-86dd-85df7d2561c3?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/babbc11d-4324-4878-86dd-85df7d2561c3?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_security_groups.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_security_groups.yaml index 5d044100335f..ae87810ca035 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_security_groups.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_network_security_groups.yaml @@ -21,16 +21,16 @@ interactions: accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysecgroupc575136b\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ + string: "{\r\n \"name\": \"pysecgroupc575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ ,\r\n \"etag\": \"W/\\\"17484af3-6a03-49c5-ae72-3a2fdf917064\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/networkSecurityGroups\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"resourceGuid\": \"e27f296d-8a46-499c-9b5a-fca4878210c6\",\r\n \ \ \"securityRules\": [\r\n {\r\n \"name\": \"pysecgrouprulec575136b\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ ,\r\n \"etag\": \"W/\\\"17484af3-6a03-49c5-ae72-3a2fdf917064\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ @@ -43,7 +43,7 @@ interactions: : [],\r\n \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n }\r\n ],\r\n \"defaultSecurityRules\": [\r\ \n {\r\n \"name\": \"AllowVnetInBound\",\r\n \"id\": \"\ - /subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ + /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ ,\r\n \"etag\": \"W/\\\"17484af3-6a03-49c5-ae72-3a2fdf917064\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ @@ -56,7 +56,7 @@ interactions: \ [],\r\n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"AllowAzureLoadBalancerInBound\",\r\ - \n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ + \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ ,\r\n \"etag\": \"W/\\\"17484af3-6a03-49c5-ae72-3a2fdf917064\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ @@ -69,7 +69,7 @@ interactions: \ [],\r\n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"DenyAllInBound\",\r\n \"id\"\ - : \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ + : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ ,\r\n \"etag\": \"W/\\\"17484af3-6a03-49c5-ae72-3a2fdf917064\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ @@ -81,7 +81,7 @@ interactions: : \"Inbound\",\r\n \"sourcePortRanges\": [],\r\n \"destinationPortRanges\"\ : [],\r\n \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n },\r\n {\r\n \"name\": \"AllowVnetOutBound\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ ,\r\n \"etag\": \"W/\\\"17484af3-6a03-49c5-ae72-3a2fdf917064\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ @@ -94,7 +94,7 @@ interactions: : [],\r\n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"AllowInternetOutBound\",\r\n \ - \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ ,\r\n \"etag\": \"W/\\\"17484af3-6a03-49c5-ae72-3a2fdf917064\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ @@ -107,7 +107,7 @@ interactions: \n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"DenyAllOutBound\",\r\n \"\ - id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ + id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ ,\r\n \"etag\": \"W/\\\"17484af3-6a03-49c5-ae72-3a2fdf917064\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ @@ -121,7 +121,7 @@ interactions: : []\r\n }\r\n }\r\n ]\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/2fec0f55-e689-4170-a513-25387ec49726?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/2fec0f55-e689-4170-a513-25387ec49726?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -161,7 +161,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/2fec0f55-e689-4170-a513-25387ec49726?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/2fec0f55-e689-4170-a513-25387ec49726?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -207,16 +207,16 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysecgroupc575136b\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ + string: "{\r\n \"name\": \"pysecgroupc575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/networkSecurityGroups\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"resourceGuid\": \"e27f296d-8a46-499c-9b5a-fca4878210c6\",\r\n \ \ \"securityRules\": [\r\n {\r\n \"name\": \"pysecgrouprulec575136b\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ @@ -229,7 +229,7 @@ interactions: : [],\r\n \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n }\r\n ],\r\n \"defaultSecurityRules\": [\r\ \n {\r\n \"name\": \"AllowVnetInBound\",\r\n \"id\": \"\ - /subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ + /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ @@ -242,7 +242,7 @@ interactions: \ [],\r\n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"AllowAzureLoadBalancerInBound\",\r\ - \n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ + \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ @@ -255,7 +255,7 @@ interactions: \ [],\r\n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"DenyAllInBound\",\r\n \"id\"\ - : \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ + : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ @@ -267,7 +267,7 @@ interactions: : \"Inbound\",\r\n \"sourcePortRanges\": [],\r\n \"destinationPortRanges\"\ : [],\r\n \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n },\r\n {\r\n \"name\": \"AllowVnetOutBound\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ @@ -280,7 +280,7 @@ interactions: : [],\r\n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"AllowInternetOutBound\",\r\n \ - \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ @@ -293,7 +293,7 @@ interactions: \n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"DenyAllOutBound\",\r\n \"\ - id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ + id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ @@ -351,16 +351,16 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysecgroupc575136b\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ + string: "{\r\n \"name\": \"pysecgroupc575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/networkSecurityGroups\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"resourceGuid\": \"e27f296d-8a46-499c-9b5a-fca4878210c6\",\r\n \ \ \"securityRules\": [\r\n {\r\n \"name\": \"pysecgrouprulec575136b\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ @@ -373,7 +373,7 @@ interactions: : [],\r\n \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n }\r\n ],\r\n \"defaultSecurityRules\": [\r\ \n {\r\n \"name\": \"AllowVnetInBound\",\r\n \"id\": \"\ - /subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ + /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ @@ -386,7 +386,7 @@ interactions: \ [],\r\n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"AllowAzureLoadBalancerInBound\",\r\ - \n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ + \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ @@ -399,7 +399,7 @@ interactions: \ [],\r\n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"DenyAllInBound\",\r\n \"id\"\ - : \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ + : \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ @@ -411,7 +411,7 @@ interactions: : \"Inbound\",\r\n \"sourcePortRanges\": [],\r\n \"destinationPortRanges\"\ : [],\r\n \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n },\r\n {\r\n \"name\": \"AllowVnetOutBound\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ @@ -424,7 +424,7 @@ interactions: : [],\r\n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"AllowInternetOutBound\",\r\n \ - \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ @@ -437,7 +437,7 @@ interactions: \n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n \ \ },\r\n {\r\n \"name\": \"DenyAllOutBound\",\r\n \"\ - id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ + id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ @@ -495,17 +495,17 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pysecgroupc575136b\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\",\r\ \n \"type\": \"Microsoft.Network/networkSecurityGroups\",\r\n \"\ location\": \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"resourceGuid\": \"e27f296d-8a46-499c-9b5a-fca4878210c6\"\ ,\r\n \"securityRules\": [\r\n {\r\n \"name\":\ - \ \"pysecgrouprulec575136b\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ + \ \"pysecgrouprulec575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\ \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ @@ -519,7 +519,7 @@ interactions: sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n }\r\n ],\r\n \"defaultSecurityRules\"\ : [\r\n {\r\n \"name\": \"AllowVnetInBound\",\r\n \ - \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\ \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ @@ -533,7 +533,7 @@ interactions: : [],\r\n \"destinationPortRanges\": [],\r\n \"\ sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n },\r\n {\r\n \"name\"\ - : \"AllowAzureLoadBalancerInBound\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ + : \"AllowAzureLoadBalancerInBound\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\ \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ @@ -547,7 +547,7 @@ interactions: \ \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\ \n },\r\n {\r\n \"name\": \"DenyAllInBound\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\ \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ @@ -560,7 +560,7 @@ interactions: sourcePortRanges\": [],\r\n \"destinationPortRanges\": [],\r\n\ \ \"sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n },\r\n {\r\n \"name\"\ - : \"AllowVnetOutBound\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ + : \"AllowVnetOutBound\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\ \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ @@ -574,7 +574,7 @@ interactions: : [],\r\n \"destinationPortRanges\": [],\r\n \"\ sourceAddressPrefixes\": [],\r\n \"destinationAddressPrefixes\"\ : []\r\n }\r\n },\r\n {\r\n \"name\"\ - : \"AllowInternetOutBound\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ + : \"AllowInternetOutBound\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\ \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ @@ -588,7 +588,7 @@ interactions: \ \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\ \n },\r\n {\r\n \"name\": \"DenyAllOutBound\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound\"\ ,\r\n \"etag\": \"W/\\\"a5bda48e-6700-460b-bd33-c6019913f435\\\"\ \",\r\n \"type\": \"Microsoft.Network/networkSecurityGroups/defaultSecurityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\"\ @@ -646,174 +646,174 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/networkSecurityGroups?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/networkSecurityGroups?api-version=2019-09-01 response: body: - string: '{"value":[{"name":"feng-rhel-8NSG","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f2c66cf2-dd57-48f3-9cc6-6b614d0b8399","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/securityRules/default-allow-ssh","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-rhel-8VMNic"}]}},{"name":"fengubuntu-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"ae4ae762-8327-4b91-adf6-268d870e4854","securityRules":[{"name":"HTTPS","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/securityRules/HTTPS","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"SSH","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/securityRules/SSH","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"fengubuntunsg742","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"53bb2e29-e307-445e-96dc-2e01b9c47321","securityRules":[{"name":"Port_443","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/securityRules/Port_443","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":100,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Port_22","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/securityRules/Port_22","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":110,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/AllowVnetInBound","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/DenyAllInBound","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/DenyAllOutBound","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"feng_rhel_8NSG","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"6eee2bc0-0e9a-486b-86f0-66b678202937","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/securityRules/default-allow-ssh","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng_rhel_8VMNic"}]}},{"name":"vm-01-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"3a604239-6b94-4e07-a874-e0675debb870","securityRules":[{"name":"SSH","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/securityRules/SSH","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-01543"}]}},{"name":"vm-02-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"72534917-5af7-411e-bf53-8ea9ad151d6b","securityRules":[{"name":"Port_22","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/securityRules/Port_22","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","description":"Deny - 22","protocol":"*","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":100,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-02540"}]}},{"name":"aNSG","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"e13175f2-5e2e-4de0-960d-7546b4693f26","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/securityRules/default-allow-ssh","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic"}]}},{"name":"start-1NSG","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f18b8899-f28a-4a6a-8bb3-5cde714538e0","securityRules":[{"name":"rdp","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/securityRules/rdp","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic"}]}},{"name":"pysecgroupc575136b","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"e27f296d-8a46-499c-9b5a-fca4878210c6","securityRules":[{"name":"pysecgrouprulec575136b","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","description":"Test - security rule","protocol":"Tcp","sourcePortRange":"655","destinationPortRange":"123-3500","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"zimsvm-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"d83ea86a-01f7-4bce-80ff-d9e6cb705f0a","securityRules":[],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkInterfaces/zimsvm64"}]}},{"name":"zuhlinux-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"4068e122-56e9-48ef-aad1-b196d45cd374","securityRules":[{"name":"SSH","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/securityRules/SSH","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.255.51","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359"}]}},{"name":"zuhtestvm-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"d3a995db-663b-4363-8d32-a1f857e593f1","securityRules":[{"name":"RDP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/securityRules/RDP","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638"}]}},{"name":"zuhUbuntu-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"73db128e-9a50-4012-b9e9-bd2aac698343","securityRules":[{"name":"SSH","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/securityRules/SSH","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/securityRules/RDP","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/securityRules/HTTPS","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/securityRules/HTTP","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26"}]}},{"name":"vm22-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"902181db-c84c-48d0-ba1f-bf12fcb4bbf0","securityRules":[{"name":"SSH","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/securityRules/SSH","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/securityRules/HTTPS","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523"}]}},{"name":"feng-ubuntu-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"0d7bdd03-7d49-4855-8b89-addc8a0f2ee1","securityRules":[{"name":"SSH","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/securityRules/SSH","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-ubuntu388"}]}},{"name":"jlvmwin1-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9b65c627-f3bc-4682-9f3f-37798414e70e","securityRules":[{"name":"RDP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/securityRules/RDP","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184"}]}},{"name":"yugangw1NSG","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"1b94e33b-7f57-4b2f-aa0f-b3b7e606abdf","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/securityRules/default-allow-ssh","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw1VMNic"}]}},{"name":"zuhWin-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"70ec8b54-e05c-4cef-8663-1bd6cb7dc65c","securityRules":[{"name":"Port_3389","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/securityRules/Port_3389","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154"}]}},{"name":"test_vm1NSG","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"84371eda-07a4-4057-a5e4-486d4d81b6c6","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/securityRules/default-allow-ssh","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm1VMNic"}]}},{"name":"test_vm2NSG","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"b0c50336-10a2-4b4e-a78d-54d34f1a457e","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/securityRules/default-allow-ssh","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm2VMNic"}]}},{"name":"zuhCentOS-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"7d7c7686-a1be-4a06-9cc9-d5b003ecb6fd","securityRules":[{"name":"HTTP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/securityRules/HTTP","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/securityRules/HTTPS","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"SSH","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/securityRules/SSH","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/securityRules/RDP","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"zuhCentOSnsg814","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"c1963726-e663-4563-bb02-f95abdf57625","securityRules":[{"name":"HTTP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/securityRules/HTTP","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/securityRules/HTTPS","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"SSH","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/securityRules/SSH","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/securityRules/RDP","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/AllowVnetInBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/DenyAllInBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/DenyAllOutBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285"}]}},{"name":"zuhWindows2016-nsg","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"48082bc6-8192-4662-a146-c3df89310835","securityRules":[{"name":"SSH","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/securityRules/SSH","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/securityRules/HTTP","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/securityRules/HTTPS","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/securityRules/RDP","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246"}]}},{"name":"vm-storage-sku-testNSG","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0b9da223-a223-4cec-ba40-92b311ace383","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/securityRules/default-allow-ssh","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkInterfaces/vm-storage-sku-testVMNic"}]}},{"name":"vm-ultrassdNSG","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f6f25400-6a96-434c-9ce5-3c72450139ce","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/securityRules/default-allow-ssh","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/0/networkInterfaces/vmultd1f9Nic"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/1/networkInterfaces/vmultd1f9Nic"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/2/networkInterfaces/vmultd1f9Nic"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/3/networkInterfaces/vmultd1f9Nic"}]}},{"name":"fooziipy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"b3d500bf-9a32-4046-928d-e52442ff5338","securityRules":[{"name":"fooziipy983389","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/securityRules/fooziipy983389","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"fooziipy985985","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/securityRules/fooziipy985985","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/AllowVnetInBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/DenyAllInBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/DenyAllOutBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98"}]}},{"name":"fooziipy99","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"b012046c-c5e7-47ef-8ea3-5c7c2faea68a","securityRules":[{"name":"fooziipy993389","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/securityRules/fooziipy993389","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"fooziipy995985","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/securityRules/fooziipy995985","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/AllowVnetInBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/DenyAllInBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow - outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/DenyAllOutBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny - all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99"}]}}]}' + string: '{"value":[{"name":"feng-rhel-8NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f2c66cf2-dd57-48f3-9cc6-6b614d0b8399","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/securityRules/default-allow-ssh","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-rhel-8NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"ee510a84-6253-48dd-8892-8475dfcfc254\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-rhel-8VMNic"}]}},{"name":"fengubuntu-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"ae4ae762-8327-4b91-adf6-268d870e4854","securityRules":[{"name":"HTTPS","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/securityRules/HTTPS","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/securityRules/SSH","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntu-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"f7e62e37-d9ec-49d5-92b8-346b27a9edbd\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"fengubuntunsg742","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"53bb2e29-e307-445e-96dc-2e01b9c47321","securityRules":[{"name":"Port_443","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/securityRules/Port_443","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":100,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"Port_22","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/securityRules/Port_22","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"*","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":110,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/AllowVnetInBound","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/DenyAllInBound","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/fengubuntunsg742/defaultSecurityRules/DenyAllOutBound","etag":"W/\"b3a0ee0b-6de7-4535-9699-40d566f4f4fc\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"feng_rhel_8NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"6eee2bc0-0e9a-486b-86f0-66b678202937","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/securityRules/default-allow-ssh","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng_rhel_8NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"333a32ed-b599-4f7c-8e07-8bc276214aa5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng_rhel_8VMNic"}]}},{"name":"vm-01-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"3a604239-6b94-4e07-a874-e0675debb870","securityRules":[{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/securityRules/SSH","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-01-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"4cccd81a-7d3f-4b9b-8d4b-8854abf95024\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-01543"}]}},{"name":"vm-02-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"72534917-5af7-411e-bf53-8ea9ad151d6b","securityRules":[{"name":"Port_22","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/securityRules/Port_22","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","description":"Deny + 22","protocol":"*","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":100,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkSecurityGroups/vm-02-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"1a96e4ea-abf0-4638-926b-2dbeda60cf2f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-02540"}]}},{"name":"aNSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"e13175f2-5e2e-4de0-960d-7546b4693f26","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/securityRules/default-allow-ssh","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/aNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"2774d01c-b3dd-42f0-8c26-ad1ce84045a9\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic"}]}},{"name":"start-1NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f18b8899-f28a-4a6a-8bb3-5cde714538e0","securityRules":[{"name":"rdp","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/securityRules/rdp","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkSecurityGroups/start-1NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"a18b1a09-c8cf-4934-ac8c-aae73335f0e4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic"}]}},{"name":"pysecgroupc575136b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"e27f296d-8a46-499c-9b5a-fca4878210c6","securityRules":[{"name":"pysecgrouprulec575136b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","description":"Test + security rule","protocol":"Tcp","sourcePortRange":"655","destinationPortRange":"123-3500","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetInBound","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllInBound","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/defaultSecurityRules/DenyAllOutBound","etag":"W/\"a5bda48e-6700-460b-bd33-c6019913f435\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"zimsvm-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"d83ea86a-01f7-4bce-80ff-d9e6cb705f0a","securityRules":[],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zimsstuff/providers/Microsoft.Network/networkSecurityGroups/zimsvm-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"79ba3c82-00d0-4823-b8d9-6d2ceb54bc3a\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zimsstuff/providers/Microsoft.Network/networkInterfaces/zimsvm64"}]}},{"name":"zuhlinux-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"4068e122-56e9-48ef-aad1-b196d45cd374","securityRules":[{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/securityRules/SSH","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"167.220.255.51","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhlinux-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"740e1da9-b224-42e3-ad23-902660795a13\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359"}]}},{"name":"zuhtestvm-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"d3a995db-663b-4363-8d32-a1f857e593f1","securityRules":[{"name":"RDP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/securityRules/RDP","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhtestvm-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"bc136f52-42ee-49bb-946a-e567f15009c4\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638"}]}},{"name":"zuhUbuntu-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"73db128e-9a50-4012-b9e9-bd2aac698343","securityRules":[{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/securityRules/SSH","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/securityRules/RDP","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/securityRules/HTTPS","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/securityRules/HTTP","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhUbuntu-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"beb4fe9e-9be3-42d2-98a8-d54844490337\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26"}]}},{"name":"vm22-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"902181db-c84c-48d0-ba1f-bf12fcb4bbf0","securityRules":[{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/securityRules/SSH","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/securityRules/HTTPS","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkSecurityGroups/vm22-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"065a0bde-908d-4f19-91b5-ab0b1785083d\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523"}]}},{"name":"feng-ubuntu-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"0d7bdd03-7d49-4855-8b89-addc8a0f2ee1","securityRules":[{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/securityRules/SSH","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkSecurityGroups/feng-ubuntu-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"444b4dd6-0bde-46f7-aaf7-e81e9f748258\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-ubuntu388"}]}},{"name":"jlvmwin1-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9b65c627-f3bc-4682-9f3f-37798414e70e","securityRules":[{"name":"RDP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/securityRules/RDP","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkSecurityGroups/jlvmwin1-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"f7750996-3a70-41e1-b8c1-456e212982c5\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184"}]}},{"name":"yugangw1NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"1b94e33b-7f57-4b2f-aa0f-b3b7e606abdf","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/securityRules/default-allow-ssh","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkSecurityGroups/yugangw1NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"68d9aec4-8def-4a87-a68e-5a2fbf4151e3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw1VMNic"}]}},{"name":"zuhWin-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"70ec8b54-e05c-4cef-8663-1bd6cb7dc65c","securityRules":[{"name":"Port_3389","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/securityRules/Port_3389","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWin-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"059c7978-1c9f-4133-bc54-135ba877ba1e\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154"}]}},{"name":"test_vm1NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"84371eda-07a4-4057-a5e4-486d4d81b6c6","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/securityRules/default-allow-ssh","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm1NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"3a89657e-fc2c-4cad-9d71-3050de2ff5a3\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm1VMNic"}]}},{"name":"test_vm2NSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"b0c50336-10a2-4b4e-a78d-54d34f1a457e","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/securityRules/default-allow-ssh","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkSecurityGroups/test_vm2NSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"6e8a6876-2fcb-4c01-8150-b9dc8ab21f65\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm2VMNic"}]}},{"name":"zuhCentOS-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"7d7c7686-a1be-4a06-9cc9-d5b003ecb6fd","securityRules":[{"name":"HTTP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/securityRules/HTTP","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/securityRules/HTTPS","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/securityRules/SSH","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/securityRules/RDP","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOS-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"3fe25037-1201-4730-9b6d-7a9d0ed0ca85\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}]}},{"name":"zuhCentOSnsg814","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"c1963726-e663-4563-bb02-f95abdf57625","securityRules":[{"name":"HTTP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/securityRules/HTTP","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/securityRules/HTTPS","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/securityRules/SSH","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/securityRules/RDP","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/AllowVnetInBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/DenyAllInBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhCentOSnsg814/defaultSecurityRules/DenyAllOutBound","etag":"W/\"6acd6e86-70ac-4704-b60b-7cf7aed9b778\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285"}]}},{"name":"zuhWindows2016-nsg","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"48082bc6-8192-4662-a146-c3df89310835","securityRules":[{"name":"SSH","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/securityRules/SSH","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":300,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/securityRules/HTTP","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"80","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":320,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"HTTPS","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/securityRules/HTTPS","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"443","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":340,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"RDP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/securityRules/RDP","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"TCP","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":360,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/AllowVnetInBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/DenyAllInBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkSecurityGroups/zuhWindows2016-nsg/defaultSecurityRules/DenyAllOutBound","etag":"W/\"f69750ad-7bd3-4596-a5cb-766cabf1c783\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246"}]}},{"name":"vm-storage-sku-testNSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0b9da223-a223-4cec-ba40-92b311ace383","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/securityRules/default-allow-ssh","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkSecurityGroups/vm-storage-sku-testNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"e0a0a7df-526e-4b37-9f16-db314aa8350f\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkInterfaces/vm-storage-sku-testVMNic"}]}},{"name":"vm-ultrassdNSG","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f6f25400-6a96-434c-9ce5-3c72450139ce","securityRules":[{"name":"default-allow-ssh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/securityRules/default-allow-ssh","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"22","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/defaultSecurityRules/AllowVnetInBound","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/defaultSecurityRules/DenyAllInBound","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/networkSecurityGroups/vm-ultrassdNSG/defaultSecurityRules/DenyAllOutBound","etag":"W/\"11e28649-22e6-4382-8139-e289725eedf6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/0/networkInterfaces/vmultd1f9Nic"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/1/networkInterfaces/vmultd1f9Nic"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/2/networkInterfaces/vmultd1f9Nic"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/3/networkInterfaces/vmultd1f9Nic"}]}},{"name":"fooziipy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"b3d500bf-9a32-4046-928d-e52442ff5338","securityRules":[{"name":"fooziipy983389","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/securityRules/fooziipy983389","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"fooziipy985985","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/securityRules/fooziipy985985","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/AllowVnetInBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/DenyAllInBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkSecurityGroups/fooziipy98/defaultSecurityRules/DenyAllOutBound","etag":"W/\"8c832172-96d5-4d06-a31c-b1589325cb51\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98"}]}},{"name":"fooziipy99","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"b012046c-c5e7-47ef-8ea3-5c7c2faea68a","securityRules":[{"name":"fooziipy993389","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/securityRules/fooziipy993389","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"3389","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"fooziipy995985","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/securityRules/fooziipy995985","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/securityRules","properties":{"provisioningState":"Succeeded","protocol":"Tcp","sourcePortRange":"*","destinationPortRange":"5985","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Allow","priority":1001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"defaultSecurityRules":[{"name":"AllowVnetInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/AllowVnetInBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowAzureLoadBalancerInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/AllowAzureLoadBalancerInBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + inbound traffic from azure load balancer","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"AzureLoadBalancer","destinationAddressPrefix":"*","access":"Allow","priority":65001,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllInBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/DenyAllInBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all inbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Inbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowVnetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/AllowVnetOutBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to all VMs in VNET","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"VirtualNetwork","destinationAddressPrefix":"VirtualNetwork","access":"Allow","priority":65000,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"AllowInternetOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/AllowInternetOutBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Allow + outbound traffic from all VMs to Internet","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"Internet","access":"Allow","priority":65001,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}},{"name":"DenyAllOutBound","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkSecurityGroups/fooziipy99/defaultSecurityRules/DenyAllOutBound","etag":"W/\"cdb4c235-74be-42ef-a875-96912a94cdb6\"","type":"Microsoft.Network/networkSecurityGroups/defaultSecurityRules","properties":{"provisioningState":"Succeeded","description":"Deny + all outbound traffic","protocol":"*","sourcePortRange":"*","destinationPortRange":"*","sourceAddressPrefix":"*","destinationAddressPrefix":"*","access":"Deny","priority":65500,"direction":"Outbound","sourcePortRanges":[],"destinationPortRanges":[],"sourceAddressPrefixes":[],"destinationAddressPrefixes":[]}}],"networkInterfaces":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99"}]}}]}' headers: cache-control: - no-cache @@ -865,10 +865,10 @@ interactions: accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ + string: "{\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ ,\r\n \"etag\": \"W/\\\"c12523cd-5b80-4061-b0c5-eb0bfe4737ec\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\",\r\n\ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ @@ -881,7 +881,7 @@ interactions: : []\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/9c410b4d-f9c6-4e5d-80f4-7dc0b998a611?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/9c410b4d-f9c6-4e5d-80f4-7dc0b998a611?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -921,7 +921,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/9c410b4d-f9c6-4e5d-80f4-7dc0b998a611?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/9c410b4d-f9c6-4e5d-80f4-7dc0b998a611?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -967,10 +967,10 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ + string: "{\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ ,\r\n \"etag\": \"W/\\\"1ed19568-9ec9-40bc-bcef-a2149584495f\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\",\r\n\ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ @@ -1027,10 +1027,10 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ + string: "{\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ ,\r\n \"etag\": \"W/\\\"1ed19568-9ec9-40bc-bcef-a2149584495f\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\",\r\n\ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ @@ -1087,11 +1087,11 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pysecgrouprulec575136b\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pysecgrouprulec575136b\"\ ,\r\n \"etag\": \"W/\\\"1ed19568-9ec9-40bc-bcef-a2149584495f\\\"\",\r\ \n \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ @@ -1102,7 +1102,7 @@ interactions: \n \"direction\": \"Inbound\",\r\n \"sourcePortRanges\": [],\r\ \n \"destinationPortRanges\": [],\r\n \"sourceAddressPrefixes\"\ : [],\r\n \"destinationAddressPrefixes\": []\r\n }\r\n },\r\ - \n {\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ + \n {\r\n \"name\": \"pynewrulec575136b\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b\"\ ,\r\n \"etag\": \"W/\\\"1ed19568-9ec9-40bc-bcef-a2149584495f\\\"\",\r\ \n \"type\": \"Microsoft.Network/networkSecurityGroups/securityRules\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ @@ -1160,13 +1160,13 @@ interactions: accept-language: - en-US method: DELETE - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b/securityRules/pynewrulec575136b?api-version=2019-09-01 response: body: string: '' headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/08f8b0c7-0047-4bb6-909a-fad2198cb493?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/08f8b0c7-0047-4bb6-909a-fad2198cb493?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -1176,7 +1176,7 @@ interactions: expires: - '-1' location: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operationResults/08f8b0c7-0047-4bb6-909a-fad2198cb493?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/08f8b0c7-0047-4bb6-909a-fad2198cb493?api-version=2019-09-01 pragma: - no-cache server: @@ -1206,7 +1206,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/08f8b0c7-0047-4bb6-909a-fad2198cb493?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/08f8b0c7-0047-4bb6-909a-fad2198cb493?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -1256,13 +1256,13 @@ interactions: accept-language: - en-US method: DELETE - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_network_security_groupsc575136b/providers/Microsoft.Network/networkSecurityGroups/pysecgroupc575136b?api-version=2019-09-01 response: body: string: '' headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/dc3fc943-10f8-4daa-b870-030ba13f6595?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/dc3fc943-10f8-4daa-b870-030ba13f6595?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -1272,7 +1272,7 @@ interactions: expires: - '-1' location: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operationResults/dc3fc943-10f8-4daa-b870-030ba13f6595?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/dc3fc943-10f8-4daa-b870-030ba13f6595?api-version=2019-09-01 pragma: - no-cache server: @@ -1302,7 +1302,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/dc3fc943-10f8-4daa-b870-030ba13f6595?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/dc3fc943-10f8-4daa-b870-030ba13f6595?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_public_ip_addresses.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_public_ip_addresses.yaml index 6000eae257fc..4da2ed22a507 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_public_ip_addresses.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_public_ip_addresses.yaml @@ -19,10 +19,10 @@ interactions: accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyipname773e115f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ + string: "{\r\n \"name\": \"pyipname773e115f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ ,\r\n \"etag\": \"W/\\\"333ce44c-de4c-4218-b0e3-2cc8959dd472\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"tags\": {\r\n \"key\": \"value\"\r\n\ \ },\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\ @@ -33,7 +33,7 @@ interactions: : {\r\n \"name\": \"Basic\",\r\n \"tier\": \"Regional\"\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/99b8cc9c-d644-495f-936c-f33b81496cd7?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/99b8cc9c-d644-495f-936c-f33b81496cd7?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -73,7 +73,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/99b8cc9c-d644-495f-936c-f33b81496cd7?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/99b8cc9c-d644-495f-936c-f33b81496cd7?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -119,10 +119,10 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyipname773e115f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ + string: "{\r\n \"name\": \"pyipname773e115f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ ,\r\n \"etag\": \"W/\\\"ab5ede00-080a-40dd-a7b0-45ea7b547c49\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"tags\": {\r\n \"key\": \"value\"\r\n\ \ },\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\ @@ -177,10 +177,10 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyipname773e115f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ + string: "{\r\n \"name\": \"pyipname773e115f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ ,\r\n \"etag\": \"W/\\\"ab5ede00-080a-40dd-a7b0-45ea7b547c49\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"tags\": {\r\n \"key\": \"value\"\r\n\ \ },\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\ @@ -235,11 +235,11 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pyipname773e115f\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f\"\ ,\r\n \"etag\": \"W/\\\"ab5ede00-080a-40dd-a7b0-45ea7b547c49\\\"\",\r\ \n \"location\": \"westus\",\r\n \"tags\": {\r\n \"key\"\ : \"value\"\r\n },\r\n \"properties\": {\r\n \"provisioningState\"\ @@ -293,10 +293,10 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/publicIPAddresses?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/publicIPAddresses?api-version=2019-09-01 response: body: - string: '{"value":[{"name":"myip1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_frontend_ip_private4g2fakklpk5ifocmi72mw5gmvhf3zvf5u3bonj2eehlq/providers/Microsoft.Network/publicIPAddresses/myip1","etag":"W/\"cbffbe7c-4200-4423-bc3d-b499673db231\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"31425e06-df12-4e03-bfeb-4692663084f6","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"pip1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_rewrite_rulesetspm5eoivju7bbk7ji5ig4m5nuu4yreqobo4eio2uj34rrqvf/providers/Microsoft.Network/publicIPAddresses/pip1","etag":"W/\"0a67f9ae-9ffb-4f78-be44-66101b8a9c5b\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"c914d964-e320-400e-a0f8-839c6d52d80d","ipAddress":"13.86.251.247","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"pip1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_rewrite_rulesetsqdemdi2b6abi4kp6jz2yqszfx47uy35cdveusufscfyjrck/providers/Microsoft.Network/publicIPAddresses/pip1","etag":"W/\"11faf0e2-6719-4227-98bf-38ac0cbeae4d\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"c39c4e10-277d-48e7-98ed-ebeeb6262d6a","ipAddress":"13.86.249.150","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"pip1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_app_gateway_waf_configqmmu6wjrdktmmocgings2wpaeenqmgbn7xf2eug5swlm/providers/Microsoft.Network/publicIPAddresses/pip1","etag":"W/\"853d031c-2898-4ef6-a16d-ec3754b8f9ff\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f1cc2c50-b66c-42cf-9f72-22090fc9f20b","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vmss1LBPublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP","etag":"W/\"21282bef-ac33-4690-b9ca-cefe4f27b8bd\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f54d6572-a934-4587-b809-9f34ee2df61b","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"feng-rhel-8PublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/feng-rhel-8PublicIP","etag":"W/\"69a4def0-9093-474c-9b3f-1968b99b213e\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"43ff13e1-ab31-49dd-84f5-3d9bb820344d","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-rhel-8VMNic/ipConfigurations/ipconfigfeng-rhel-8"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fengip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/fengip","etag":"W/\"f17c5c29-1620-4789-801a-c46b60ea016e\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"f3890ab5-fde6-428d-a3bb-a8ec50495af9","ipAddress":"104.42.199.57","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworkGateways/fenggw/ipConfigurations/default"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fengubuntu-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/fengubuntu-ip","etag":"W/\"a42b5d2f-27ed-4f28-a546-c94bd0291808\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"d038d945-2784-4dae-9b9c-61587228ebc6","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fengubuntuip681","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/fengubuntuip681","etag":"W/\"fb99347c-429c-4355-97a9-994ca414d85b\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"c4d97e4a-22dc-4bbc-9653-a42e9a46b9d9","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"feng_rhel_8PublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/feng_rhel_8PublicIP","etag":"W/\"7ce138cc-230b-437d-8306-e32554f3752b\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"3448fae2-c681-4512-85db-d4e38f5885d2","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng_rhel_8VMNic/ipConfigurations/ipconfigfeng_rhel_8"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"harold-ip-01","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/harold-ip-01","etag":"W/\"d9f00f57-d868-4bcc-8051-6e79df12f122\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"be8f07dd-60fa-4471-9b93-3a82e6d6c4d7","ipAddress":"40.112.134.247","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworkGateways/harold-vnet-gw-01/ipConfigurations/default"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"harold-ip-02","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/harold-ip-02","etag":"W/\"e2980969-e7cf-47ed-a9fa-31748b5fbaf5\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"21c57eb7-4722-45b4-a947-16478305952b","ipAddress":"104.42.62.128","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworkGateways/harold-vnet-gw-02/ipConfigurations/vnetGatewayConfig0"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"harold-ip-03","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/harold-ip-03","etag":"W/\"22711541-4c8d-4ce5-8972-11c37dc18253\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"012db76f-8b26-4017-8bcf-84658647d8f8","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"harold-ip-04","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/harold-ip-04","etag":"W/\"6da8dd7d-64ea-4cba-b176-3e534d97e9ae\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"8947827d-3156-4aa5-a02d-cb5ee161c160","ipAddress":"13.86.196.230","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/azureFirewalls/harold-fw-01/azureFirewallIpConfigurations/IpConf"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"vm-01-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/vm-01-ip","etag":"W/\"d1887c42-594b-4387-8ed8-5ae5858a1dbf\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"7c90b602-b4f4-49de-8948-2adf0de03554","ipAddress":"40.112.165.142","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-01543/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm-02-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/vm-02-ip","etag":"W/\"9ffb4a12-8971-4db4-bdd7-47208d37b102\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"566e0eed-413f-405e-960f-5c7db5cf885f","ipAddress":"104.42.174.180","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-02540/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"aPublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/aPublicIP","etag":"W/\"952770b9-54d1-4ab3-9115-c84cc2ffaea5\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"16d71fe5-d128-4e03-bb9c-14783993d81b","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic/ipConfigurations/ipconfiga"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"asdfLBPublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/asdfLBPublicIP","etag":"W/\"03eb3149-a5e4-48ac-ba08-a1de1b15e98c\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"98662e45-2a17-4b40-b7e7-ba18729cd3a6","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"start-1PublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/start-1PublicIP","etag":"W/\"6bd25edd-2c48-4399-a9f4-c4b0f1e168ef\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"49f0b2b3-658f-4ed7-a555-127f33a25ba9","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic/ipConfigurations/ipconfigstart-1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm5LBPublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/vm5LBPublicIP","etag":"W/\"2a5e9243-3c45-4601-bc23-7d8fc816ad55\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"8802e8ca-267a-4c22-9b59-fb6f5f1d982d","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"pyipname773e115f","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f","etag":"W/\"ab5ede00-080a-40dd-a7b0-45ea7b547c49\"","location":"westus","tags":{"key":"value"},"properties":{"provisioningState":"Succeeded","resourceGuid":"e87c6762-e2e8-49cc-9011-82fbb711949a","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zimsvm-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/publicIPAddresses/zimsvm-ip","etag":"W/\"b752dcff-a821-4382-a8e0-e4500e8997a9\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"54d90c8d-674e-457f-bf83-d79546ceafd3","ipAddress":"40.78.6.167","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkInterfaces/zimsvm64/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fozippy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/publicIPAddresses/fozippy98","etag":"W/\"2232332e-df20-4b5a-ac6f-bc2c6a083e37\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"b93c103a-f62e-4fc1-bc1d-d2db4fc084ac","ipAddress":"52.224.138.66","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"dnsSettings":{"domainNameLabel":"fozippy98-663ad9","fqdn":"fozippy98-663ad9.eastus.cloudapp.azure.com"},"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"vmss1LBPublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP","etag":"W/\"d51b26cb-3f42-4430-bbe8-df4298ed3dce\"","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"8cd59277-0aa2-4e6e-97da-3c26dfc1459f","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vmss2LBPublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/publicIPAddresses/vmss2LBPublicIP","etag":"W/\"bd0b6f0c-87d6-4997-9a16-a3758ec55c98\"","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d19878c0-bec6-4e71-827d-e436a702fe99","ipAddress":"52.186.13.33","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhlinux-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhlinux-ip","etag":"W/\"b2dea91b-b5e7-4735-ad88-e2c401740066\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"005cc893-a7f4-46e1-bf41-348f11ab0aec","ipAddress":"52.224.51.51","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhtestip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhtestip","etag":"W/\"f3d7f2f1-5b8e-4adf-8d81-3e84c7a9ffd9\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"8a670d8c-f98e-4c4c-a89c-8388b960a5b0","ipAddress":"52.151.240.59","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/applicationGateways/aaaaa/frontendIPConfigurations/appGwPublicFrontendIp"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"zuhtestvm-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhtestvm-ip","etag":"W/\"44707c4b-5976-471b-b9a1-1ddf9401b1a5\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"970083ff-29f0-4c04-bdd7-5e989819309a","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhUbuntu-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhUbuntu-ip","etag":"W/\"a13042b0-8358-4245-8d08-128017e17c99\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"7279e09f-89d0-421f-aee5-a148f82c503e","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm22-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/publicIPAddresses/vm22-ip","etag":"W/\"2015b2b9-354f-43da-8dbd-76172332e5d4\"","location":"eastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9b9cee2b-6b27-46f1-a140-da711e07b716","ipAddress":"52.175.18.106","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"feng-ubuntu-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/feng-ubuntu-ip","etag":"W/\"1122ca29-7f82-4819-918f-df5b0ee29931\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"3423c6e2-2fb4-45a7-b59c-619f64937ba5","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-ubuntu388/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"jlvmwin1-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/publicIPAddresses/jlvmwin1-ip","etag":"W/\"5ad463a0-31e2-4c31-a64c-d20a14ed387a\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"2bd424bf-f1b4-4d14-abd2-54f10f77d9e4","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"yugangw1PublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/publicIPAddresses/yugangw1PublicIP","etag":"W/\"57983cc0-948c-4c1c-ba18-8afbd5d6d9c6\"","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"1c695c95-ce9b-4645-860f-bdc46d189ca4","ipAddress":"23.98.67.194","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw1VMNic/ipConfigurations/ipconfigyugangw1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhWin-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhWin-ip","etag":"W/\"5d880cb0-4ae3-43ca-89b8-b109a67e77a4\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"2a645b1e-8c8b-4745-b910-c3406741a982","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"pubip1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/publicIPAddresses/pubip1","etag":"W/\"3e086f49-5e98-4a1a-93c2-cdb47c939438\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0ce167ab-248b-4011-874f-54ba6c3b86b3","ipAddress":"13.86.103.233","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/LoadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"test_vm1PublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/publicIPAddresses/test_vm1PublicIP","etag":"W/\"24afccbb-d703-49a3-a0f2-1cfa7052589f\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"b56a0720-66f3-4ecf-997a-6b0209a08d3e","ipAddress":"23.99.204.236","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm1VMNic/ipConfigurations/ipconfigtest_vm1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"test_vm2PublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/publicIPAddresses/test_vm2PublicIP","etag":"W/\"8c6f51c4-97ef-401f-a27e-28cb6100bcde\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"9f69730e-4f26-4277-9ef8-4145e6c1c29a","ipAddress":"23.99.203.167","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm2VMNic/ipConfigurations/ipconfigtest_vm2"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhCentOS-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhCentOS-ip","etag":"W/\"edf38eeb-225b-41cf-8c27-d7da5d9fc180\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"0443d949-d8cd-4889-aea2-cec9ddd87239","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhCentOSip151","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhCentOSip151","etag":"W/\"18914e24-75c5-4e97-a768-45ea80c41e96\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"e8a13fb9-f6dd-4e89-b2f8-e7678e1b59a0","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhWindows2016-ip","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhWindows2016-ip","etag":"W/\"313d736b-d53b-466e-9775-2bfd81fe273b\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"61922e62-2cc1-414e-9380-5f4016cddce8","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm-storage-sku-testPublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/publicIPAddresses/vm-storage-sku-testPublicIP","etag":"W/\"0b74d171-c611-46c7-a77b-1573d4b4c4a9\"","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"89cd12bf-caf1-4120-b72f-129f545ed517","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkInterfaces/vm-storage-sku-testVMNic/ipConfigurations/ipconfigvm-storage-sku-test"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm-ultrassdLBPublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/publicIPAddresses/vm-ultrassdLBPublicIP","etag":"W/\"16e603f2-4b46-4929-8e30-5daf0e16cf94\"","location":"eastus2","tags":{},"zones":["2"],"properties":{"provisioningState":"Succeeded","resourceGuid":"02ecfe55-5be9-4f04-811c-63dcbed42417","ipAddress":"52.147.177.6","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"vmss0LBPublicIP","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/publicIPAddresses/vmss0LBPublicIP","etag":"W/\"f8da04af-72a5-453c-b971-e40555798dc3\"","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"be2330ca-dd45-4c7e-bd6a-2e4cbd6e9733","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fooziipy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/publicIPAddresses/fooziipy98","etag":"W/\"abfc07e9-2ee4-4b48-90ad-bffc3160f0f8\"","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"85bd582f-894e-4e72-a920-9dc42fe312fc","ipAddress":"52.167.113.130","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"dnsSettings":{"domainNameLabel":"fooziipy98-4d328e","fqdn":"fooziipy98-4d328e.eastus2.cloudapp.azure.com"},"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98/ipConfigurations/fooziipy98"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fooziipy99","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/publicIPAddresses/fooziipy99","etag":"W/\"f2c111c2-14c8-41d9-9740-8241ba2ffaa0\"","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"10524d83-41ef-420b-bac0-fc8b7cf2101d","ipAddress":"104.208.166.249","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"dnsSettings":{"domainNameLabel":"fooziipy99-4e3d17","fqdn":"fooziipy99-4e3d17.eastus2.cloudapp.azure.com"},"ipTags":[],"ipConfiguration":{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99/ipConfigurations/fooziipy99"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}}]}' + string: '{"value":[{"name":"myip1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_frontend_ip_private4g2fakklpk5ifocmi72mw5gmvhf3zvf5u3bonj2eehlq/providers/Microsoft.Network/publicIPAddresses/myip1","etag":"W/\"cbffbe7c-4200-4423-bc3d-b499673db231\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"31425e06-df12-4e03-bfeb-4692663084f6","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"pip1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_rewrite_rulesetspm5eoivju7bbk7ji5ig4m5nuu4yreqobo4eio2uj34rrqvf/providers/Microsoft.Network/publicIPAddresses/pip1","etag":"W/\"0a67f9ae-9ffb-4f78-be44-66101b8a9c5b\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"c914d964-e320-400e-a0f8-839c6d52d80d","ipAddress":"13.86.251.247","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"pip1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_rewrite_rulesetsqdemdi2b6abi4kp6jz2yqszfx47uy35cdveusufscfyjrck/providers/Microsoft.Network/publicIPAddresses/pip1","etag":"W/\"11faf0e2-6719-4227-98bf-38ac0cbeae4d\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"c39c4e10-277d-48e7-98ed-ebeeb6262d6a","ipAddress":"13.86.249.150","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"pip1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_app_gateway_waf_configqmmu6wjrdktmmocgings2wpaeenqmgbn7xf2eug5swlm/providers/Microsoft.Network/publicIPAddresses/pip1","etag":"W/\"853d031c-2898-4ef6-a16d-ec3754b8f9ff\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f1cc2c50-b66c-42cf-9f72-22090fc9f20b","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vmss1LBPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP","etag":"W/\"21282bef-ac33-4690-b9ca-cefe4f27b8bd\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f54d6572-a934-4587-b809-9f34ee2df61b","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"feng-rhel-8PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/feng-rhel-8PublicIP","etag":"W/\"69a4def0-9093-474c-9b3f-1968b99b213e\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"43ff13e1-ab31-49dd-84f5-3d9bb820344d","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-rhel-8VMNic/ipConfigurations/ipconfigfeng-rhel-8"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fengip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/fengip","etag":"W/\"f17c5c29-1620-4789-801a-c46b60ea016e\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"f3890ab5-fde6-428d-a3bb-a8ec50495af9","ipAddress":"104.42.199.57","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworkGateways/fenggw/ipConfigurations/default"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fengubuntu-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/fengubuntu-ip","etag":"W/\"a42b5d2f-27ed-4f28-a546-c94bd0291808\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"d038d945-2784-4dae-9b9c-61587228ebc6","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fengubuntuip681","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/fengubuntuip681","etag":"W/\"fb99347c-429c-4355-97a9-994ca414d85b\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"c4d97e4a-22dc-4bbc-9653-a42e9a46b9d9","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"feng_rhel_8PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/feng_rhel_8PublicIP","etag":"W/\"7ce138cc-230b-437d-8306-e32554f3752b\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"3448fae2-c681-4512-85db-d4e38f5885d2","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng_rhel_8VMNic/ipConfigurations/ipconfigfeng_rhel_8"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"harold-ip-01","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/harold-ip-01","etag":"W/\"d9f00f57-d868-4bcc-8051-6e79df12f122\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"be8f07dd-60fa-4471-9b93-3a82e6d6c4d7","ipAddress":"40.112.134.247","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworkGateways/harold-vnet-gw-01/ipConfigurations/default"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"harold-ip-02","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/harold-ip-02","etag":"W/\"e2980969-e7cf-47ed-a9fa-31748b5fbaf5\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"21c57eb7-4722-45b4-a947-16478305952b","ipAddress":"104.42.62.128","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworkGateways/harold-vnet-gw-02/ipConfigurations/vnetGatewayConfig0"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"harold-ip-03","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/harold-ip-03","etag":"W/\"22711541-4c8d-4ce5-8972-11c37dc18253\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"012db76f-8b26-4017-8bcf-84658647d8f8","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"harold-ip-04","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/harold-ip-04","etag":"W/\"6da8dd7d-64ea-4cba-b176-3e534d97e9ae\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"8947827d-3156-4aa5-a02d-cb5ee161c160","ipAddress":"13.86.196.230","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/azureFirewalls/harold-fw-01/azureFirewallIpConfigurations/IpConf"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"vm-01-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/vm-01-ip","etag":"W/\"d1887c42-594b-4387-8ed8-5ae5858a1dbf\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"7c90b602-b4f4-49de-8948-2adf0de03554","ipAddress":"40.112.165.142","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-01543/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm-02-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/publicIPAddresses/vm-02-ip","etag":"W/\"9ffb4a12-8971-4db4-bdd7-47208d37b102\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"566e0eed-413f-405e-960f-5c7db5cf885f","ipAddress":"104.42.174.180","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-02540/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"aPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/aPublicIP","etag":"W/\"952770b9-54d1-4ab3-9115-c84cc2ffaea5\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"16d71fe5-d128-4e03-bb9c-14783993d81b","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic/ipConfigurations/ipconfiga"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"asdfLBPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/asdfLBPublicIP","etag":"W/\"03eb3149-a5e4-48ac-ba08-a1de1b15e98c\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"98662e45-2a17-4b40-b7e7-ba18729cd3a6","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/asdfLB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"start-1PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/start-1PublicIP","etag":"W/\"6bd25edd-2c48-4399-a9f4-c4b0f1e168ef\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"49f0b2b3-658f-4ed7-a555-127f33a25ba9","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic/ipConfigurations/ipconfigstart-1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm5LBPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/publicIPAddresses/vm5LBPublicIP","etag":"W/\"2a5e9243-3c45-4601-bc23-7d8fc816ad55\"","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"8802e8ca-267a-4c22-9b59-fb6f5f1d982d","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/loadBalancers/vm5LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"pyipname773e115f","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f","etag":"W/\"ab5ede00-080a-40dd-a7b0-45ea7b547c49\"","location":"westus","tags":{"key":"value"},"properties":{"provisioningState":"Succeeded","resourceGuid":"e87c6762-e2e8-49cc-9011-82fbb711949a","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zimsvm-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zimsstuff/providers/Microsoft.Network/publicIPAddresses/zimsvm-ip","etag":"W/\"b752dcff-a821-4382-a8e0-e4500e8997a9\"","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"54d90c8d-674e-457f-bf83-d79546ceafd3","ipAddress":"40.78.6.167","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zimsstuff/providers/Microsoft.Network/networkInterfaces/zimsvm64/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fozippy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/publicIPAddresses/fozippy98","etag":"W/\"2232332e-df20-4b5a-ac6f-bc2c6a083e37\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"b93c103a-f62e-4fc1-bc1d-d2db4fc084ac","ipAddress":"52.224.138.66","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"dnsSettings":{"domainNameLabel":"fozippy98-663ad9","fqdn":"fozippy98-663ad9.eastus.cloudapp.azure.com"},"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/loadBalancers/fozippy98/frontendIPConfigurations/fozippy98"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"vmss1LBPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/publicIPAddresses/vmss1LBPublicIP","etag":"W/\"d51b26cb-3f42-4430-bbe8-df4298ed3dce\"","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"8cd59277-0aa2-4e6e-97da-3c26dfc1459f","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss1LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vmss2LBPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/publicIPAddresses/vmss2LBPublicIP","etag":"W/\"bd0b6f0c-87d6-4997-9a16-a3758ec55c98\"","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d19878c0-bec6-4e71-827d-e436a702fe99","ipAddress":"52.186.13.33","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/loadBalancers/vmss2LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhlinux-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhlinux-ip","etag":"W/\"b2dea91b-b5e7-4735-ad88-e2c401740066\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"005cc893-a7f4-46e1-bf41-348f11ab0aec","ipAddress":"52.224.51.51","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhtestip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhtestip","etag":"W/\"f3d7f2f1-5b8e-4adf-8d81-3e84c7a9ffd9\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"8a670d8c-f98e-4c4c-a89c-8388b960a5b0","ipAddress":"52.151.240.59","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/applicationGateways/aaaaa/frontendIPConfigurations/appGwPublicFrontendIp"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"zuhtestvm-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhtestvm-ip","etag":"W/\"44707c4b-5976-471b-b9a1-1ddf9401b1a5\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"970083ff-29f0-4c04-bdd7-5e989819309a","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhUbuntu-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhUbuntu-ip","etag":"W/\"a13042b0-8358-4245-8d08-128017e17c99\"","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"7279e09f-89d0-421f-aee5-a148f82c503e","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm22-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/publicIPAddresses/vm22-ip","etag":"W/\"2015b2b9-354f-43da-8dbd-76172332e5d4\"","location":"eastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9b9cee2b-6b27-46f1-a140-da711e07b716","ipAddress":"52.175.18.106","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"feng-ubuntu-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/publicIPAddresses/feng-ubuntu-ip","etag":"W/\"1122ca29-7f82-4819-918f-df5b0ee29931\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"3423c6e2-2fb4-45a7-b59c-619f64937ba5","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-ubuntu388/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"jlvmwin1-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/publicIPAddresses/jlvmwin1-ip","etag":"W/\"5ad463a0-31e2-4c31-a64c-d20a14ed387a\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"2bd424bf-f1b4-4d14-abd2-54f10f77d9e4","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"yugangw1PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/publicIPAddresses/yugangw1PublicIP","etag":"W/\"57983cc0-948c-4c1c-ba18-8afbd5d6d9c6\"","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"1c695c95-ce9b-4645-860f-bdc46d189ca4","ipAddress":"23.98.67.194","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw1VMNic/ipConfigurations/ipconfigyugangw1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhWin-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhWin-ip","etag":"W/\"5d880cb0-4ae3-43ca-89b8-b109a67e77a4\"","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"2a645b1e-8c8b-4745-b910-c3406741a982","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"pubip1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/publicIPAddresses/pubip1","etag":"W/\"3e086f49-5e98-4a1a-93c2-cdb47c939438\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0ce167ab-248b-4011-874f-54ba6c3b86b3","ipAddress":"13.86.103.233","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/LoadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"test_vm1PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/publicIPAddresses/test_vm1PublicIP","etag":"W/\"24afccbb-d703-49a3-a0f2-1cfa7052589f\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"b56a0720-66f3-4ecf-997a-6b0209a08d3e","ipAddress":"23.99.204.236","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm1VMNic/ipConfigurations/ipconfigtest_vm1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"test_vm2PublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/publicIPAddresses/test_vm2PublicIP","etag":"W/\"8c6f51c4-97ef-401f-a27e-28cb6100bcde\"","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"9f69730e-4f26-4277-9ef8-4145e6c1c29a","ipAddress":"23.99.203.167","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm2VMNic/ipConfigurations/ipconfigtest_vm2"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhCentOS-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhCentOS-ip","etag":"W/\"edf38eeb-225b-41cf-8c27-d7da5d9fc180\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"0443d949-d8cd-4889-aea2-cec9ddd87239","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[]},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhCentOSip151","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhCentOSip151","etag":"W/\"18914e24-75c5-4e97-a768-45ea80c41e96\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"e8a13fb9-f6dd-4e89-b2f8-e7678e1b59a0","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"zuhWindows2016-ip","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/publicIPAddresses/zuhWindows2016-ip","etag":"W/\"313d736b-d53b-466e-9775-2bfd81fe273b\"","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"61922e62-2cc1-414e-9380-5f4016cddce8","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246/ipConfigurations/ipconfig1"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm-storage-sku-testPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/publicIPAddresses/vm-storage-sku-testPublicIP","etag":"W/\"0b74d171-c611-46c7-a77b-1573d4b4c4a9\"","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"89cd12bf-caf1-4120-b72f-129f545ed517","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkInterfaces/vm-storage-sku-testVMNic/ipConfigurations/ipconfigvm-storage-sku-test"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"vm-ultrassdLBPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/publicIPAddresses/vm-ultrassdLBPublicIP","etag":"W/\"16e603f2-4b46-4929-8e30-5daf0e16cf94\"","location":"eastus2","tags":{},"zones":["2"],"properties":{"provisioningState":"Succeeded","resourceGuid":"02ecfe55-5be9-4f04-811c-63dcbed42417","ipAddress":"52.147.177.6","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/loadBalancers/vm-ultrassdLB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Standard","tier":"Regional"}},{"name":"vmss0LBPublicIP","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/publicIPAddresses/vmss0LBPublicIP","etag":"W/\"f8da04af-72a5-453c-b971-e40555798dc3\"","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"be2330ca-dd45-4c7e-bd6a-2e4cbd6e9733","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Dynamic","idleTimeoutInMinutes":4,"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/loadBalancers/vmss0LB/frontendIPConfigurations/loadBalancerFrontEnd"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fooziipy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/publicIPAddresses/fooziipy98","etag":"W/\"abfc07e9-2ee4-4b48-90ad-bffc3160f0f8\"","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"85bd582f-894e-4e72-a920-9dc42fe312fc","ipAddress":"52.167.113.130","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"dnsSettings":{"domainNameLabel":"fooziipy98-4d328e","fqdn":"fooziipy98-4d328e.eastus2.cloudapp.azure.com"},"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98/ipConfigurations/fooziipy98"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}},{"name":"fooziipy99","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/publicIPAddresses/fooziipy99","etag":"W/\"f2c111c2-14c8-41d9-9740-8241ba2ffaa0\"","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"10524d83-41ef-420b-bac0-fc8b7cf2101d","ipAddress":"104.208.166.249","publicIPAddressVersion":"IPv4","publicIPAllocationMethod":"Static","idleTimeoutInMinutes":4,"dnsSettings":{"domainNameLabel":"fooziipy99-4e3d17","fqdn":"fooziipy99-4e3d17.eastus2.cloudapp.azure.com"},"ipTags":[],"ipConfiguration":{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99/ipConfigurations/fooziipy99"}},"type":"Microsoft.Network/publicIPAddresses","sku":{"name":"Basic","tier":"Regional"}}]}' headers: cache-control: - no-cache @@ -343,13 +343,13 @@ interactions: accept-language: - en-US method: DELETE - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses/pyipname773e115f?api-version=2019-09-01 response: body: string: '' headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/108380b7-ffad-48bb-8c6d-b6ef2d08016d?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/108380b7-ffad-48bb-8c6d-b6ef2d08016d?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -359,7 +359,7 @@ interactions: expires: - '-1' location: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operationResults/108380b7-ffad-48bb-8c6d-b6ef2d08016d?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/108380b7-ffad-48bb-8c6d-b6ef2d08016d?api-version=2019-09-01 pragma: - no-cache server: @@ -389,7 +389,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/108380b7-ffad-48bb-8c6d-b6ef2d08016d?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/108380b7-ffad-48bb-8c6d-b6ef2d08016d?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -437,7 +437,7 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_public_ip_addresses773e115f/providers/Microsoft.Network/publicIPAddresses?api-version=2019-09-01 response: body: string: "{\r\n \"value\": []\r\n}" diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_routes.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_routes.yaml index 81119994a748..a7f5df7bb91d 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_routes.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_routes.yaml @@ -18,10 +18,10 @@ interactions: accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyroutetableb6760c2d\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ + string: "{\r\n \"name\": \"pyroutetableb6760c2d\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ ,\r\n \"etag\": \"W/\\\"9fe0eddf-7e38-4e56-b46a-4fc88d4c79de\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/routeTables\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ @@ -29,7 +29,7 @@ interactions: disableBgpRoutePropagation\": false,\r\n \"routes\": []\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/dca72aec-d431-411b-98e0-82b16fddecd8?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/dca72aec-d431-411b-98e0-82b16fddecd8?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -69,7 +69,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/dca72aec-d431-411b-98e0-82b16fddecd8?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/dca72aec-d431-411b-98e0-82b16fddecd8?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -115,10 +115,10 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyroutetableb6760c2d\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ + string: "{\r\n \"name\": \"pyroutetableb6760c2d\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ ,\r\n \"etag\": \"W/\\\"fb3eae54-ce59-4d30-8c87-cae0d89f335f\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/routeTables\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ @@ -170,10 +170,10 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyroutetableb6760c2d\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ + string: "{\r\n \"name\": \"pyroutetableb6760c2d\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ ,\r\n \"etag\": \"W/\\\"fb3eae54-ce59-4d30-8c87-cae0d89f335f\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/routeTables\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ @@ -225,11 +225,11 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pyroutetableb6760c2d\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ ,\r\n \"etag\": \"W/\\\"fb3eae54-ce59-4d30-8c87-cae0d89f335f\\\"\",\r\ \n \"type\": \"Microsoft.Network/routeTables\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ @@ -280,11 +280,11 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/routeTables?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/routeTables?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pyroutetableb6760c2d\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d\"\ ,\r\n \"etag\": \"W/\\\"fb3eae54-ce59-4d30-8c87-cae0d89f335f\\\"\",\r\ \n \"type\": \"Microsoft.Network/routeTables\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ @@ -339,17 +339,17 @@ interactions: accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyrouteb6760c2d\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ + string: "{\r\n \"name\": \"pyrouteb6760c2d\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ ,\r\n \"etag\": \"W/\\\"959dc85e-27ed-4e06-852d-d7ba1cf099e2\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ addressPrefix\": \"10.1.0.0/16\",\r\n \"nextHopType\": \"None\"\r\n },\r\ \n \"type\": \"Microsoft.Network/routeTables/routes\"\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/d42e684b-e31b-4dec-a71b-1087eb29c092?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/d42e684b-e31b-4dec-a71b-1087eb29c092?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -389,7 +389,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/d42e684b-e31b-4dec-a71b-1087eb29c092?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/d42e684b-e31b-4dec-a71b-1087eb29c092?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -435,10 +435,10 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyrouteb6760c2d\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ + string: "{\r\n \"name\": \"pyrouteb6760c2d\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ ,\r\n \"etag\": \"W/\\\"ca4993f8-a4ac-4593-9334-190c9c10b7f0\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ addressPrefix\": \"10.1.0.0/16\",\r\n \"nextHopType\": \"None\"\r\n },\r\ @@ -489,10 +489,10 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyrouteb6760c2d\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ + string: "{\r\n \"name\": \"pyrouteb6760c2d\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ ,\r\n \"etag\": \"W/\\\"ca4993f8-a4ac-4593-9334-190c9c10b7f0\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ addressPrefix\": \"10.1.0.0/16\",\r\n \"nextHopType\": \"None\"\r\n },\r\ @@ -543,11 +543,11 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pyrouteb6760c2d\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d\"\ ,\r\n \"etag\": \"W/\\\"ca4993f8-a4ac-4593-9334-190c9c10b7f0\\\"\",\r\ \n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.1.0.0/16\",\r\n \"nextHopType\"\ @@ -599,13 +599,13 @@ interactions: accept-language: - en-US method: DELETE - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d/routes/pyrouteb6760c2d?api-version=2019-09-01 response: body: string: '' headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/57313418-aff5-4752-9ca8-9c6690bb8fb8?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/57313418-aff5-4752-9ca8-9c6690bb8fb8?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -615,7 +615,7 @@ interactions: expires: - '-1' location: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operationResults/57313418-aff5-4752-9ca8-9c6690bb8fb8?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/57313418-aff5-4752-9ca8-9c6690bb8fb8?api-version=2019-09-01 pragma: - no-cache server: @@ -645,7 +645,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/57313418-aff5-4752-9ca8-9c6690bb8fb8?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/57313418-aff5-4752-9ca8-9c6690bb8fb8?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -695,13 +695,13 @@ interactions: accept-language: - en-US method: DELETE - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_routesb6760c2d/providers/Microsoft.Network/routeTables/pyroutetableb6760c2d?api-version=2019-09-01 response: body: string: '' headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/36d750db-dbf1-4e9c-ac34-3b4656f43c4d?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/36d750db-dbf1-4e9c-ac34-3b4656f43c4d?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -711,7 +711,7 @@ interactions: expires: - '-1' location: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operationResults/36d750db-dbf1-4e9c-ac34-3b4656f43c4d?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/36d750db-dbf1-4e9c-ac34-3b4656f43c4d?api-version=2019-09-01 pragma: - no-cache server: @@ -741,7 +741,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/36d750db-dbf1-4e9c-ac34-3b4656f43c4d?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/36d750db-dbf1-4e9c-ac34-3b4656f43c4d?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_subnets.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_subnets.yaml index 0279dc54e88d..8e584eab2615 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_subnets.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_subnets.yaml @@ -21,10 +21,10 @@ interactions: accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnetc2cc0c8f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f\"\ + string: "{\r\n \"name\": \"pysubnetc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f\"\ ,\r\n \"etag\": \"W/\\\"923c09e1-7f5f-4ab8-a748-3b118c95aab8\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ @@ -33,7 +33,7 @@ interactions: \r\n ]\r\n },\r\n \"dhcpOptions\": {\r\n \"dnsServers\": [\r\ \n \"10.1.1.1\",\r\n \"10.1.2.4\"\r\n ]\r\n },\r\n \ \ \"subnets\": [\r\n {\r\n \"name\": \"pysubnetonec2cc0c8f\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ ,\r\n \"etag\": \"W/\\\"923c09e1-7f5f-4ab8-a748-3b118c95aab8\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ @@ -44,7 +44,7 @@ interactions: : false,\r\n \"enableVmProtection\": false\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/4d6b6310-28f4-4e70-be6a-9d3775981681?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/4d6b6310-28f4-4e70-be6a-9d3775981681?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -84,7 +84,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/4d6b6310-28f4-4e70-be6a-9d3775981681?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/4d6b6310-28f4-4e70-be6a-9d3775981681?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -130,10 +130,10 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnetc2cc0c8f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f\"\ + string: "{\r\n \"name\": \"pysubnetc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f\"\ ,\r\n \"etag\": \"W/\\\"cf03aa7a-b2a8-4341-b744-5a2fdceb7494\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ @@ -142,7 +142,7 @@ interactions: \r\n ]\r\n },\r\n \"dhcpOptions\": {\r\n \"dnsServers\": [\r\ \n \"10.1.1.1\",\r\n \"10.1.2.4\"\r\n ]\r\n },\r\n \ \ \"subnets\": [\r\n {\r\n \"name\": \"pysubnetonec2cc0c8f\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ ,\r\n \"etag\": \"W/\\\"cf03aa7a-b2a8-4341-b744-5a2fdceb7494\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ @@ -201,10 +201,10 @@ interactions: accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ + string: "{\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ ,\r\n \"etag\": \"W/\\\"f51c2e9f-4243-4e10-a547-aa1f2dd51ba9\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ @@ -212,7 +212,7 @@ interactions: \n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/15c29e94-b7b1-4158-bf32-79be4d0ab3b3?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/15c29e94-b7b1-4158-bf32-79be4d0ab3b3?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -252,7 +252,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/15c29e94-b7b1-4158-bf32-79be4d0ab3b3?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/15c29e94-b7b1-4158-bf32-79be4d0ab3b3?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -298,10 +298,10 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ + string: "{\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ ,\r\n \"etag\": \"W/\\\"83244fca-9923-4dd3-a293-498792f1aadd\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ @@ -353,10 +353,10 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnetc2cc0c8f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f\"\ + string: "{\r\n \"name\": \"pysubnetc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f\"\ ,\r\n \"etag\": \"W/\\\"83244fca-9923-4dd3-a293-498792f1aadd\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ @@ -365,7 +365,7 @@ interactions: \r\n ]\r\n },\r\n \"dhcpOptions\": {\r\n \"dnsServers\": [\r\ \n \"10.1.1.1\",\r\n \"10.1.2.4\"\r\n ]\r\n },\r\n \ \ \"subnets\": [\r\n {\r\n \"name\": \"pysubnetonec2cc0c8f\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ ,\r\n \"etag\": \"W/\\\"83244fca-9923-4dd3-a293-498792f1aadd\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ @@ -373,7 +373,7 @@ interactions: \ \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\n },\r\ \n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n \ \ },\r\n {\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \ - \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ ,\r\n \"etag\": \"W/\\\"83244fca-9923-4dd3-a293-498792f1aadd\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\"\ @@ -428,10 +428,10 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ + string: "{\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ ,\r\n \"etag\": \"W/\\\"83244fca-9923-4dd3-a293-498792f1aadd\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ @@ -483,18 +483,18 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pysubnetonec2cc0c8f\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnetonec2cc0c8f\"\ ,\r\n \"etag\": \"W/\\\"83244fca-9923-4dd3-a293-498792f1aadd\\\"\",\r\ \n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ : [],\r\n \"privateEndpointNetworkPolicies\": \"Enabled\",\r\n \ \ \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\n },\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n },\r\n\ - \ {\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ + \ {\r\n \"name\": \"pysubnettwoc2cc0c8f\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f\"\ ,\r\n \"etag\": \"W/\\\"83244fca-9923-4dd3-a293-498792f1aadd\\\"\",\r\ \n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\"\ @@ -548,13 +548,13 @@ interactions: accept-language: - en-US method: DELETE - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_subnetsc2cc0c8f/providers/Microsoft.Network/virtualNetworks/pysubnetc2cc0c8f/subnets/pysubnettwoc2cc0c8f?api-version=2019-09-01 response: body: string: '' headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/e94540a3-8159-41c0-9f62-c56a7a63fd30?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/e94540a3-8159-41c0-9f62-c56a7a63fd30?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -564,7 +564,7 @@ interactions: expires: - '-1' location: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operationResults/e94540a3-8159-41c0-9f62-c56a7a63fd30?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/e94540a3-8159-41c0-9f62-c56a7a63fd30?api-version=2019-09-01 pragma: - no-cache server: @@ -594,7 +594,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/e94540a3-8159-41c0-9f62-c56a7a63fd30?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/e94540a3-8159-41c0-9f62-c56a7a63fd30?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_usages.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_usages.yaml index 4d8e704a55c6..1dd13670e3e6 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_usages.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_usages.yaml @@ -14,167 +14,167 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"currentValue\": 20,\r\n \ - \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/VirtualNetworks\"\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/VirtualNetworks\"\ ,\r\n \"limit\": 1000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Virtual Networks\",\r\n \"value\": \"VirtualNetworks\"\r\n \ \ },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 3,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/StaticPublicIPAddresses\"\ + : 3,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/StaticPublicIPAddresses\"\ ,\r\n \"limit\": 1000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Static Public IP Addresses\",\r\n \"value\": \"StaticPublicIPAddresses\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 10,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/NetworkSecurityGroups\"\ + : 10,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/NetworkSecurityGroups\"\ ,\r\n \"limit\": 5000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Network Security Groups\",\r\n \"value\": \"NetworkSecurityGroups\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 21,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/PublicIPAddresses\"\ + : 21,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/PublicIPAddresses\"\ ,\r\n \"limit\": 1000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Public IP Addresses\",\r\n \"value\": \"PublicIPAddresses\"\r\n\ \ },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/PublicIpPrefixes\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/PublicIpPrefixes\"\ ,\r\n \"limit\": 2147483647,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Public Ip Prefixes\",\r\n \"value\": \"PublicIpPrefixes\"\r\n \ \ },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 12,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/NetworkInterfaces\"\ + : 12,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/NetworkInterfaces\"\ ,\r\n \"limit\": 65536,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Network Interfaces\",\r\n \"value\": \"NetworkInterfaces\"\r\n\ \ },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/PrivateEndpoints\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/PrivateEndpoints\"\ ,\r\n \"limit\": 65536,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Private Endpoints\",\r\n \"value\": \"PrivateEndpoints\"\r\n \ \ },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/PrivateEndpointRedirectMaps\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/PrivateEndpointRedirectMaps\"\ ,\r\n \"limit\": 2147483647,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Private Endpoint Redirect Maps\",\r\n \"value\": \"PrivateEndpointRedirectMaps\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 4,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/LoadBalancers\"\ + : 4,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/LoadBalancers\"\ ,\r\n \"limit\": 1000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Load Balancers\",\r\n \"value\": \"LoadBalancers\"\r\n },\r\ \n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\":\ - \ 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/PrivateLinkServices\"\ + \ 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/PrivateLinkServices\"\ ,\r\n \"limit\": 800,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Private Link Services\",\r\n \"value\": \"PrivateLinkServices\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/ApplicationGateways\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/ApplicationGateways\"\ ,\r\n \"limit\": 1000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Application Gateways\",\r\n \"value\": \"ApplicationGateways\"\r\ \n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/RouteTables\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/RouteTables\"\ ,\r\n \"limit\": 200,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Route Tables\",\r\n \"value\": \"RouteTables\"\r\n },\r\n\ \ \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\": 0,\r\ - \n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/RouteFilters\"\ + \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/RouteFilters\"\ ,\r\n \"limit\": 1000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Route Filters\",\r\n \"value\": \"RouteFilters\"\r\n },\r\n\ \ \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\": 1,\r\ - \n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/NetworkWatchers\"\ + \n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/NetworkWatchers\"\ ,\r\n \"limit\": 1,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Network Watchers\",\r\n \"value\": \"NetworkWatchers\"\r\n \ \ },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/PacketCaptures\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/PacketCaptures\"\ ,\r\n \"limit\": 10000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Packet Captures\",\r\n \"value\": \"PacketCaptures\"\r\n },\r\ \n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\":\ - \ 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/ApplicationSecurityGroups\"\ + \ 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/ApplicationSecurityGroups\"\ ,\r\n \"limit\": 3000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Application Security Groups.\",\r\n \"value\": \"ApplicationSecurityGroups\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/DdosProtectionPlans\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/DdosProtectionPlans\"\ ,\r\n \"limit\": 1,\r\n \"name\": {\r\n \"localizedValue\"\ : \"DDoS Protection Plans.\",\r\n \"value\": \"DdosProtectionPlans\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/DdosCustomPolicies\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/DdosCustomPolicies\"\ ,\r\n \"limit\": 200,\r\n \"name\": {\r\n \"localizedValue\"\ : \"DDoS customized policies\",\r\n \"value\": \"DdosCustomPolicies\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/ServiceEndpointPolicies\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/ServiceEndpointPolicies\"\ ,\r\n \"limit\": 500,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Service Endpoint Policies\",\r\n \"value\": \"ServiceEndpointPolicies\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/NetworkIntentPolicies\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/NetworkIntentPolicies\"\ ,\r\n \"limit\": 200,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Network Intent Policies\",\r\n \"value\": \"NetworkIntentPolicies\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 1,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/StandardSkuLoadBalancers\"\ + : 1,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/StandardSkuLoadBalancers\"\ ,\r\n \"limit\": 1000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Standard Sku Load Balancers\",\r\n \"value\": \"StandardSkuLoadBalancers\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 3,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/StandardSkuPublicIpAddresses\"\ + : 3,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/StandardSkuPublicIpAddresses\"\ ,\r\n \"limit\": 1000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Standard Sku Public IP Addresses\",\r\n \"value\": \"StandardSkuPublicIpAddresses\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/DnsServersPerVirtualNetwork\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/DnsServersPerVirtualNetwork\"\ ,\r\n \"limit\": 20,\r\n \"name\": {\r\n \"localizedValue\"\ : \"DNS servers per Virtual Network\",\r\n \"value\": \"DnsServersPerVirtualNetwork\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/SubnetsPerVirtualNetwork\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/SubnetsPerVirtualNetwork\"\ ,\r\n \"limit\": 3000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Subnets per Virtual Network\",\r\n \"value\": \"SubnetsPerVirtualNetwork\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/IPConfigurationsPerVirtualNetwork\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/IPConfigurationsPerVirtualNetwork\"\ ,\r\n \"limit\": 65536,\r\n \"name\": {\r\n \"localizedValue\"\ : \"IP Configurations per Virtual Network\",\r\n \"value\": \"IPConfigurationsPerVirtualNetwork\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/PeeringsPerVirtualNetwork\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/PeeringsPerVirtualNetwork\"\ ,\r\n \"limit\": 500,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Peerings per Virtual Network\",\r\n \"value\": \"PeeringsPerVirtualNetwork\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/SecurityRulesPerNetworkSecurityGroup\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/SecurityRulesPerNetworkSecurityGroup\"\ ,\r\n \"limit\": 1000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Security rules per Network Security Group\",\r\n \"value\": \"\ SecurityRulesPerNetworkSecurityGroup\"\r\n },\r\n \"unit\": \"Count\"\ - \r\n },\r\n {\r\n \"currentValue\": 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/SecurityRulesPerNetworkIntentPolicy\"\ + \r\n },\r\n {\r\n \"currentValue\": 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/SecurityRulesPerNetworkIntentPolicy\"\ ,\r\n \"limit\": 100,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Security rules per Network Intent Policy\",\r\n \"value\": \"SecurityRulesPerNetworkIntentPolicy\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/RoutesPerNetworkIntentPolicy\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/RoutesPerNetworkIntentPolicy\"\ ,\r\n \"limit\": 200,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Routes per Network Intent Policy\",\r\n \"value\": \"RoutesPerNetworkIntentPolicy\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/SecurityRuleAddressesOrPortsPerNetworkSecurityGroup\"\ ,\r\n \"limit\": 4000,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Security rules addresses or ports per Network Security Group\",\r\n \ \ \"value\": \"SecurityRuleAddressesOrPortsPerNetworkSecurityGroup\"\r\ \n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerLoadBalancer\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerLoadBalancer\"\ ,\r\n \"limit\": 250,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Inbound Rules per Load Balancer\",\r\n \"value\": \"InboundRulesPerLoadBalancer\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/FrontendIPConfigurationPerLoadBalancer\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/FrontendIPConfigurationPerLoadBalancer\"\ ,\r\n \"limit\": 200,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Frontend IP Configurations per Load Balancer\",\r\n \"value\":\ \ \"FrontendIPConfigurationPerLoadBalancer\"\r\n },\r\n \"unit\"\ : \"Count\"\r\n },\r\n {\r\n \"currentValue\": 0,\r\n \"id\"\ - : \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/OutboundRulesPerLoadBalancer\"\ + : \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/OutboundRulesPerLoadBalancer\"\ ,\r\n \"limit\": 5,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Outbound Rules per Load Balancer\",\r\n \"value\": \"OutboundRulesPerLoadBalancer\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/RoutesPerRouteTable\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/RoutesPerRouteTable\"\ ,\r\n \"limit\": 400,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Routes per Route Table\",\r\n \"value\": \"RoutesPerRouteTable\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/SecondaryIPConfigurationsPerNetworkInterface\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/SecondaryIPConfigurationsPerNetworkInterface\"\ ,\r\n \"limit\": 256,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Secondary IP Configurations per Network Interface\",\r\n \"value\"\ : \"SecondaryIPConfigurationsPerNetworkInterface\"\r\n },\r\n \"\ unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\": 0,\r\n \ - \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerNetworkInterface\"\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/InboundRulesPerNetworkInterface\"\ ,\r\n \"limit\": 500,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Inbound rules per Network Interface\",\r\n \"value\": \"InboundRulesPerNetworkInterface\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/RouteFilterRulesPerRouteFilter\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/RouteFilterRulesPerRouteFilter\"\ ,\r\n \"limit\": 1,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Route filter rules per Route Filter\",\r\n \"value\": \"RouteFilterRulesPerRouteFilter\"\ \r\n },\r\n \"unit\": \"Count\"\r\n },\r\n {\r\n \"currentValue\"\ - : 0,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/RouteFiltersPerExpressRouteBgpPeering\"\ + : 0,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/RouteFiltersPerExpressRouteBgpPeering\"\ ,\r\n \"limit\": 1,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Route filters per Express route BGP Peering\",\r\n \"value\": \"\ RouteFiltersPerExpressRouteBgpPeering\"\r\n },\r\n \"unit\": \"\ Count\"\r\n },\r\n {\r\n \"currentValue\": 0,\r\n \"id\":\ - \ \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/usages/MinPublicIpInterNetworkPrefixLength\"\ + \ \"/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/usages/MinPublicIpInterNetworkPrefixLength\"\ ,\r\n \"limit\": 28,\r\n \"name\": {\r\n \"localizedValue\"\ : \"Min Public Ip InterNetwork Prefix Length\",\r\n \"value\": \"MinPublicIpInterNetworkPrefixLength\"\ \r\n },\r\n \"unit\": \"Count\"\r\n }\r\n ]\r\n}" diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_network_gateway_operations.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_network_gateway_operations.yaml index 3aab821e7355..7e6f0c534d7a 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_network_gateway_operations.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_network_gateway_operations.yaml @@ -19,10 +19,10 @@ interactions: accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyvirtnetb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef\"\ + string: "{\r\n \"name\": \"pyvirtnetb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef\"\ ,\r\n \"etag\": \"W/\\\"3eff4964-6288-4472-855a-935b38c4be95\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ @@ -33,7 +33,7 @@ interactions: \n \"enableVmProtection\": false\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/64a467b8-cdbd-40b4-9aff-03c58bf6bf63?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/64a467b8-cdbd-40b4-9aff-03c58bf6bf63?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -73,7 +73,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/64a467b8-cdbd-40b4-9aff-03c58bf6bf63?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/64a467b8-cdbd-40b4-9aff-03c58bf6bf63?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -119,10 +119,10 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyvirtnetb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef\"\ + string: "{\r\n \"name\": \"pyvirtnetb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef\"\ ,\r\n \"etag\": \"W/\\\"3a8b4b22-7c11-4ab8-be8a-23739a784a10\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ @@ -181,10 +181,10 @@ interactions: accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnetfeb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef\"\ + string: "{\r\n \"name\": \"pysubnetfeb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef\"\ ,\r\n \"etag\": \"W/\\\"f7e3941c-f6ec-42da-85ac-f088a62f4bd2\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ addressPrefix\": \"10.11.0.0/24\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ @@ -192,7 +192,7 @@ interactions: \n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/94156f7a-e555-4f3d-8869-ded81e24dddc?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/94156f7a-e555-4f3d-8869-ded81e24dddc?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -232,7 +232,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/94156f7a-e555-4f3d-8869-ded81e24dddc?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/94156f7a-e555-4f3d-8869-ded81e24dddc?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -278,10 +278,10 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnetfeb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef\"\ + string: "{\r\n \"name\": \"pysubnetfeb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef\"\ ,\r\n \"etag\": \"W/\\\"ad2c09e5-2f7c-47d6-84f3-24726a4f8412\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ addressPrefix\": \"10.11.0.0/24\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ @@ -337,10 +337,10 @@ interactions: accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnetbeb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef\"\ + string: "{\r\n \"name\": \"pysubnetbeb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef\"\ ,\r\n \"etag\": \"W/\\\"162e504b-2d90-48c2-ba38-ebfc52bfcc0b\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ addressPrefix\": \"10.12.0.0/24\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ @@ -348,7 +348,7 @@ interactions: \n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/617e70c6-643a-4b27-9952-32eda586c5ef?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/617e70c6-643a-4b27-9952-32eda586c5ef?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -388,7 +388,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/617e70c6-643a-4b27-9952-32eda586c5ef?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/617e70c6-643a-4b27-9952-32eda586c5ef?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -434,10 +434,10 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pysubnetbeb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef\"\ + string: "{\r\n \"name\": \"pysubnetbeb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef\"\ ,\r\n \"etag\": \"W/\\\"268ecd12-1841-4156-b2e0-521f2800d7e9\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ addressPrefix\": \"10.12.0.0/24\",\r\n \"delegations\": [],\r\n \"privateEndpointNetworkPolicies\"\ @@ -493,10 +493,10 @@ interactions: accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"GatewaySubnet\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet\"\ + string: "{\r\n \"name\": \"GatewaySubnet\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet\"\ ,\r\n \"etag\": \"W/\\\"1077cf82-e0f3-4b73-8c9e-9e91e94f7827\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \"\ addressPrefix\": \"10.12.255.0/27\",\r\n \"delegations\": [],\r\n \"\ @@ -505,7 +505,7 @@ interactions: \r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/695228e4-f258-4396-9c95-6312e0a1dff8?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/695228e4-f258-4396-9c95-6312e0a1dff8?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -545,7 +545,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/695228e4-f258-4396-9c95-6312e0a1dff8?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/695228e4-f258-4396-9c95-6312e0a1dff8?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -591,10 +591,10 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"GatewaySubnet\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet\"\ + string: "{\r\n \"name\": \"GatewaySubnet\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet\"\ ,\r\n \"etag\": \"W/\\\"f16e145f-09aa-4dcf-bfe6-5343c38de662\\\"\",\r\n \ \ \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n \"\ addressPrefix\": \"10.12.255.0/27\",\r\n \"delegations\": [],\r\n \"\ @@ -652,10 +652,10 @@ interactions: accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyipnameb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ + string: "{\r\n \"name\": \"pyipnameb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ ,\r\n \"etag\": \"W/\\\"b4918d7b-3bc9-45a8-864d-b4849772b539\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"tags\": {\r\n \"key\": \"value\"\r\n\ \ },\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\ @@ -666,7 +666,7 @@ interactions: : {\r\n \"name\": \"Basic\",\r\n \"tier\": \"Regional\"\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/75e29491-cb1d-491e-8e66-035bdaee8c08?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/75e29491-cb1d-491e-8e66-035bdaee8c08?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -706,7 +706,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/75e29491-cb1d-491e-8e66-035bdaee8c08?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/75e29491-cb1d-491e-8e66-035bdaee8c08?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -752,10 +752,10 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyipnameb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ + string: "{\r\n \"name\": \"pyipnameb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ ,\r\n \"etag\": \"W/\\\"ce049c5a-e5e4-457b-bbd3-4e624477d01a\\\"\",\r\n \ \ \"location\": \"westus\",\r\n \"tags\": {\r\n \"key\": \"value\"\r\n\ \ },\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\ @@ -797,8 +797,8 @@ interactions: message: OK - request: body: '{"location": "westus", "properties": {"ipConfigurations": [{"properties": - {"privateIPAllocationMethod": "Dynamic", "subnet": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet"}, - "publicIPAddress": {"id": "/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef"}}, + {"privateIPAllocationMethod": "Dynamic", "subnet": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet"}, + "publicIPAddress": {"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef"}}, "name": "default"}], "gatewayType": "VPN", "vpnType": "RouteBased", "enableBgp": false, "sku": {"name": "Standard", "tier": "Standard"}}}' headers: @@ -818,22 +818,22 @@ interactions: accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyvngb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef\"\ + string: "{\r\n \"name\": \"pyvngb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef\"\ ,\r\n \"etag\": \"W/\\\"a8f3f56b-3e71-4835-98d0-80c282ec76ba\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworkGateways\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"resourceGuid\": \"8da9e6ab-660e-439d-ae18-db43d93dd506\",\r\n \ \ \"packetCaptureDiagnosticState\": \"None\",\r\n \"ipConfigurations\"\ - : [\r\n {\r\n \"name\": \"default\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef/ipConfigurations/default\"\ + : [\r\n {\r\n \"name\": \"default\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef/ipConfigurations/default\"\ ,\r\n \"etag\": \"W/\\\"a8f3f56b-3e71-4835-98d0-80c282ec76ba\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/virtualNetworkGateways/ipConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"privateIPAllocationMethod\": \"Dynamic\",\r\n \"\ - publicIPAddress\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ - \r\n },\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet\"\ + publicIPAddress\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ + \r\n },\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet\"\ \r\n }\r\n }\r\n }\r\n ],\r\n \"sku\": {\r\n \ \ \"name\": \"Standard\",\r\n \"tier\": \"Standard\",\r\n \"\ capacity\": 2\r\n },\r\n \"gatewayType\": \"Vpn\",\r\n \"vpnType\"\ @@ -845,7 +845,7 @@ interactions: }" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -885,7 +885,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -931,7 +931,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -977,7 +977,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1023,7 +1023,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1069,7 +1069,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1115,7 +1115,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1161,7 +1161,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1207,7 +1207,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1253,7 +1253,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1299,7 +1299,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1345,7 +1345,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1391,7 +1391,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1437,7 +1437,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1483,7 +1483,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1529,7 +1529,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1575,7 +1575,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1621,7 +1621,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1667,7 +1667,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1713,7 +1713,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1759,7 +1759,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1805,7 +1805,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1851,7 +1851,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1897,7 +1897,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1943,7 +1943,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -1989,7 +1989,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2035,7 +2035,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2081,7 +2081,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2127,7 +2127,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2173,7 +2173,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2219,7 +2219,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2265,7 +2265,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2311,7 +2311,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2357,7 +2357,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2403,7 +2403,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2449,7 +2449,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2495,7 +2495,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2541,7 +2541,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2587,7 +2587,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2633,7 +2633,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2679,7 +2679,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2725,7 +2725,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2771,7 +2771,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2817,7 +2817,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2863,7 +2863,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2909,7 +2909,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -2955,7 +2955,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3001,7 +3001,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3047,7 +3047,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3093,7 +3093,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3139,7 +3139,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3185,7 +3185,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3231,7 +3231,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3277,7 +3277,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3323,7 +3323,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3369,7 +3369,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3415,7 +3415,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3461,7 +3461,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3507,7 +3507,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3553,7 +3553,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3599,7 +3599,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3645,7 +3645,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3691,7 +3691,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3737,7 +3737,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3783,7 +3783,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3829,7 +3829,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3875,7 +3875,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3921,7 +3921,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -3967,7 +3967,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4013,7 +4013,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4059,7 +4059,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4105,7 +4105,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4151,7 +4151,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4197,7 +4197,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4243,7 +4243,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4289,7 +4289,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4335,7 +4335,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4381,7 +4381,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4427,7 +4427,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4473,7 +4473,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4519,7 +4519,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4565,7 +4565,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4611,7 +4611,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4657,7 +4657,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4703,7 +4703,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4749,7 +4749,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4795,7 +4795,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4841,7 +4841,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4887,7 +4887,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4933,7 +4933,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -4979,7 +4979,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5025,7 +5025,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5071,7 +5071,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5117,7 +5117,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5163,7 +5163,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5209,7 +5209,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5255,7 +5255,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5301,7 +5301,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5347,7 +5347,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5393,7 +5393,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5439,7 +5439,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5485,7 +5485,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5531,7 +5531,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5577,7 +5577,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5623,7 +5623,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5669,7 +5669,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5715,7 +5715,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5761,7 +5761,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5807,7 +5807,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5853,7 +5853,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5899,7 +5899,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5945,7 +5945,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -5991,7 +5991,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6037,7 +6037,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6083,7 +6083,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6129,7 +6129,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6175,7 +6175,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6221,7 +6221,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6267,7 +6267,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6313,7 +6313,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6359,7 +6359,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6405,7 +6405,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6451,7 +6451,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6497,7 +6497,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6543,7 +6543,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6589,7 +6589,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6635,7 +6635,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6681,7 +6681,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6727,7 +6727,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6773,7 +6773,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6819,7 +6819,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6865,7 +6865,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6911,7 +6911,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -6957,7 +6957,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7003,7 +7003,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7049,7 +7049,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7095,7 +7095,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7141,7 +7141,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7187,7 +7187,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7233,7 +7233,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7279,7 +7279,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7325,7 +7325,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7371,7 +7371,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7417,7 +7417,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7463,7 +7463,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7509,7 +7509,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7555,7 +7555,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7601,7 +7601,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7647,7 +7647,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7693,7 +7693,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7739,7 +7739,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7785,7 +7785,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7831,7 +7831,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7877,7 +7877,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7923,7 +7923,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -7969,7 +7969,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8015,7 +8015,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8061,7 +8061,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8107,7 +8107,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8153,7 +8153,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8199,7 +8199,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8245,7 +8245,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8291,7 +8291,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8337,7 +8337,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8383,7 +8383,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8429,7 +8429,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8475,7 +8475,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8521,7 +8521,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8567,7 +8567,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8613,7 +8613,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8659,7 +8659,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8705,7 +8705,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8751,7 +8751,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8797,7 +8797,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8843,7 +8843,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8889,7 +8889,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8935,7 +8935,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -8981,7 +8981,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -9027,7 +9027,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -9073,7 +9073,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -9119,7 +9119,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -9165,7 +9165,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"InProgress\"\r\n}" @@ -9211,7 +9211,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/b56842a0-d9a8-4d44-805d-284e3363dd4f?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -9257,22 +9257,22 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyvngb4d417ef\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef\"\ + string: "{\r\n \"name\": \"pyvngb4d417ef\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef\"\ ,\r\n \"etag\": \"W/\\\"ce5e933a-433f-4432-819c-b7c5fdbc0dd5\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworkGateways\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"resourceGuid\": \"8da9e6ab-660e-439d-ae18-db43d93dd506\",\r\n \ \ \"packetCaptureDiagnosticState\": \"None\",\r\n \"ipConfigurations\"\ - : [\r\n {\r\n \"name\": \"default\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef/ipConfigurations/default\"\ + : [\r\n {\r\n \"name\": \"default\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef/ipConfigurations/default\"\ ,\r\n \"etag\": \"W/\\\"ce5e933a-433f-4432-819c-b7c5fdbc0dd5\\\"\"\ ,\r\n \"type\": \"Microsoft.Network/virtualNetworkGateways/ipConfigurations\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"privateIPAllocationMethod\": \"Dynamic\",\r\n \"\ - publicIPAddress\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ - \r\n },\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet\"\ + publicIPAddress\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/publicIPAddresses/pyipnameb4d417ef\"\ + \r\n },\r\n \"subnet\": {\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet\"\ \r\n }\r\n }\r\n }\r\n ],\r\n \"sku\": {\r\n \ \ \"name\": \"Standard\",\r\n \"tier\": \"Standard\",\r\n \"\ capacity\": 2\r\n },\r\n \"gatewayType\": \"Vpn\",\r\n \"vpnType\"\ diff --git a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_networks.yaml b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_networks.yaml index 3436be6f53d9..08247fb570ad 100644 --- a/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_networks.yaml +++ b/sdk/network/azure-mgmt-network/tests/recordings/test_mgmt_network.test_virtual_networks.yaml @@ -22,10 +22,10 @@ interactions: accept-language: - en-US method: PUT - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyvnet4725106e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ + string: "{\r\n \"name\": \"pyvnet4725106e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ ,\r\n \"etag\": \"W/\\\"a6325f09-6059-48e8-bb1f-7778307333ad\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\",\r\n \ @@ -34,7 +34,7 @@ interactions: \r\n ]\r\n },\r\n \"dhcpOptions\": {\r\n \"dnsServers\": [\r\ \n \"10.1.1.1\",\r\n \"10.1.2.4\"\r\n ]\r\n },\r\n \ \ \"subnets\": [\r\n {\r\n \"name\": \"pyvnetsubnetone4725106e\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ ,\r\n \"etag\": \"W/\\\"a6325f09-6059-48e8-bb1f-7778307333ad\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ @@ -42,7 +42,7 @@ interactions: \ \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\n },\r\ \n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n \ \ },\r\n {\r\n \"name\": \"pyvnetsubnettwo4725106e\",\r\n \ - \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ ,\r\n \"etag\": \"W/\\\"a6325f09-6059-48e8-bb1f-7778307333ad\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Updating\"\ ,\r\n \"addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\"\ @@ -53,7 +53,7 @@ interactions: : false,\r\n \"enableVmProtection\": false\r\n }\r\n}" headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/895e6c64-5697-486d-9b50-336c087407c3?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/895e6c64-5697-486d-9b50-336c087407c3?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -93,7 +93,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/895e6c64-5697-486d-9b50-336c087407c3?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/895e6c64-5697-486d-9b50-336c087407c3?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}" @@ -139,10 +139,10 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyvnet4725106e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ + string: "{\r\n \"name\": \"pyvnet4725106e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ ,\r\n \"etag\": \"W/\\\"c040d832-9073-4f4d-b57b-5291a26ca6ae\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ @@ -151,7 +151,7 @@ interactions: \r\n ]\r\n },\r\n \"dhcpOptions\": {\r\n \"dnsServers\": [\r\ \n \"10.1.1.1\",\r\n \"10.1.2.4\"\r\n ]\r\n },\r\n \ \ \"subnets\": [\r\n {\r\n \"name\": \"pyvnetsubnetone4725106e\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ ,\r\n \"etag\": \"W/\\\"c040d832-9073-4f4d-b57b-5291a26ca6ae\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ @@ -159,7 +159,7 @@ interactions: \ \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\n },\r\ \n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n \ \ },\r\n {\r\n \"name\": \"pyvnetsubnettwo4725106e\",\r\n \ - \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ ,\r\n \"etag\": \"W/\\\"c040d832-9073-4f4d-b57b-5291a26ca6ae\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\"\ @@ -214,10 +214,10 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2019-09-01 response: body: - string: "{\r\n \"name\": \"pyvnet4725106e\",\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ + string: "{\r\n \"name\": \"pyvnet4725106e\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ ,\r\n \"etag\": \"W/\\\"c040d832-9073-4f4d-b57b-5291a26ca6ae\\\"\",\r\n \ \ \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\": \"westus\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\",\r\n\ @@ -226,7 +226,7 @@ interactions: \r\n ]\r\n },\r\n \"dhcpOptions\": {\r\n \"dnsServers\": [\r\ \n \"10.1.1.1\",\r\n \"10.1.2.4\"\r\n ]\r\n },\r\n \ \ \"subnets\": [\r\n {\r\n \"name\": \"pyvnetsubnetone4725106e\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ ,\r\n \"etag\": \"W/\\\"c040d832-9073-4f4d-b57b-5291a26ca6ae\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n \"delegations\"\ @@ -234,7 +234,7 @@ interactions: \ \"privateLinkServiceNetworkPolicies\": \"Enabled\"\r\n },\r\ \n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\r\n \ \ },\r\n {\r\n \"name\": \"pyvnetsubnettwo4725106e\",\r\n \ - \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ ,\r\n \"etag\": \"W/\\\"c040d832-9073-4f4d-b57b-5291a26ca6ae\\\"\"\ ,\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\ ,\r\n \"addressPrefix\": \"10.0.2.0/24\",\r\n \"delegations\"\ @@ -289,7 +289,7 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/CheckIPAddressAvailability?ipAddress=10.0.1.35&api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/CheckIPAddressAvailability?ipAddress=10.0.1.35&api-version=2019-09-01 response: body: string: "{\r\n \"available\": true,\r\n \"isPlatformReserved\": false\r\n}" @@ -337,11 +337,11 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks?api-version=2019-09-01 response: body: string: "{\r\n \"value\": [\r\n {\r\n \"name\": \"pyvnet4725106e\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e\"\ ,\r\n \"etag\": \"W/\\\"c040d832-9073-4f4d-b57b-5291a26ca6ae\\\"\",\r\ \n \"type\": \"Microsoft.Network/virtualNetworks\",\r\n \"location\"\ : \"westus\",\r\n \"properties\": {\r\n \"provisioningState\"\ @@ -351,7 +351,7 @@ interactions: : {\r\n \"dnsServers\": [\r\n \"10.1.1.1\",\r\n \ \ \"10.1.2.4\"\r\n ]\r\n },\r\n \"subnets\": [\r\ \n {\r\n \"name\": \"pyvnetsubnetone4725106e\",\r\n \ - \ \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ + \ \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e\"\ ,\r\n \"etag\": \"W/\\\"c040d832-9073-4f4d-b57b-5291a26ca6ae\\\"\ \",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"addressPrefix\": \"10.0.1.0/24\",\r\n\ @@ -359,7 +359,7 @@ interactions: : \"Enabled\",\r\n \"privateLinkServiceNetworkPolicies\": \"\ Enabled\"\r\n },\r\n \"type\": \"Microsoft.Network/virtualNetworks/subnets\"\ \r\n },\r\n {\r\n \"name\": \"pyvnetsubnettwo4725106e\"\ - ,\r\n \"id\": \"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ + ,\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e\"\ ,\r\n \"etag\": \"W/\\\"c040d832-9073-4f4d-b57b-5291a26ca6ae\\\"\ \",\r\n \"properties\": {\r\n \"provisioningState\"\ : \"Succeeded\",\r\n \"addressPrefix\": \"10.0.2.0/24\",\r\n\ @@ -413,10 +413,10 @@ interactions: accept-language: - en-US method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/virtualNetworks?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/virtualNetworks?api-version=2019-09-01 response: body: - string: '{"value":[{"name":"ag1Vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_address_poolb7vwzkoul4hnlo2ptgwrpa562ek4hoa5pq2gc4ekn2rrhgslo2a/providers/Microsoft.Network/virtualNetworks/ag1Vnet","etag":"W/\"ab537fc6-326b-41c5-b34d-4f415c358bb9\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"3c3b1ccb-caa7-4c6a-8d6e-ec2087f3fc44","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_address_poolb7vwzkoul4hnlo2ptgwrpa562ek4hoa5pq2gc4ekn2rrhgslo2a/providers/Microsoft.Network/virtualNetworks/ag1Vnet/subnets/default","etag":"W/\"ab537fc6-326b-41c5-b34d-4f415c358bb9\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_frontend_ip_private4g2fakklpk5ifocmi72mw5gmvhf3zvf5u3bonj2eehlq/providers/Microsoft.Network/virtualNetworks/vnet1","etag":"W/\"8c411fef-74d8-4452-a271-c88ff578e93e\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d3a5d83d-f484-457a-9f76-72480fc19ad0","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":[]},"subnets":[{"name":"subnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_frontend_ip_private4g2fakklpk5ifocmi72mw5gmvhf3zvf5u3bonj2eehlq/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1","etag":"W/\"8c411fef-74d8-4452-a271-c88ff578e93e\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"ag1Vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_frontend_ip_publicglwm4jk2aep5y7hj33emv7b6t2abgr4fvy5zsxtebs2sr/providers/Microsoft.Network/virtualNetworks/ag1Vnet","etag":"W/\"7b4cd5fd-37de-4625-8561-03c67a562d19\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"3ae71df6-5296-485a-9ead-b6202537a2ea","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_frontend_ip_publicglwm4jk2aep5y7hj33emv7b6t2abgr4fvy5zsxtebs2sr/providers/Microsoft.Network/virtualNetworks/ag1Vnet/subnets/default","etag":"W/\"7b4cd5fd-37de-4625-8561-03c67a562d19\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"ag1Vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_frontend_ip_publicibdwzsizl4kai4bmnsmr3oh4fadlt7gvn24umxxgk4olz/providers/Microsoft.Network/virtualNetworks/ag1Vnet","etag":"W/\"060e91d1-dd8d-4906-99c9-6ef33b0c7d41\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d34d0f53-1da7-44d4-86e7-3908a95be9d1","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_frontend_ip_publicibdwzsizl4kai4bmnsmr3oh4fadlt7gvn24umxxgk4olz/providers/Microsoft.Network/virtualNetworks/ag1Vnet/subnets/default","etag":"W/\"060e91d1-dd8d-4906-99c9-6ef33b0c7d41\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"ag1Vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_frontend_portwbitfwqlqjoz6jzbl3fa4x4nk4jhzjdet6bichvfgye2n2jtim/providers/Microsoft.Network/virtualNetworks/ag1Vnet","etag":"W/\"9b0d79c5-03fd-48fc-b001-cdc89bb53393\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"5f61d7a7-5dd1-41a3-9195-808406448da7","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_frontend_portwbitfwqlqjoz6jzbl3fa4x4nk4jhzjdet6bichvfgye2n2jtim/providers/Microsoft.Network/virtualNetworks/ag1Vnet/subnets/default","etag":"W/\"9b0d79c5-03fd-48fc-b001-cdc89bb53393\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"ag3Vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_private_ip47l4iutevepeno4eleto4yn6uobjzmcmyodfx6gav4bcxbp3zh7yi/providers/Microsoft.Network/virtualNetworks/ag3Vnet","etag":"W/\"c279638e-08d9-4466-aeb4-1843bc9112e9\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"2b3381b7-f968-4774-a5f3-1d1c67ed20e4","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"subnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_private_ip47l4iutevepeno4eleto4yn6uobjzmcmyodfx6gav4bcxbp3zh7yi/providers/Microsoft.Network/virtualNetworks/ag3Vnet/subnets/subnet1","etag":"W/\"c279638e-08d9-4466-aeb4-1843bc9112e9\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"ag3Vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_private_ipp2ykus5y6rkqaz5tnozsd754n36zwxyv4bl6exm4w2r4zi2fdw3tf/providers/Microsoft.Network/virtualNetworks/ag3Vnet","etag":"W/\"a2671389-f108-4b9d-94c5-bd841f0bd951\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f231167d-c706-4b7d-a706-cdaae9918ae5","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"subnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_private_ipp2ykus5y6rkqaz5tnozsd754n36zwxyv4bl6exm4w2r4zi2fdw3tf/providers/Microsoft.Network/virtualNetworks/ag3Vnet/subnets/subnet1","etag":"W/\"a2671389-f108-4b9d-94c5-bd841f0bd951\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"gw1Vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_rewrite_rulesetspm5eoivju7bbk7ji5ig4m5nuu4yreqobo4eio2uj34rrqvf/providers/Microsoft.Network/virtualNetworks/gw1Vnet","etag":"W/\"66164ade-8e7f-413a-8510-9a52d9a05393\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d9fabe9a-feaf-43e6-ab5b-24f2bc12e288","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_rewrite_rulesetspm5eoivju7bbk7ji5ig4m5nuu4yreqobo4eio2uj34rrqvf/providers/Microsoft.Network/virtualNetworks/gw1Vnet/subnets/default","etag":"W/\"66164ade-8e7f-413a-8510-9a52d9a05393\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"gw1Vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_rewrite_rulesetsqdemdi2b6abi4kp6jz2yqszfx47uy35cdveusufscfyjrck/providers/Microsoft.Network/virtualNetworks/gw1Vnet","etag":"W/\"64172557-ad70-44d2-9e98-5e79024e4436\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a2c135e0-a3c2-477a-923d-f035746af251","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_ag_rewrite_rulesetsqdemdi2b6abi4kp6jz2yqszfx47uy35cdveusufscfyjrck/providers/Microsoft.Network/virtualNetworks/gw1Vnet/subnets/default","etag":"W/\"64172557-ad70-44d2-9e98-5e79024e4436\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_app_gateway_waf_configqmmu6wjrdktmmocgings2wpaeenqmgbn7xf2eug5swlm/providers/Microsoft.Network/virtualNetworks/vnet1","etag":"W/\"e48ea213-25b7-4f6a-badb-1b5077a059e7\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"1448ee43-96d5-4e0d-a2a4-cc0b42d09133","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"subnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_app_gateway_waf_configqmmu6wjrdktmmocgings2wpaeenqmgbn7xf2eug5swlm/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1","etag":"W/\"e48ea213-25b7-4f6a-badb-1b5077a059e7\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vmss1VNET","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/virtualNetworks/vmss1VNET","etag":"W/\"870d9ddd-99c7-4a80-945b-8eef36a7e020\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"67ad67fe-48fa-4d93-9d5f-fd1274921852","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vmss1Subnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/virtualNetworks/vmss1VNET/subnets/vmss1Subnet","etag":"W/\"870d9ddd-99c7-4a80-945b-8eef36a7e020\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"fengtest-vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/fengtest-vnet","etag":"W/\"683ea4ba-a82d-4ab9-9afb-16eb4ebb914a\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"bbf63c2d-03b0-4630-8f9c-39199a9524bd","addressSpace":{"addressPrefixes":["10.2.6.0/24"]},"subnets":[{"name":"GatewaySubnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/fengtest-vnet/subnets/GatewaySubnet","etag":"W/\"683ea4ba-a82d-4ab9-9afb-16eb4ebb914a\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.6.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworkGateways/fenggw/ipConfigurations/default"}],"serviceEndpoints":[],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"feng_rhel_8VNET","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/feng_rhel_8VNET","etag":"W/\"2f942af6-8ff0-4e39-a25f-629076d46b8b\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a73fe0a0-7a42-44b9-a583-f614b1acbee2","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"feng_rhel_8Subnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/feng_rhel_8VNET/subnets/feng_rhel_8Subnet","etag":"W/\"2f942af6-8ff0-4e39-a25f-629076d46b8b\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng_rhel_8VMNic/ipConfigurations/ipconfigfeng_rhel_8"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-rhel-8VMNic/ipConfigurations/ipconfigfeng-rhel-8"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"harold-vnet-01","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-01","etag":"W/\"4e980251-42f9-493e-8912-84098812ed55\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"42338af7-eb67-475b-a216-b07759ce5e50","addressSpace":{"addressPrefixes":["10.7.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-01/subnets/default","etag":"W/\"4e980251-42f9-493e-8912-84098812ed55\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.7.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-01543/ipConfigurations/ipconfig1"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-02540/ipConfigurations/ipconfig1"}],"serviceEndpoints":[{"provisioningState":"Succeeded","service":"Microsoft.KeyVault","locations":["*"]}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"GatewaySubnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-01/subnets/GatewaySubnet","etag":"W/\"4e980251-42f9-493e-8912-84098812ed55\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.7.1.0/28","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworkGateways/harold-vnet-gw-01/ipConfigurations/default"}],"serviceEndpoints":[{"provisioningState":"Succeeded","service":"Microsoft.KeyVault","locations":["*"]}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"AzureFirewallSubnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-01/subnets/AzureFirewallSubnet","etag":"W/\"4e980251-42f9-493e-8912-84098812ed55\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.7.2.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/azureFirewalls/harold-fw-01/azureFirewallIpConfigurations/IpConf"}],"serviceEndpoints":[],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"harold-vnet-02","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-02","etag":"W/\"b399d6d0-f2bb-4e02-a68c-7233aa78192a\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"408c17a1-9605-4d3f-b601-c3472b2479eb","addressSpace":{"addressPrefixes":["10.10.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-02/subnets/default","etag":"W/\"b399d6d0-f2bb-4e02-a68c-7233aa78192a\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.10.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"GatewaySubnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-02/subnets/GatewaySubnet","etag":"W/\"b399d6d0-f2bb-4e02-a68c-7233aa78192a\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.10.1.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworkGateways/harold-vnet-gw-02/ipConfigurations/vnetGatewayConfig0"}],"serviceEndpoints":[],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"start-1VNET","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/virtualNetworks/start-1VNET","etag":"W/\"b924357a-1cad-4881-94da-56d1c712ae0c\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0d67fe10-f709-4454-a571-d4c528064257","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"start-1Subnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/virtualNetworks/start-1VNET/subnets/start-1Subnet","etag":"W/\"b924357a-1cad-4881-94da-56d1c712ae0c\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic/ipConfigurations/ipconfigstart-1"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic/ipConfigurations/ipconfiga"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pyvmirnet5cc18eb","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb","etag":"W/\"bf516b23-6a3d-44bb-9581-f174fcdd50e2\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"b4065c95-d7b3-4c8f-bc82-3ffa80ab3ce6","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"pyvmirsub5cc18eb","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb/subnets/pyvmirsub5cc18eb","etag":"W/\"bf516b23-6a3d-44bb-9581-f174fcdd50e2\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pyvmirnet9bd146b","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b","etag":"W/\"3091dedc-e8f0-4b2d-bfad-739a76de687c\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"5ba3308a-6a50-4b85-9c59-42def9396cdc","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"pyvmirsub9bd146b","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b/subnets/pyvmirsub9bd146b","etag":"W/\"3091dedc-e8f0-4b2d-bfad-739a76de687c\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b/ipConfigurations/pyarmconfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pyvnet4725106e","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e","etag":"W/\"c040d832-9073-4f4d-b57b-5291a26ca6ae\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"9746f7f8-1f83-45f4-b7ea-14d06efeba10","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":["10.1.1.1","10.1.2.4"]},"subnets":[{"name":"pyvnetsubnetone4725106e","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e","etag":"W/\"c040d832-9073-4f4d-b57b-5291a26ca6ae\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.1.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"pyvnetsubnettwo4725106e","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e","etag":"W/\"c040d832-9073-4f4d-b57b-5291a26ca6ae\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.2.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pyvirtnetb4d417ef","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef","etag":"W/\"a6d60390-4234-4ebb-baed-35ad4727c4b0\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"4dc1befd-0e17-465e-90f3-251856f22a7a","addressSpace":{"addressPrefixes":["10.11.0.0/16","10.12.0.0/16"]},"subnets":[{"name":"pysubnetfeb4d417ef","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef","etag":"W/\"a6d60390-4234-4ebb-baed-35ad4727c4b0\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.11.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"pysubnetbeb4d417ef","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef","etag":"W/\"a6d60390-4234-4ebb-baed-35ad4727c4b0\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.12.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"GatewaySubnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet","etag":"W/\"a6d60390-4234-4ebb-baed-35ad4727c4b0\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.12.255.0/27","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef/ipConfigurations/default"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"zimsstuff-vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/virtualNetworks/zimsstuff-vnet","etag":"W/\"f2bf4716-9fbb-4f88-ac84-44d6873b3387\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"d4706934-8008-46f1-bfea-c84a8f591ec3","addressSpace":{"addressPrefixes":["10.2.8.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/virtualNetworks/zimsstuff-vnet/subnets/default","etag":"W/\"f2bf4716-9fbb-4f88-ac84-44d6873b3387\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.8.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zimsstuff/providers/Microsoft.Network/networkInterfaces/zimsvm64/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"zuhtest","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh2/providers/Microsoft.Network/virtualNetworks/zuhtest","etag":"W/\"781dbf03-ef57-4daa-9cea-6c392b0c8b19\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"8afda190-e999-4772-bb49-1d6b83b3656c","addressSpace":{"addressPrefixes":["10.9.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh2/providers/Microsoft.Network/virtualNetworks/zuhtest/subnets/default","etag":"W/\"781dbf03-ef57-4daa-9cea-6c392b0c8b19\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.9.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"testsubnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh2/providers/Microsoft.Network/virtualNetworks/zuhtest/subnets/testsubnet","etag":"W/\"781dbf03-ef57-4daa-9cea-6c392b0c8b19\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.9.1.0/24","serviceEndpoints":[{"provisioningState":"Succeeded","service":"Microsoft.Storage","locations":["westus","eastus"]}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"fozippy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/virtualNetworks/fozippy98","etag":"W/\"1491f1a5-4ddb-43ee-a981-e3d576b97659\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"aee855ee-cab8-4599-b3ed-209ffcbc5149","addressSpace":{"addressPrefixes":["192.168.0.0/16"]},"subnets":[{"name":"fozippy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Network/virtualNetworks/fozippy98/subnets/fozippy98","etag":"W/\"1491f1a5-4ddb-43ee-a981-e3d576b97659\"","properties":{"provisioningState":"Succeeded","addressPrefix":"192.168.1.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/0/networkInterfaces/fozippy98/ipConfigurations/fozippy98"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/3/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vmss1VNET","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/virtualNetworks/vmss1VNET","etag":"W/\"14edd799-2b8c-46bd-9fc0-cce703b6f554\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"85087d8d-1c2e-4659-8ae5-248d609e07bd","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vmss1Subnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Network/virtualNetworks/vmss1VNET/subnets/vmss1Subnet","etag":"W/\"14edd799-2b8c-46bd-9fc0-cce703b6f554\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/2/networkInterfaces/vmss249baNic/ipConfigurations/vmss249baIPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/3/networkInterfaces/vmss249baNic/ipConfigurations/vmss249baIPConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"storagerule","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/storagerule","etag":"W/\"892fd56f-6d7b-4131-a886-2ebdf25c71ab\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"1b917d9e-2206-4172-abe3-9d1b328453d7","addressSpace":{"addressPrefixes":["10.4.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/storagerule/subnets/default","etag":"W/\"892fd56f-6d7b-4131-a886-2ebdf25c71ab\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.4.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638/ipConfigurations/ipconfig1"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359/ipConfigurations/ipconfig1"}],"serviceEndpoints":[{"provisioningState":"Succeeded","service":"Microsoft.Storage","locations":["eastus","westus"]}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"testzuh","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/testzuh","etag":"W/\"da384904-b968-4599-b4cb-8edc49bf4e8a\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"5c4d3ad3-5ccb-497f-9d7d-179fd1ab28bf","addressSpace":{"addressPrefixes":["10.3.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/testzuh/subnets/default","etag":"W/\"da384904-b968-4599-b4cb-8edc49bf4e8a\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.3.0.0/24","applicationGatewayIPConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/applicationGateways/aaaaa/gatewayIPConfigurations/appGatewayIpConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"zuh-vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuh-vnet","etag":"W/\"a3e70c32-eb86-48d6-b0d5-31428a1f0a16\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"5bd58890-46ce-4785-9445-b3092a02abee","addressSpace":{"addressPrefixes":["10.2.0.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuh-vnet/subnets/default","etag":"W/\"a3e70c32-eb86-48d6-b0d5-31428a1f0a16\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"jlrg1vnet623","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1vnet623","etag":"W/\"cd12f2fe-ad80-400d-a5b9-6ca50f8b5285\"","type":"Microsoft.Network/virtualNetworks","location":"eastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"4937c1e9-9025-439d-959a-a6842c82e584","addressSpace":{"addressPrefixes":["10.2.4.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1vnet623/subnets/default","etag":"W/\"cd12f2fe-ad80-400d-a5b9-6ca50f8b5285\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.4.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"fengtestvnet658","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/fengtestvnet658","etag":"W/\"95c669ab-216d-4a5c-8332-179e1c55580b\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"f0e2e6ce-894a-4958-87d4-1ff6ba4c3a6e","addressSpace":{"addressPrefixes":["10.2.7.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/fengtestvnet658/subnets/default","etag":"W/\"95c669ab-216d-4a5c-8332-179e1c55580b\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.7.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-ubuntu388/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"jlrg1-vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1-vnet","etag":"W/\"fd93565e-45f8-41a4-b108-85b595f7cecf\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9dfeb5f2-adef-408a-9d3c-746fcb42a757","addressSpace":{"addressPrefixes":["10.2.2.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1-vnet/subnets/default","etag":"W/\"fd93565e-45f8-41a4-b108-85b595f7cecf\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.2.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"jlwvmrg-vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/virtualNetworks/jlwvmrg-vnet","etag":"W/\"a27b7970-2d69-4098-9048-2ccd23db1de2\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"b791b303-d438-45e1-a31b-d8e8ba6897ff","addressSpace":{"addressPrefixes":["10.2.5.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/virtualNetworks/jlwvmrg-vnet/subnets/default","etag":"W/\"a27b7970-2d69-4098-9048-2ccd23db1de2\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.5.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"yugangw1VNET","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/virtualNetworks/yugangw1VNET","etag":"W/\"17e634f3-ad31-4ec1-b0b8-a77a9a1ad7df\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"19020449-b774-4b76-940d-d2488be0bc4a","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"yugangw1Subnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/virtualNetworks/yugangw1VNET/subnets/yugangw1Subnet","etag":"W/\"17e634f3-ad31-4ec1-b0b8-a77a9a1ad7df\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw1VMNic/ipConfigurations/ipconfigyugangw1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"zuhvnet584","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet584","etag":"W/\"9c934546-3720-428f-9e3a-786b4c5a7b2f\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"b6d3cf11-df2a-4b02-97f0-6c8dfa8dba3d","addressSpace":{"addressPrefixes":["10.2.1.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet584/subnets/default","etag":"W/\"9c934546-3720-428f-9e3a-786b4c5a7b2f\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.1.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1","etag":"W/\"5880e151-6c6e-42b3-92df-bbfb7147cf43\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d7c5b183-ce82-4303-92ae-8d61a645f08a","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":[]},"subnets":[{"name":"subnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1","etag":"W/\"5880e151-6c6e-42b3-92df-bbfb7147cf43\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/lks1.nic.7f9003f5-5e86-42b9-9979-80a9797cf484/ipConfigurations/lks1_ipconfig_0"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/privateLinkServices/lks1/ipConfigurations/lks1_ipconfig_0"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Disabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"subnet2","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet2","etag":"W/\"5880e151-6c6e-42b3-92df-bbfb7147cf43\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.2.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/pe1.nic.42302fcd-0ffa-4e8d-8094-9f06c8639a3e/ipConfigurations/privateEndpointIpConfig"}],"privateEndpoints":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/0927pe/providers/Microsoft.Network/privateEndpoints/pe1"}],"delegations":[],"purpose":"PrivateEndpoints","privateEndpointNetworkPolicies":"Disabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"test_vm1VNET","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/virtualNetworks/test_vm1VNET","etag":"W/\"7b1a9ab9-3c77-4ca0-a64b-569151f29774\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"12e2f10b-184b-40b6-a11a-3dc67162e882","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"test_vm1Subnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/virtualNetworks/test_vm1VNET/subnets/test_vm1Subnet","etag":"W/\"7b1a9ab9-3c77-4ca0-a64b-569151f29774\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm1VMNic/ipConfigurations/ipconfigtest_vm1"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm2VMNic/ipConfigurations/ipconfigtest_vm2"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnettest","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"069414bc-bd93-47a1-976e-2e51578a2c72","addressSpace":{"addressPrefixes":["10.1.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/default","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/networkInterfaces/sdfsdfsdf.nic.483f3d12-3ba8-4789-92dd-b7ed9c4d43db/ipConfigurations/sdfsdfsdf_ipconfig_0"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/privateLinkServices/sdfsdfsdf/ipConfigurations/sdfsdfsdf_ipconfig_0"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Disabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"GatewaySubnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/GatewaySubnet","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.3.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"test1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/test1","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.1.0/24","serviceEndpoints":[],"delegations":[],"privateEndpointNetworkPolicies":"Disabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"test2","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/test2","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.2.0/24","serviceEndpoints":[],"delegations":[],"purpose":"PrivateEndpoints","privateEndpointNetworkPolicies":"Disabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"test3","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/test3","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.4.0/24","serviceEndpoints":[],"delegations":[],"purpose":"PrivateEndpoints","privateEndpointNetworkPolicies":"Disabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"test4","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/test4","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.5.0/24","serviceEndpoints":[],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Disabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/vnet1","etag":"W/\"cdf55d73-7582-425a-bdd1-5383e2daba61\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"c946fed5-e511-4060-b29e-9d317d552d8e","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":[]},"subnets":[{"name":"subnet1","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1","etag":"W/\"cdf55d73-7582-425a-bdd1-5383e2daba61\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"zuhvnet370","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet370","etag":"W/\"1e1b4ae5-022a-475e-969a-f96339c8648e\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"2c951b45-735f-4cf6-bb8a-de4095665900","addressSpace":{"addressPrefixes":["10.2.3.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet370/subnets/default","etag":"W/\"1e1b4ae5-022a-475e-969a-f96339c8648e\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.3.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285/ipConfigurations/ipconfig1"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"testavrdfv","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh2/providers/Microsoft.Network/virtualNetworks/testavrdfv","etag":"W/\"3f7e69a9-676c-4a01-8627-056ac12189cf\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"a1dfe155-c47d-4e06-be55-a60785e40051","addressSpace":{"addressPrefixes":["10.8.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/zuh2/providers/Microsoft.Network/virtualNetworks/testavrdfv/subnets/default","etag":"W/\"3f7e69a9-676c-4a01-8627-056ac12189cf\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.8.0.0/24","serviceEndpoints":[{"provisioningState":"Succeeded","service":"Microsoft.Storage","locations":["centralus","eastus2"]}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vm-storage-sku-testVNET","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/virtualNetworks/vm-storage-sku-testVNET","etag":"W/\"8df6771f-81e1-4a5c-96c2-15d36dd1cfea\"","type":"Microsoft.Network/virtualNetworks","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"570cea8a-c239-4c97-8da8-838620cbb9d3","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vm-storage-sku-testSubnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/virtualNetworks/vm-storage-sku-testVNET/subnets/vm-storage-sku-testSubnet","etag":"W/\"8df6771f-81e1-4a5c-96c2-15d36dd1cfea\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkInterfaces/vm-storage-sku-testVMNic/ipConfigurations/ipconfigvm-storage-sku-test"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vm-ultrassdVNET","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/virtualNetworks/vm-ultrassdVNET","etag":"W/\"4a7d1fdf-5c9b-4cce-8152-ecc0316bccd7\"","type":"Microsoft.Network/virtualNetworks","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"98206c04-978f-4eff-80aa-d810edd68151","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vm-ultrassdSubnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/virtualNetworks/vm-ultrassdVNET/subnets/vm-ultrassdSubnet","etag":"W/\"4a7d1fdf-5c9b-4cce-8152-ecc0316bccd7\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/0/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/1/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/2/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/3/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vmss0VNET","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/virtualNetworks/vmss0VNET","etag":"W/\"7481b1e0-d5c8-494c-bee2-d6710a524917\"","type":"Microsoft.Network/virtualNetworks","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d50bd84b-f9c9-4a3b-97b5-c3f0e078dade","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vmss0Subnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/virtualNetworks/vmss0VNET/subnets/vmss0Subnet","etag":"W/\"7481b1e0-d5c8-494c-bee2-d6710a524917\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/0/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/1/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/2/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/3/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"fooziipy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/virtualNetworks/fooziipy98","etag":"W/\"02e6c4d1-dc43-4614-b7f7-65a9a5e9de84\"","type":"Microsoft.Network/virtualNetworks","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"96537f60-9ee3-4e56-bbb4-e622048d764d","addressSpace":{"addressPrefixes":["192.168.0.0/16"]},"subnets":[{"name":"fooziipy98","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/virtualNetworks/fooziipy98/subnets/fooziipy98","etag":"W/\"02e6c4d1-dc43-4614-b7f7-65a9a5e9de84\"","properties":{"provisioningState":"Succeeded","addressPrefix":"192.168.1.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98/ipConfigurations/fooziipy98"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"fooziipy99","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/virtualNetworks/fooziipy99","etag":"W/\"39477a34-d029-470a-91ad-975873313a30\"","type":"Microsoft.Network/virtualNetworks","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"deea6a38-de92-4d49-82d6-deb59d695873","addressSpace":{"addressPrefixes":["192.168.0.0/16"]},"subnets":[{"name":"fooziipy99","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/virtualNetworks/fooziipy99/subnets/fooziipy99","etag":"W/\"39477a34-d029-470a-91ad-975873313a30\"","properties":{"provisioningState":"Succeeded","addressPrefix":"192.168.1.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99/ipConfigurations/fooziipy99"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"sdk-vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/virtualNetworks/sdk-vnet","etag":"W/\"b277f4c3-62f6-411f-b1e3-80ca12a5ea9c\"","type":"Microsoft.Network/virtualNetworks","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"7637a963-71f9-4aed-905b-8c0f4aed45b9","addressSpace":{"addressPrefixes":["10.6.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/virtualNetworks/sdk-vnet/subnets/default","etag":"W/\"b277f4c3-62f6-411f-b1e3-80ca12a5ea9c\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.6.0.0/24","ipConfigurations":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/networkInterfaces/anf-sdk-vnet-nic-VLB5RZ/ipConfigurations/ipconfig1"}],"serviceEndpoints":[],"delegations":[{"name":"514c6b63b2df4757ba448bd8f44d10a5","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/virtualNetworks/sdk-vnet/subnets/default/delegations/514c6b63b2df4757ba448bd8f44d10a5","etag":"W/\"b277f4c3-62f6-411f-b1e3-80ca12a5ea9c\"","properties":{"provisioningState":"Succeeded","serviceName":"Microsoft.Netapp/volumes","actions":["Microsoft.Network/networkinterfaces/*","Microsoft.Network/virtualNetworks/subnets/join/action"]},"type":"Microsoft.Network/virtualNetworks/subnets/delegations"}],"purpose":"HostedWorkloads","privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pytest-vnet","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg/providers/Microsoft.Network/virtualNetworks/pytest-vnet","etag":"W/\"aa662f30-f19c-4f27-bd8a-2fd7a22c04fe\"","type":"Microsoft.Network/virtualNetworks","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"27e8ce4b-11fc-4bb5-a8de-c9425c01900c","addressSpace":{"addressPrefixes":["10.5.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/sdk-wus2-rg/providers/Microsoft.Network/virtualNetworks/pytest-vnet/subnets/default","etag":"W/\"aa662f30-f19c-4f27-bd8a-2fd7a22c04fe\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.5.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}}]}' + string: '{"value":[{"name":"ag1Vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_address_poolb7vwzkoul4hnlo2ptgwrpa562ek4hoa5pq2gc4ekn2rrhgslo2a/providers/Microsoft.Network/virtualNetworks/ag1Vnet","etag":"W/\"ab537fc6-326b-41c5-b34d-4f415c358bb9\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"3c3b1ccb-caa7-4c6a-8d6e-ec2087f3fc44","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_address_poolb7vwzkoul4hnlo2ptgwrpa562ek4hoa5pq2gc4ekn2rrhgslo2a/providers/Microsoft.Network/virtualNetworks/ag1Vnet/subnets/default","etag":"W/\"ab537fc6-326b-41c5-b34d-4f415c358bb9\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnet1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_frontend_ip_private4g2fakklpk5ifocmi72mw5gmvhf3zvf5u3bonj2eehlq/providers/Microsoft.Network/virtualNetworks/vnet1","etag":"W/\"8c411fef-74d8-4452-a271-c88ff578e93e\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d3a5d83d-f484-457a-9f76-72480fc19ad0","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":[]},"subnets":[{"name":"subnet1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_frontend_ip_private4g2fakklpk5ifocmi72mw5gmvhf3zvf5u3bonj2eehlq/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1","etag":"W/\"8c411fef-74d8-4452-a271-c88ff578e93e\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"ag1Vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_frontend_ip_publicglwm4jk2aep5y7hj33emv7b6t2abgr4fvy5zsxtebs2sr/providers/Microsoft.Network/virtualNetworks/ag1Vnet","etag":"W/\"7b4cd5fd-37de-4625-8561-03c67a562d19\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"3ae71df6-5296-485a-9ead-b6202537a2ea","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_frontend_ip_publicglwm4jk2aep5y7hj33emv7b6t2abgr4fvy5zsxtebs2sr/providers/Microsoft.Network/virtualNetworks/ag1Vnet/subnets/default","etag":"W/\"7b4cd5fd-37de-4625-8561-03c67a562d19\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"ag1Vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_frontend_ip_publicibdwzsizl4kai4bmnsmr3oh4fadlt7gvn24umxxgk4olz/providers/Microsoft.Network/virtualNetworks/ag1Vnet","etag":"W/\"060e91d1-dd8d-4906-99c9-6ef33b0c7d41\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d34d0f53-1da7-44d4-86e7-3908a95be9d1","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_frontend_ip_publicibdwzsizl4kai4bmnsmr3oh4fadlt7gvn24umxxgk4olz/providers/Microsoft.Network/virtualNetworks/ag1Vnet/subnets/default","etag":"W/\"060e91d1-dd8d-4906-99c9-6ef33b0c7d41\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"ag1Vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_frontend_portwbitfwqlqjoz6jzbl3fa4x4nk4jhzjdet6bichvfgye2n2jtim/providers/Microsoft.Network/virtualNetworks/ag1Vnet","etag":"W/\"9b0d79c5-03fd-48fc-b001-cdc89bb53393\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"5f61d7a7-5dd1-41a3-9195-808406448da7","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_frontend_portwbitfwqlqjoz6jzbl3fa4x4nk4jhzjdet6bichvfgye2n2jtim/providers/Microsoft.Network/virtualNetworks/ag1Vnet/subnets/default","etag":"W/\"9b0d79c5-03fd-48fc-b001-cdc89bb53393\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"ag3Vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_private_ip47l4iutevepeno4eleto4yn6uobjzmcmyodfx6gav4bcxbp3zh7yi/providers/Microsoft.Network/virtualNetworks/ag3Vnet","etag":"W/\"c279638e-08d9-4466-aeb4-1843bc9112e9\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"2b3381b7-f968-4774-a5f3-1d1c67ed20e4","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"subnet1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_private_ip47l4iutevepeno4eleto4yn6uobjzmcmyodfx6gav4bcxbp3zh7yi/providers/Microsoft.Network/virtualNetworks/ag3Vnet/subnets/subnet1","etag":"W/\"c279638e-08d9-4466-aeb4-1843bc9112e9\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"ag3Vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_private_ipp2ykus5y6rkqaz5tnozsd754n36zwxyv4bl6exm4w2r4zi2fdw3tf/providers/Microsoft.Network/virtualNetworks/ag3Vnet","etag":"W/\"a2671389-f108-4b9d-94c5-bd841f0bd951\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"f231167d-c706-4b7d-a706-cdaae9918ae5","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"subnet1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_private_ipp2ykus5y6rkqaz5tnozsd754n36zwxyv4bl6exm4w2r4zi2fdw3tf/providers/Microsoft.Network/virtualNetworks/ag3Vnet/subnets/subnet1","etag":"W/\"a2671389-f108-4b9d-94c5-bd841f0bd951\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"gw1Vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_rewrite_rulesetspm5eoivju7bbk7ji5ig4m5nuu4yreqobo4eio2uj34rrqvf/providers/Microsoft.Network/virtualNetworks/gw1Vnet","etag":"W/\"66164ade-8e7f-413a-8510-9a52d9a05393\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d9fabe9a-feaf-43e6-ab5b-24f2bc12e288","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_rewrite_rulesetspm5eoivju7bbk7ji5ig4m5nuu4yreqobo4eio2uj34rrqvf/providers/Microsoft.Network/virtualNetworks/gw1Vnet/subnets/default","etag":"W/\"66164ade-8e7f-413a-8510-9a52d9a05393\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"gw1Vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_rewrite_rulesetsqdemdi2b6abi4kp6jz2yqszfx47uy35cdveusufscfyjrck/providers/Microsoft.Network/virtualNetworks/gw1Vnet","etag":"W/\"64172557-ad70-44d2-9e98-5e79024e4436\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a2c135e0-a3c2-477a-923d-f035746af251","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_ag_rewrite_rulesetsqdemdi2b6abi4kp6jz2yqszfx47uy35cdveusufscfyjrck/providers/Microsoft.Network/virtualNetworks/gw1Vnet/subnets/default","etag":"W/\"64172557-ad70-44d2-9e98-5e79024e4436\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnet1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_app_gateway_waf_configqmmu6wjrdktmmocgings2wpaeenqmgbn7xf2eug5swlm/providers/Microsoft.Network/virtualNetworks/vnet1","etag":"W/\"e48ea213-25b7-4f6a-badb-1b5077a059e7\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"1448ee43-96d5-4e0d-a2a4-cc0b42d09133","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"subnet1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_app_gateway_waf_configqmmu6wjrdktmmocgings2wpaeenqmgbn7xf2eug5swlm/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1","etag":"W/\"e48ea213-25b7-4f6a-badb-1b5077a059e7\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vmss1VNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/virtualNetworks/vmss1VNET","etag":"W/\"870d9ddd-99c7-4a80-945b-8eef36a7e020\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"67ad67fe-48fa-4d93-9d5f-fd1274921852","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vmss1Subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vm_reference_vmss_7m27hxfaug6ay4vo2mhpmljbru4n24oan3csq7hjci6lm3j4/providers/Microsoft.Network/virtualNetworks/vmss1VNET/subnets/vmss1Subnet","etag":"W/\"870d9ddd-99c7-4a80-945b-8eef36a7e020\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"fengtest-vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/fengtest-vnet","etag":"W/\"683ea4ba-a82d-4ab9-9afb-16eb4ebb914a\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"bbf63c2d-03b0-4630-8f9c-39199a9524bd","addressSpace":{"addressPrefixes":["10.2.6.0/24"]},"subnets":[{"name":"GatewaySubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/fengtest-vnet/subnets/GatewaySubnet","etag":"W/\"683ea4ba-a82d-4ab9-9afb-16eb4ebb914a\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.6.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworkGateways/fenggw/ipConfigurations/default"}],"serviceEndpoints":[],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"feng_rhel_8VNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/feng_rhel_8VNET","etag":"W/\"2f942af6-8ff0-4e39-a25f-629076d46b8b\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"a73fe0a0-7a42-44b9-a583-f614b1acbee2","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"feng_rhel_8Subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/feng_rhel_8VNET/subnets/feng_rhel_8Subnet","etag":"W/\"2f942af6-8ff0-4e39-a25f-629076d46b8b\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng_rhel_8VMNic/ipConfigurations/ipconfigfeng_rhel_8"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-rhel-8VMNic/ipConfigurations/ipconfigfeng-rhel-8"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"harold-vnet-01","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-01","etag":"W/\"4e980251-42f9-493e-8912-84098812ed55\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"42338af7-eb67-475b-a216-b07759ce5e50","addressSpace":{"addressPrefixes":["10.7.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-01/subnets/default","etag":"W/\"4e980251-42f9-493e-8912-84098812ed55\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.7.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-01543/ipConfigurations/ipconfig1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/networkInterfaces/vm-02540/ipConfigurations/ipconfig1"}],"serviceEndpoints":[{"provisioningState":"Succeeded","service":"Microsoft.KeyVault","locations":["*"]}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"GatewaySubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-01/subnets/GatewaySubnet","etag":"W/\"4e980251-42f9-493e-8912-84098812ed55\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.7.1.0/28","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworkGateways/harold-vnet-gw-01/ipConfigurations/default"}],"serviceEndpoints":[{"provisioningState":"Succeeded","service":"Microsoft.KeyVault","locations":["*"]}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"AzureFirewallSubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-01/subnets/AzureFirewallSubnet","etag":"W/\"4e980251-42f9-493e-8912-84098812ed55\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.7.2.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/azureFirewalls/harold-fw-01/azureFirewallIpConfigurations/IpConf"}],"serviceEndpoints":[],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"harold-vnet-02","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-02","etag":"W/\"b399d6d0-f2bb-4e02-a68c-7233aa78192a\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"408c17a1-9605-4d3f-b601-c3472b2479eb","addressSpace":{"addressPrefixes":["10.10.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-02/subnets/default","etag":"W/\"b399d6d0-f2bb-4e02-a68c-7233aa78192a\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.10.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"GatewaySubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworks/harold-vnet-02/subnets/GatewaySubnet","etag":"W/\"b399d6d0-f2bb-4e02-a68c-7233aa78192a\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.10.1.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/harold-rsg-01/providers/Microsoft.Network/virtualNetworkGateways/harold-vnet-gw-02/ipConfigurations/vnetGatewayConfig0"}],"serviceEndpoints":[],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"start-1VNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/virtualNetworks/start-1VNET","etag":"W/\"b924357a-1cad-4881-94da-56d1c712ae0c\"","type":"Microsoft.Network/virtualNetworks","location":"westus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"0d67fe10-f709-4454-a571-d4c528064257","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"start-1Subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/virtualNetworks/start-1VNET/subnets/start-1Subnet","etag":"W/\"b924357a-1cad-4881-94da-56d1c712ae0c\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/start-1VMNic/ipConfigurations/ipconfigstart-1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/start/providers/Microsoft.Network/networkInterfaces/aVMNic/ipConfigurations/ipconfiga"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pyvmirnet5cc18eb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb","etag":"W/\"bf516b23-6a3d-44bb-9581-f174fcdd50e2\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"b4065c95-d7b3-4c8f-bc82-3ffa80ab3ce6","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"pyvmirsub5cc18eb","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_virtual_machine_scale_set5cc18eb/providers/Microsoft.Network/virtualNetworks/pyvmirnet5cc18eb/subnets/pyvmirsub5cc18eb","etag":"W/\"bf516b23-6a3d-44bb-9581-f174fcdd50e2\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pyvmirnet9bd146b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b","etag":"W/\"3091dedc-e8f0-4b2d-bfad-739a76de687c\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"5ba3308a-6a50-4b85-9c59-42def9396cdc","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"pyvmirsub9bd146b","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/virtualNetworks/pyvmirnet9bd146b/subnets/pyvmirsub9bd146b","etag":"W/\"3091dedc-e8f0-4b2d-bfad-739a76de687c\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_managed_disks_test_create_vm_implicit_md9bd146b/providers/Microsoft.Network/networkInterfaces/pyvmirnic9bd146b/ipConfigurations/pyarmconfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pyvnet4725106e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e","etag":"W/\"c040d832-9073-4f4d-b57b-5291a26ca6ae\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"9746f7f8-1f83-45f4-b7ea-14d06efeba10","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":["10.1.1.1","10.1.2.4"]},"subnets":[{"name":"pyvnetsubnetone4725106e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnetone4725106e","etag":"W/\"c040d832-9073-4f4d-b57b-5291a26ca6ae\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.1.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"pyvnetsubnettwo4725106e","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e/subnets/pyvnetsubnettwo4725106e","etag":"W/\"c040d832-9073-4f4d-b57b-5291a26ca6ae\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.2.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pyvirtnetb4d417ef","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef","etag":"W/\"a6d60390-4234-4ebb-baed-35ad4727c4b0\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"4dc1befd-0e17-465e-90f3-251856f22a7a","addressSpace":{"addressPrefixes":["10.11.0.0/16","10.12.0.0/16"]},"subnets":[{"name":"pysubnetfeb4d417ef","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetfeb4d417ef","etag":"W/\"a6d60390-4234-4ebb-baed-35ad4727c4b0\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.11.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"pysubnetbeb4d417ef","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/pysubnetbeb4d417ef","etag":"W/\"a6d60390-4234-4ebb-baed-35ad4727c4b0\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.12.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"GatewaySubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworks/pyvirtnetb4d417ef/subnets/GatewaySubnet","etag":"W/\"a6d60390-4234-4ebb-baed-35ad4727c4b0\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.12.255.0/27","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_network_gateway_operationsb4d417ef/providers/Microsoft.Network/virtualNetworkGateways/pyvngb4d417ef/ipConfigurations/default"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"zimsstuff-vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zimsstuff/providers/Microsoft.Network/virtualNetworks/zimsstuff-vnet","etag":"W/\"f2bf4716-9fbb-4f88-ac84-44d6873b3387\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"d4706934-8008-46f1-bfea-c84a8f591ec3","addressSpace":{"addressPrefixes":["10.2.8.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zimsstuff/providers/Microsoft.Network/virtualNetworks/zimsstuff-vnet/subnets/default","etag":"W/\"f2bf4716-9fbb-4f88-ac84-44d6873b3387\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.8.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zimsstuff/providers/Microsoft.Network/networkInterfaces/zimsvm64/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"zuhtest","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh2/providers/Microsoft.Network/virtualNetworks/zuhtest","etag":"W/\"781dbf03-ef57-4daa-9cea-6c392b0c8b19\"","type":"Microsoft.Network/virtualNetworks","location":"westus","properties":{"provisioningState":"Succeeded","resourceGuid":"8afda190-e999-4772-bb49-1d6b83b3656c","addressSpace":{"addressPrefixes":["10.9.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh2/providers/Microsoft.Network/virtualNetworks/zuhtest/subnets/default","etag":"W/\"781dbf03-ef57-4daa-9cea-6c392b0c8b19\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.9.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"testsubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh2/providers/Microsoft.Network/virtualNetworks/zuhtest/subnets/testsubnet","etag":"W/\"781dbf03-ef57-4daa-9cea-6c392b0c8b19\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.9.1.0/24","serviceEndpoints":[{"provisioningState":"Succeeded","service":"Microsoft.Storage","locations":["westus","eastus"]}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"fozippy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/virtualNetworks/fozippy98","etag":"W/\"1491f1a5-4ddb-43ee-a981-e3d576b97659\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"aee855ee-cab8-4599-b3ed-209ffcbc5149","addressSpace":{"addressPrefixes":["192.168.0.0/16"]},"subnets":[{"name":"fozippy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Network/virtualNetworks/fozippy98/subnets/fozippy98","etag":"W/\"1491f1a5-4ddb-43ee-a981-e3d576b97659\"","properties":{"provisioningState":"Succeeded","addressPrefix":"192.168.1.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/0/networkInterfaces/fozippy98/ipConfigurations/fozippy98"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fozippy98/providers/Microsoft.Compute/virtualMachineScaleSets/fozippy98/virtualMachines/3/networkInterfaces/fozippy98/ipConfigurations/fozippy98"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vmss1VNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/virtualNetworks/vmss1VNET","etag":"W/\"14edd799-2b8c-46bd-9fc0-cce703b6f554\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"85087d8d-1c2e-4659-8ae5-248d609e07bd","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vmss1Subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Network/virtualNetworks/vmss1VNET/subnets/vmss1Subnet","etag":"W/\"14edd799-2b8c-46bd-9fc0-cce703b6f554\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/2/networkInterfaces/vmss249baNic/ipConfigurations/vmss249baIPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fytest2/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2/virtualMachines/3/networkInterfaces/vmss249baNic/ipConfigurations/vmss249baIPConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"storagerule","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/storagerule","etag":"W/\"892fd56f-6d7b-4131-a886-2ebdf25c71ab\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"1b917d9e-2206-4172-abe3-9d1b328453d7","addressSpace":{"addressPrefixes":["10.4.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/storagerule/subnets/default","etag":"W/\"892fd56f-6d7b-4131-a886-2ebdf25c71ab\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.4.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhtestvm638/ipConfigurations/ipconfig1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhlinux359/ipConfigurations/ipconfig1"}],"serviceEndpoints":[{"provisioningState":"Succeeded","service":"Microsoft.Storage","locations":["eastus","westus"]}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"testzuh","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/testzuh","etag":"W/\"da384904-b968-4599-b4cb-8edc49bf4e8a\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"5c4d3ad3-5ccb-497f-9d7d-179fd1ab28bf","addressSpace":{"addressPrefixes":["10.3.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/testzuh/subnets/default","etag":"W/\"da384904-b968-4599-b4cb-8edc49bf4e8a\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.3.0.0/24","applicationGatewayIPConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/applicationGateways/aaaaa/gatewayIPConfigurations/appGatewayIpConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"zuh-vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuh-vnet","etag":"W/\"a3e70c32-eb86-48d6-b0d5-31428a1f0a16\"","type":"Microsoft.Network/virtualNetworks","location":"eastus","properties":{"provisioningState":"Succeeded","resourceGuid":"5bd58890-46ce-4785-9445-b3092a02abee","addressSpace":{"addressPrefixes":["10.2.0.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuh-vnet/subnets/default","etag":"W/\"a3e70c32-eb86-48d6-b0d5-31428a1f0a16\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhubuntu26/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"jlrg1vnet623","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1vnet623","etag":"W/\"cd12f2fe-ad80-400d-a5b9-6ca50f8b5285\"","type":"Microsoft.Network/virtualNetworks","location":"eastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"4937c1e9-9025-439d-959a-a6842c82e584","addressSpace":{"addressPrefixes":["10.2.4.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1vnet623/subnets/default","etag":"W/\"cd12f2fe-ad80-400d-a5b9-6ca50f8b5285\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.4.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/networkInterfaces/vm22523/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"fengtestvnet658","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/fengtestvnet658","etag":"W/\"95c669ab-216d-4a5c-8332-179e1c55580b\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"f0e2e6ce-894a-4958-87d4-1ff6ba4c3a6e","addressSpace":{"addressPrefixes":["10.2.7.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/virtualNetworks/fengtestvnet658/subnets/default","etag":"W/\"95c669ab-216d-4a5c-8332-179e1c55580b\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.7.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fengtest/providers/Microsoft.Network/networkInterfaces/feng-ubuntu388/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"jlrg1-vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1-vnet","etag":"W/\"fd93565e-45f8-41a4-b108-85b595f7cecf\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"9dfeb5f2-adef-408a-9d3c-746fcb42a757","addressSpace":{"addressPrefixes":["10.2.2.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlrg1/providers/Microsoft.Network/virtualNetworks/jlrg1-vnet/subnets/default","etag":"W/\"fd93565e-45f8-41a4-b108-85b595f7cecf\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.2.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"jlwvmrg-vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/virtualNetworks/jlwvmrg-vnet","etag":"W/\"a27b7970-2d69-4098-9048-2ccd23db1de2\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"b791b303-d438-45e1-a31b-d8e8ba6897ff","addressSpace":{"addressPrefixes":["10.2.5.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/virtualNetworks/jlwvmrg-vnet/subnets/default","etag":"W/\"a27b7970-2d69-4098-9048-2ccd23db1de2\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.5.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/jlwvmrg/providers/Microsoft.Network/networkInterfaces/jlvmwin1184/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"yugangw1VNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/virtualNetworks/yugangw1VNET","etag":"W/\"17e634f3-ad31-4ec1-b0b8-a77a9a1ad7df\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"19020449-b774-4b76-940d-d2488be0bc4a","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"yugangw1Subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/virtualNetworks/yugangw1VNET/subnets/yugangw1Subnet","etag":"W/\"17e634f3-ad31-4ec1-b0b8-a77a9a1ad7df\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/yugangw/providers/Microsoft.Network/networkInterfaces/yugangw1VMNic/ipConfigurations/ipconfigyugangw1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"zuhvnet584","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet584","etag":"W/\"9c934546-3720-428f-9e3a-786b4c5a7b2f\"","type":"Microsoft.Network/virtualNetworks","location":"southeastasia","properties":{"provisioningState":"Succeeded","resourceGuid":"b6d3cf11-df2a-4b02-97f0-6c8dfa8dba3d","addressSpace":{"addressPrefixes":["10.2.1.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet584/subnets/default","etag":"W/\"9c934546-3720-428f-9e3a-786b4c5a7b2f\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.1.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwin154/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnet1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1","etag":"W/\"5880e151-6c6e-42b3-92df-bbfb7147cf43\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d7c5b183-ce82-4303-92ae-8d61a645f08a","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":[]},"subnets":[{"name":"subnet1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1","etag":"W/\"5880e151-6c6e-42b3-92df-bbfb7147cf43\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/lks1.nic.7f9003f5-5e86-42b9-9979-80a9797cf484/ipConfigurations/lks1_ipconfig_0"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/privateLinkServices/lks1/ipConfigurations/lks1_ipconfig_0"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Disabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"subnet2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet2","etag":"W/\"5880e151-6c6e-42b3-92df-bbfb7147cf43\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.2.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/networkInterfaces/pe1.nic.42302fcd-0ffa-4e8d-8094-9f06c8639a3e/ipConfigurations/privateEndpointIpConfig"}],"privateEndpoints":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/0927pe/providers/Microsoft.Network/privateEndpoints/pe1"}],"delegations":[],"purpose":"PrivateEndpoints","privateEndpointNetworkPolicies":"Disabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"test_vm1VNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/virtualNetworks/test_vm1VNET","etag":"W/\"7b1a9ab9-3c77-4ca0-a64b-569151f29774\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"12e2f10b-184b-40b6-a11a-3dc67162e882","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"test_vm1Subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/virtualNetworks/test_vm1VNET/subnets/test_vm1Subnet","etag":"W/\"7b1a9ab9-3c77-4ca0-a64b-569151f29774\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm1VMNic/ipConfigurations/ipconfigtest_vm1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/bin_test/providers/Microsoft.Network/networkInterfaces/test_vm2VMNic/ipConfigurations/ipconfigtest_vm2"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnettest","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"069414bc-bd93-47a1-976e-2e51578a2c72","addressSpace":{"addressPrefixes":["10.1.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/default","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/networkInterfaces/sdfsdfsdf.nic.483f3d12-3ba8-4789-92dd-b7ed9c4d43db/ipConfigurations/sdfsdfsdf_ipconfig_0"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/privateLinkServices/sdfsdfsdf/ipConfigurations/sdfsdfsdf_ipconfig_0"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Disabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"GatewaySubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/GatewaySubnet","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.3.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"test1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/test1","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.1.0/24","serviceEndpoints":[],"delegations":[],"privateEndpointNetworkPolicies":"Disabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"test2","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/test2","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.2.0/24","serviceEndpoints":[],"delegations":[],"purpose":"PrivateEndpoints","privateEndpointNetworkPolicies":"Disabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"test3","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/test3","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.4.0/24","serviceEndpoints":[],"delegations":[],"purpose":"PrivateEndpoints","privateEndpointNetworkPolicies":"Disabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"},{"name":"test4","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fanqiu-test/providers/Microsoft.Network/virtualNetworks/vnettest/subnets/test4","etag":"W/\"9c8919a4-8732-48f3-8b9c-09bd0e3774c4\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.1.5.0/24","serviceEndpoints":[],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Disabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vnet1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/vnet1","etag":"W/\"cdf55d73-7582-425a-bdd1-5383e2daba61\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"c946fed5-e511-4060-b29e-9d317d552d8e","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"dhcpOptions":{"dnsServers":[]},"subnets":[{"name":"subnet1","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/subnet1","etag":"W/\"cdf55d73-7582-425a-bdd1-5383e2daba61\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"zuhvnet370","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet370","etag":"W/\"1e1b4ae5-022a-475e-969a-f96339c8648e\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"2c951b45-735f-4cf6-bb8a-de4095665900","addressSpace":{"addressPrefixes":["10.2.3.0/24"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/virtualNetworks/zuhvnet370/subnets/default","etag":"W/\"1e1b4ae5-022a-475e-969a-f96339c8648e\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.2.3.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhcentos285/ipConfigurations/ipconfig1"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh/providers/Microsoft.Network/networkInterfaces/zuhwindows2016246/ipConfigurations/ipconfig1"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"testavrdfv","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh2/providers/Microsoft.Network/virtualNetworks/testavrdfv","etag":"W/\"3f7e69a9-676c-4a01-8627-056ac12189cf\"","type":"Microsoft.Network/virtualNetworks","location":"centralus","properties":{"provisioningState":"Succeeded","resourceGuid":"a1dfe155-c47d-4e06-be55-a60785e40051","addressSpace":{"addressPrefixes":["10.8.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/zuh2/providers/Microsoft.Network/virtualNetworks/testavrdfv/subnets/default","etag":"W/\"3f7e69a9-676c-4a01-8627-056ac12189cf\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.8.0.0/24","serviceEndpoints":[{"provisioningState":"Succeeded","service":"Microsoft.Storage","locations":["centralus","eastus2"]}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vm-storage-sku-testVNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/virtualNetworks/vm-storage-sku-testVNET","etag":"W/\"8df6771f-81e1-4a5c-96c2-15d36dd1cfea\"","type":"Microsoft.Network/virtualNetworks","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"570cea8a-c239-4c97-8da8-838620cbb9d3","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vm-storage-sku-testSubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/virtualNetworks/vm-storage-sku-testVNET/subnets/vm-storage-sku-testSubnet","etag":"W/\"8df6771f-81e1-4a5c-96c2-15d36dd1cfea\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-stdssdkgdhghn2buyn4din6affqfbix5ppcmd33enrqlsrllf4men4if3yftltrzrs/providers/Microsoft.Network/networkInterfaces/vm-storage-sku-testVMNic/ipConfigurations/ipconfigvm-storage-sku-test"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vm-ultrassdVNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/virtualNetworks/vm-ultrassdVNET","etag":"W/\"4a7d1fdf-5c9b-4cce-8152-ecc0316bccd7\"","type":"Microsoft.Network/virtualNetworks","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"98206c04-978f-4eff-80aa-d810edd68151","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vm-ultrassdSubnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Network/virtualNetworks/vm-ultrassdVNET/subnets/vm-ultrassdSubnet","etag":"W/\"4a7d1fdf-5c9b-4cce-8152-ecc0316bccd7\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/0/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/1/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/2/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli-test-ultrassddsi5fokegvuzuq4vjfehdbj2nn2tdwdlb6ze4mucrcbjdanaj2iooe7ntd/providers/Microsoft.Compute/virtualMachineScaleSets/vm-ultrassd/virtualMachines/3/networkInterfaces/vmultd1f9Nic/ipConfigurations/vmultd1f9IPConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"vmss0VNET","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/virtualNetworks/vmss0VNET","etag":"W/\"7481b1e0-d5c8-494c-bee2-d6710a524917\"","type":"Microsoft.Network/virtualNetworks","location":"eastus2","tags":{},"properties":{"provisioningState":"Succeeded","resourceGuid":"d50bd84b-f9c9-4a3b-97b5-c3f0e078dade","addressSpace":{"addressPrefixes":["10.0.0.0/16"]},"subnets":[{"name":"vmss0Subnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Network/virtualNetworks/vmss0VNET/subnets/vmss0Subnet","etag":"W/\"7481b1e0-d5c8-494c-bee2-d6710a524917\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.0.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/0/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/1/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/2/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"},{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_vmss_lb_skuw5ptgbfbg7mff4cnrfib4lpenqu3srpyky6uyk2hjzwsxi5shf2bbsd/providers/Microsoft.Compute/virtualMachineScaleSets/vmss0/virtualMachines/3/networkInterfaces/vmss0364aNic/ipConfigurations/vmss0364aIPConfig"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"fooziipy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/virtualNetworks/fooziipy98","etag":"W/\"02e6c4d1-dc43-4614-b7f7-65a9a5e9de84\"","type":"Microsoft.Network/virtualNetworks","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"96537f60-9ee3-4e56-bbb4-e622048d764d","addressSpace":{"addressPrefixes":["192.168.0.0/16"]},"subnets":[{"name":"fooziipy98","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/virtualNetworks/fooziipy98/subnets/fooziipy98","etag":"W/\"02e6c4d1-dc43-4614-b7f7-65a9a5e9de84\"","properties":{"provisioningState":"Succeeded","addressPrefix":"192.168.1.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy98/providers/Microsoft.Network/networkInterfaces/fooziipy98/ipConfigurations/fooziipy98"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"fooziipy99","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/virtualNetworks/fooziipy99","etag":"W/\"39477a34-d029-470a-91ad-975873313a30\"","type":"Microsoft.Network/virtualNetworks","location":"eastus2","properties":{"provisioningState":"Succeeded","resourceGuid":"deea6a38-de92-4d49-82d6-deb59d695873","addressSpace":{"addressPrefixes":["192.168.0.0/16"]},"subnets":[{"name":"fooziipy99","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/virtualNetworks/fooziipy99/subnets/fooziipy99","etag":"W/\"39477a34-d029-470a-91ad-975873313a30\"","properties":{"provisioningState":"Succeeded","addressPrefix":"192.168.1.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fooziipy99/providers/Microsoft.Network/networkInterfaces/fooziipy99/ipConfigurations/fooziipy99"}],"delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"sdk-vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/virtualNetworks/sdk-vnet","etag":"W/\"b277f4c3-62f6-411f-b1e3-80ca12a5ea9c\"","type":"Microsoft.Network/virtualNetworks","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"7637a963-71f9-4aed-905b-8c0f4aed45b9","addressSpace":{"addressPrefixes":["10.6.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/virtualNetworks/sdk-vnet/subnets/default","etag":"W/\"b277f4c3-62f6-411f-b1e3-80ca12a5ea9c\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.6.0.0/24","ipConfigurations":[{"id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/networkInterfaces/anf-sdk-vnet-nic-VLB5RZ/ipConfigurations/ipconfig1"}],"serviceEndpoints":[],"delegations":[{"name":"514c6b63b2df4757ba448bd8f44d10a5","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg-test/providers/Microsoft.Network/virtualNetworks/sdk-vnet/subnets/default/delegations/514c6b63b2df4757ba448bd8f44d10a5","etag":"W/\"b277f4c3-62f6-411f-b1e3-80ca12a5ea9c\"","properties":{"provisioningState":"Succeeded","serviceName":"Microsoft.Netapp/volumes","actions":["Microsoft.Network/networkinterfaces/*","Microsoft.Network/virtualNetworks/subnets/join/action"]},"type":"Microsoft.Network/virtualNetworks/subnets/delegations"}],"purpose":"HostedWorkloads","privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}},{"name":"pytest-vnet","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg/providers/Microsoft.Network/virtualNetworks/pytest-vnet","etag":"W/\"aa662f30-f19c-4f27-bd8a-2fd7a22c04fe\"","type":"Microsoft.Network/virtualNetworks","location":"westus2","properties":{"provisioningState":"Succeeded","resourceGuid":"27e8ce4b-11fc-4bb5-a8de-c9425c01900c","addressSpace":{"addressPrefixes":["10.5.0.0/16"]},"subnets":[{"name":"default","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/sdk-wus2-rg/providers/Microsoft.Network/virtualNetworks/pytest-vnet/subnets/default","etag":"W/\"aa662f30-f19c-4f27-bd8a-2fd7a22c04fe\"","properties":{"provisioningState":"Succeeded","addressPrefix":"10.5.0.0/24","delegations":[],"privateEndpointNetworkPolicies":"Enabled","privateLinkServiceNetworkPolicies":"Enabled"},"type":"Microsoft.Network/virtualNetworks/subnets"}],"virtualNetworkPeerings":[],"enableDdosProtection":false,"enableVmProtection":false}}]}' headers: cache-control: - no-cache @@ -464,13 +464,13 @@ interactions: accept-language: - en-US method: DELETE - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/test_mgmt_network_test_virtual_networks4725106e/providers/Microsoft.Network/virtualNetworks/pyvnet4725106e?api-version=2019-09-01 response: body: string: '' headers: azure-asyncoperation: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/1ddcf9b9-fbe0-4a46-b26f-3060a7be59fa?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/1ddcf9b9-fbe0-4a46-b26f-3060a7be59fa?api-version=2019-09-01 cache-control: - no-cache content-length: @@ -480,7 +480,7 @@ interactions: expires: - '-1' location: - - https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operationResults/1ddcf9b9-fbe0-4a46-b26f-3060a7be59fa?api-version=2019-09-01 + - https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operationResults/1ddcf9b9-fbe0-4a46-b26f-3060a7be59fa?api-version=2019-09-01 pragma: - no-cache server: @@ -510,7 +510,7 @@ interactions: - python/3.6.8 (Linux-4.9.184-linuxkit-x86_64-with-Ubuntu-18.04-bionic) msrest/0.6.8 msrest_azure/0.4.34 azure-mgmt-network/6.0.0 Azure-SDK-For-Python method: GET - uri: https://management.azure.com/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/providers/Microsoft.Network/locations/westus/operations/1ddcf9b9-fbe0-4a46-b26f-3060a7be59fa?api-version=2019-09-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Network/locations/westus/operations/1ddcf9b9-fbe0-4a46-b26f-3060a7be59fa?api-version=2019-09-01 response: body: string: "{\r\n \"status\": \"Succeeded\"\r\n}"