[ExpressRoute] Express Route fixes (#1194) *breaking changes*

BC: express-route service-providers list changed to express-route list-service-providers
BC: express-route circuit commands moved up to simply express-route
BC: express-route circuit-auth and express-route circuit-peering subgroups renamed to auth and peering respectively
BC: express-route peering create no longer creates a circuit (must be created with express-route create) 
BC: various parameter name aliases have been changed
BC: removes authentication_key from express-route auth create because this API call generates a random key regardless of the value passed in
BC: removes the express-route auth update command as the service call fails when calling create_or_update on an existing authentication entry rather than generating a new auth key, rendering this command worthless.
This commit is contained in:
Travis Prescott 2016-11-01 16:57:46 -07:00 коммит произвёл GitHub
Родитель d02e5c62b8
Коммит b4431dbd34
32 изменённых файлов: 2137 добавлений и 2522 удалений

Просмотреть файл

@ -15,8 +15,6 @@
<InterpreterId>{54f4b6dc-0859-46dc-99bb-b275c9d0aca3}</InterpreterId>
<InterpreterVersion>3.5</InterpreterVersion>
<EnableNativeCodeDebugging>False</EnableNativeCodeDebugging>
<CommandLineArguments>
</CommandLineArguments>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)' == 'Debug'" />
<PropertyGroup Condition="'$(Configuration)' == 'Release'" />
@ -74,6 +72,60 @@
<Compile Include="azure-cli\azure\cli\__init__.py" />
<Compile Include="azure-cli\azure\cli\__main__.py" />
<Compile Include="azure-cli\setup.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\credential.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\custom.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\container_registry.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\credentials.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\exceptions.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\registry.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\registry_create_parameters.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\registry_credentials.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\registry_move_request.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\registry_name_check_request.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\registry_name_status.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\registry_properties.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\registry_properties_create_parameters.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\registry_update_parameters.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\resource_list_registry.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\storage_account_base_properties.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\storage_account_properties.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\subscription_notification.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\subscription_properties.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\__init__.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\operations\operation.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\operations\registries.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\operations\subscriptions.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\operations\__init__.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\version.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\__init__.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\repository.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\storage.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\_arm_utils.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\_constants.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\_factory.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\_format.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\_help.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\_params.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\_utils.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\_validators.py" />
<Compile Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\__init__.py" />
<Compile Include="command_modules\azure-cli-acr\setup.py" />
<Compile Include="command_modules\azure-cli-acs\azure\cli\command_modules\acs\acs_client.py" />
<Compile Include="command_modules\azure-cli-acs\azure\cli\command_modules\acs\custom.py" />
<Compile Include="command_modules\azure-cli-acs\azure\cli\command_modules\acs\generated.py" />
<Compile Include="command_modules\azure-cli-acs\azure\cli\command_modules\acs\proxy.py" />
<Compile Include="command_modules\azure-cli-acs\azure\cli\command_modules\acs\tests\test_acs_client.py" />
<Compile Include="command_modules\azure-cli-acs\azure\cli\command_modules\acs\win_proxy.py" />
<Compile Include="command_modules\azure-cli-acs\azure\cli\command_modules\acs\_help.py" />
<Compile Include="command_modules\azure-cli-acs\azure\cli\command_modules\acs\_params.py" />
<Compile Include="command_modules\azure-cli-acs\azure\cli\command_modules\acs\__init__.py" />
<Compile Include="command_modules\azure-cli-acs\setup.py" />
<Compile Include="command_modules\azure-cli-cloud\azure\cli\command_modules\cloud\commands.py" />
<Compile Include="command_modules\azure-cli-cloud\azure\cli\command_modules\cloud\custom.py" />
<Compile Include="command_modules\azure-cli-cloud\azure\cli\command_modules\cloud\_help.py" />
<Compile Include="command_modules\azure-cli-cloud\azure\cli\command_modules\cloud\_params.py" />
<Compile Include="command_modules\azure-cli-cloud\azure\cli\command_modules\cloud\__init__.py" />
<Compile Include="command_modules\azure-cli-cloud\setup.py" />
<Compile Include="command_modules\azure-cli-component\azure\cli\command_modules\component\_help.py">
<SubType>Code</SubType>
</Compile>
@ -82,6 +134,12 @@
<Compile Include="command_modules\azure-cli-configure\azure\cli\command_modules\configure\_utils.py" />
<Compile Include="command_modules\azure-cli-configure\azure\cli\command_modules\configure\__init__.py" />
<Compile Include="command_modules\azure-cli-configure\setup.py" />
<Compile Include="command_modules\azure-cli-context\azure\cli\command_modules\context\commands.py" />
<Compile Include="command_modules\azure-cli-context\azure\cli\command_modules\context\custom.py" />
<Compile Include="command_modules\azure-cli-context\azure\cli\command_modules\context\_help.py" />
<Compile Include="command_modules\azure-cli-context\azure\cli\command_modules\context\_params.py" />
<Compile Include="command_modules\azure-cli-context\azure\cli\command_modules\context\__init__.py" />
<Compile Include="command_modules\azure-cli-context\setup.py" />
<Compile Include="command_modules\azure-cli-feedback\azure\cli\command_modules\feedback\_help.py">
<SubType>Code</SubType>
</Compile>
@ -246,24 +304,6 @@
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_circuit\lib\operations\__init__.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_circuit\lib\version.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_circuit\lib\__init__.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\credentials.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\exceptions.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\express_route_peering_creation_client.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\models\basic_dependency.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\models\dependency.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\models\deployment_express_route_peering.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\models\deployment_extended.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\models\deployment_properties_extended.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\models\express_route_peering_creation_client_enums.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\models\parameters_link.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\models\provider.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\models\provider_resource_type.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\models\template_link.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\models\__init__.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\operations\express_route_peering_operations.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\operations\__init__.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\version.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\__init__.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_local_gateway\lib\credentials.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_local_gateway\lib\exceptions.py" />
<Compile Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_local_gateway\lib\local_gateway_creation_client.py" />
@ -658,6 +698,12 @@
</Compile>
<Compile Include="command_modules\azure-cli-vm\azure\cli\command_modules\vm\__init__.py" />
<Compile Include="command_modules\azure-cli-vm\setup.py" />
<Compile Include="command_modules\azure-cli-vsts\azure\cli\command_modules\vsts\custom.py" />
<Compile Include="command_modules\azure-cli-vsts\azure\cli\command_modules\vsts\generated.py" />
<Compile Include="command_modules\azure-cli-vsts\azure\cli\command_modules\vsts\_help.py" />
<Compile Include="command_modules\azure-cli-vsts\azure\cli\command_modules\vsts\_params.py" />
<Compile Include="command_modules\azure-cli-vsts\azure\cli\command_modules\vsts\__init__.py" />
<Compile Include="command_modules\azure-cli-vsts\setup.py" />
<Compile Include="command_modules\azure-cli-webapp\azure\cli\command_modules\webapp\custom.py" />
<Compile Include="command_modules\azure-cli-webapp\azure\cli\command_modules\webapp\generated.py" />
<Compile Include="command_modules\azure-cli-webapp\azure\cli\command_modules\webapp\tests\test_webapp_commands.py" />
@ -685,6 +731,27 @@
<Folder Include="azure-cli\azure\cli\command_modules\" />
<Folder Include="azure-cli\azure\cli\tests\" />
<Folder Include="command_modules\" />
<Folder Include="command_modules\azure-cli-acr\" />
<Folder Include="command_modules\azure-cli-acr\azure\" />
<Folder Include="command_modules\azure-cli-acr\azure\cli\" />
<Folder Include="command_modules\azure-cli-acr\azure\cli\command_modules\" />
<Folder Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\" />
<Folder Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\" />
<Folder Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\" />
<Folder Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\__pycache__\" />
<Folder Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\operations\" />
<Folder Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\operations\__pycache__\" />
<Folder Include="command_modules\azure-cli-acs\" />
<Folder Include="command_modules\azure-cli-acs\azure\" />
<Folder Include="command_modules\azure-cli-acs\azure\cli\" />
<Folder Include="command_modules\azure-cli-acs\azure\cli\command_modules\" />
<Folder Include="command_modules\azure-cli-acs\azure\cli\command_modules\acs\" />
<Folder Include="command_modules\azure-cli-acs\azure\cli\command_modules\acs\tests\" />
<Folder Include="command_modules\azure-cli-cloud\" />
<Folder Include="command_modules\azure-cli-cloud\azure\" />
<Folder Include="command_modules\azure-cli-cloud\azure\cli\" />
<Folder Include="command_modules\azure-cli-cloud\azure\cli\command_modules\" />
<Folder Include="command_modules\azure-cli-cloud\azure\cli\command_modules\cloud\" />
<Folder Include="command_modules\azure-cli-component\" />
<Folder Include="command_modules\azure-cli-component\azure\" />
<Folder Include="command_modules\azure-cli-component\azure\cli\" />
@ -695,6 +762,11 @@
<Folder Include="command_modules\azure-cli-configure\azure\cli\" />
<Folder Include="command_modules\azure-cli-configure\azure\cli\command_modules\" />
<Folder Include="command_modules\azure-cli-configure\azure\cli\command_modules\configure\" />
<Folder Include="command_modules\azure-cli-context\" />
<Folder Include="command_modules\azure-cli-context\azure\" />
<Folder Include="command_modules\azure-cli-context\azure\cli\" />
<Folder Include="command_modules\azure-cli-context\azure\cli\command_modules\" />
<Folder Include="command_modules\azure-cli-context\azure\cli\command_modules\context\" />
<Folder Include="command_modules\azure-cli-feedback\" />
<Folder Include="command_modules\azure-cli-feedback\azure\" />
<Folder Include="command_modules\azure-cli-feedback\azure\cli\" />
@ -730,9 +802,6 @@
<Folder Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_circuit\lib\" />
<Folder Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_circuit\lib\models\" />
<Folder Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_circuit\lib\operations\" />
<Folder Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\" />
<Folder Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\models\" />
<Folder Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\lib\operations\" />
<Folder Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_local_gateway\lib\" />
<Folder Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_local_gateway\lib\models\" />
<Folder Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_local_gateway\lib\operations\" />
@ -764,7 +833,6 @@
<Folder Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_vpn_connection\lib\models\" />
<Folder Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_vpn_connection\lib\operations\" />
<Folder Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_circuit\" />
<Folder Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\" />
<Folder Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_traffic_manager_profile\" />
<Folder Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_dns_zone\" />
<Folder Include="command_modules\azure-cli-network\azure\cli\command_modules\network\zone_file\" />
@ -841,6 +909,11 @@
<Folder Include="command_modules\azure-cli-vm\azure\cli\command_modules\vm\mgmt_vm\nested_templates\" />
<Folder Include="command_modules\azure-cli-vm\azure\cli\command_modules\vm\mgmt_avail_set\" />
<Folder Include="command_modules\azure-cli-vm\azure\cli\command_modules\vm\tests\" />
<Folder Include="command_modules\azure-cli-vsts\" />
<Folder Include="command_modules\azure-cli-vsts\azure\" />
<Folder Include="command_modules\azure-cli-vsts\azure\cli\" />
<Folder Include="command_modules\azure-cli-vsts\azure\cli\command_modules\" />
<Folder Include="command_modules\azure-cli-vsts\azure\cli\command_modules\vsts\" />
<Folder Include="command_modules\azure-cli-webapp\" />
<Folder Include="command_modules\azure-cli-webapp\azure\" />
<Folder Include="command_modules\azure-cli-webapp\azure\cli\" />
@ -852,6 +925,48 @@
<Content Include="azure-cli-core\setup.cfg" />
<Content Include="azure-cli\az.completion.sh" />
<Content Include="azure-cli\setup.cfg" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\registry.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\registry_create_parameters.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\registry_credentials.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\registry_move_request.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\registry_name_check_request.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\registry_name_status.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\registry_properties.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\registry_properties_create_parameters.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\registry_update_parameters.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\resource_list_registry.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\storage_account_base_properties.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\storage_account_properties.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\subscription_notification.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\subscription_properties.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\__init__.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\__pycache__\registry.cpython-35.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\__pycache__\registry_create_parameters.cpython-35.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\__pycache__\registry_credentials.cpython-35.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\__pycache__\registry_move_request.cpython-35.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\__pycache__\registry_name_check_request.cpython-35.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\__pycache__\registry_name_status.cpython-35.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\__pycache__\registry_properties.cpython-35.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\__pycache__\registry_properties_create_parameters.cpython-35.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\__pycache__\registry_update_parameters.cpython-35.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\__pycache__\resource_list_registry.cpython-35.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\__pycache__\storage_account_base_properties.cpython-35.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\__pycache__\storage_account_properties.cpython-35.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\__pycache__\subscription_notification.cpython-35.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\__pycache__\subscription_properties.cpython-35.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\models\__pycache__\__init__.cpython-35.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\operations\operation.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\operations\registries.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\operations\subscriptions.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\operations\__init__.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\operations\__pycache__\operation.cpython-35.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\operations\__pycache__\registries.cpython-35.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\operations\__pycache__\subscriptions.cpython-35.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\mgmt_acr\operations\__pycache__\__init__.cpython-35.pyc" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\template.existing.json" />
<Content Include="command_modules\azure-cli-acr\azure\cli\command_modules\acr\template.new.json" />
<Content Include="command_modules\azure-cli-acr\requirements.txt" />
<Content Include="command_modules\azure-cli-acs\requirements.txt" />
<Content Include="command_modules\azure-cli-component\requirements.txt" />
<Content Include="command_modules\azure-cli-configure\requirements.txt" />
<Content Include="command_modules\azure-cli-iot\azure\cli\command_modules\iot\mgmt_iot_hub_device\swagger_iot_hub_device_identity.json" />
@ -867,8 +982,6 @@
<Content Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_dns_zone\swagger_create_dns_zone.json" />
<Content Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_circuit\azuredeploy.json" />
<Content Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_circuit\swagger_create_express_route_circuit.json" />
<Content Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\azuredeploy.json" />
<Content Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_express_route_peering\swagger_create_express_route_peering.json" />
<Content Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_lb\azuredeploy_empty.json" />
<Content Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_lb\azuredeploy_test.md" />
<Content Include="command_modules\azure-cli-network\azure\cli\command_modules\network\mgmt_lb\swagger_create_lb.json" />
@ -946,6 +1059,7 @@
<Content Include="command_modules\azure-cli-vm\azure\cli\command_modules\vm\mgmt_vm\swagger_create_vm.json" />
<Content Include="command_modules\azure-cli-vm\azure\cli\command_modules\vm\tests\aliases.json" />
<Content Include="command_modules\azure-cli-vm\requirements.txt" />
<Content Include="command_modules\azure-cli-vsts\requirements.txt" />
<Content Include="command_modules\azure-cli-webapp\README.rst" />
<Content Include="command_modules\azure-cli-webapp\requirements.txt" />
</ItemGroup>

Просмотреть файл

@ -5,7 +5,7 @@
from __future__ import print_function
import distutils
from distutils import dir_util
import os
import re
import shutil
@ -86,7 +86,7 @@ def generate_smart_create(*args):
with open(os.path.join(root, file), 'w') as modified: modified.write(HEADER + '\n' + data)
# Rename the generated file directory to lib
distutils.dir_util.copy_tree(autorest_generated_path, os.path.join(dest, 'lib'))
dir_util.copy_tree(autorest_generated_path, os.path.join(dest, 'lib'))
# Create the cheesy __init__.py file in <dest>
with open(os.path.join(dest, '__init__.py'), 'w') as f:

Просмотреть файл

@ -343,21 +343,85 @@ helps['network express-route'] = """
type: group
short-summary: Dedicated private network fiber connections to Azure
"""
helps['network express-route circuit'] = """
type: group
short-summary: Manage express route circuits
helps['network express-route create'] = """
type: command
short-summary: Create an Express Route circuit.
"""
helps['network express-route circuit-auth'] = """
type: group
short-summary: Manage express route circuit authentication
helps['network express-route delete'] = """
type: command
short-summary: Delete an Express Route circuit.
"""
helps['network express-route circuit-peering'] = """
type: group
short-summary: Manage express route peering
helps['network express-route get-stats'] = """
type: command
short-summary: Show stats of an Express Route circuit.
"""
helps['network express-route service-provider'] = """
helps['network express-route list'] = """
type: command
short-summary: List Express Route circuits in a subscription or resource group.
"""
helps['network express-route list-arp-tables'] = """
type: command
short-summary: List the currently advertised ARP table of an Express Route circuit.
"""
helps['network express-route list-route-tables'] = """
type: command
short-summary: List the currently advertised route tables of an Express Route circuit.
"""
helps['network express-route show'] = """
type: command
short-summary: Show details of an Express Route circuit.
"""
helps['network express-route update'] = """
type: command
short-summary: Update settings of an Express Route circuit.
"""
helps['network express-route auth'] = """
type: group
short-summary: View express route service providers
short-summary: Manage Express Route circuit authentication
"""
helps['network express-route auth create'] = """
type: command
short-summary: Create an authorization setting in an Express Route circuit.
"""
helps['network express-route auth delete'] = """
type: command
short-summary: Delete an authorization setting in an Express Route circuit.
"""
helps['network express-route auth list'] = """
type: command
short-summary: List authorization settings of an Express Route circuit.
"""
helps['network express-route auth show'] = """
type: command
short-summary: Show details of an authorization setting in an Express Route circuit.
"""
helps['network express-route peering'] = """
type: group
short-summary: Manage Express Route peering
"""
helps['network express-route peering create'] = """
type: command
short-summary: Create peering settings in an Express Route circuit.
"""
helps['network express-route peering delete'] = """
type: command
short-summary: Delete peering settings in an Express Route circuit.
"""
helps['network express-route peering list'] = """
type: command
short-summary: List peering settings of an Express Route circuit.
"""
helps['network express-route peering show'] = """
type: command
short-summary: Show peering details of an Express Route circuit.
"""
helps['network express-route peering update'] = """
type: command
short-summary: Update peering settings in an Express Route circuit.
"""
helps['network express-route list-service-providers'] = """
type: command
short-summary: List available Express Route service providers.
"""
helps['network lb'] = """
type: group

Просмотреть файл

@ -6,18 +6,20 @@
# pylint: disable=line-too-long
import argparse
from azure.mgmt.network.models import IPAllocationMethod, RouteNextHopType
from azure.mgmt.network.models import \
(IPAllocationMethod, RouteNextHopType)
from azure.mgmt.network.models.network_management_client_enums import \
(ApplicationGatewaySkuName, ApplicationGatewayCookieBasedAffinity,
ApplicationGatewayTier, ApplicationGatewayProtocol,
ApplicationGatewayRequestRoutingRuleType, ExpressRouteCircuitSkuFamily,
ExpressRouteCircuitSkuTier, ExpressRouteCircuitPeeringType, IPVersion, LoadDistribution,
ProbeProtocol, TransportProtocol)
ProbeProtocol, TransportProtocol, ExpressRouteCircuitPeeringAdvertisedPublicPrefixState)
from azure.mgmt.dns.models.dns_management_client_enums import RecordType
from azure.cli.core.commands import CliArgumentType, register_cli_argument, register_extra_cli_argument
from azure.cli.core.commands import \
(CliArgumentType, register_cli_argument, register_extra_cli_argument)
from azure.cli.core.commands.parameters import (location_type, get_resource_name_completion_list,
enum_choice_list, tags_type,
enum_choice_list, tags_type, ignore_type,
get_generic_completion_list)
from azure.cli.core.commands.validators import MarkSpecifiedAction
from azure.cli.core.commands.template_create import register_folded_cli_argument
@ -26,12 +28,13 @@ from azure.cli.command_modules.network._validators import \
(process_ag_create_namespace, process_ag_listener_create_namespace,
process_ag_http_settings_create_namespace, process_ag_url_path_map_create_namespace,
process_nic_create_namespace, process_lb_create_namespace, process_ag_rule_create_namespace,
process_ag_url_path_map_rule_create_namespace,
process_ag_url_path_map_rule_create_namespace, process_auth_create_namespace,
process_public_ip_create_namespace, validate_public_ip_type, validate_private_ip_address,
validate_subnet_name_or_id, validate_public_ip_name_or_id, validate_nsg_name_or_id,
validate_inbound_nat_rule_id_list, validate_address_pool_id_list,
validate_inbound_nat_rule_name_or_id, validate_address_pool_name_or_id,
validate_servers, validate_cert, validate_address_prefixes, load_cert_file, vnet_gateway_validator)
validate_servers, validate_cert, validate_address_prefixes, load_cert_file,
vnet_gateway_validator, validate_peering_type)
from azure.cli.command_modules.network.mgmt_nic.lib.models.nic_creation_client_enums import privateIpAddressVersion
from azure.cli.command_modules.network.mgmt_vnet_gateway.lib.models.vnet_gateway_creation_client_enums import \
(gatewayType, sku, vpnType)
@ -39,6 +42,12 @@ from azure.cli.command_modules.network.mgmt_traffic_manager_profile.lib.models.t
import routingMethod
from azure.cli.command_modules.network.custom import list_traffic_manager_endpoints
# CHOICE LISTS
# taken from Xplat. No enums in SDK
routing_registry_values = ['ARIN', 'APNIC', 'AFRINIC', 'LACNIC', 'RIPENCC', 'RADB', 'ALTDB', 'LEVEL3']
device_path_values = ['primary', 'secondary']
# COMPLETERS
def get_subnet_completion_list():
@ -100,6 +109,7 @@ def get_tm_endpoint_completion_list():
name_arg_type = CliArgumentType(options_list=('--name', '-n'), metavar='NAME')
nic_type = CliArgumentType(options_list=('--nic-name',), metavar='NIC_NAME', help='The network interface (NIC).', id_part='name', completer=get_resource_name_completion_list('Microsoft.Network/networkInterfaces'))
nsg_name_type = CliArgumentType(options_list=('--nsg-name',), metavar='NSG', help='Name of the network security group.')
circuit_name_type = CliArgumentType(options_list=('--circuit-name',), metavar='CIRCUIT', help='Express Route circuit name.', id_part='name', completer=get_resource_name_completion_list('Microsoft.Network/expressRouteCircuits'))
virtual_network_name_type = CliArgumentType(options_list=('--vnet-name',), metavar='VNET_NAME', help='The virtual network (VNET) name.', completer=get_resource_name_completion_list('Microsoft.Network/virtualNetworks'))
subnet_name_type = CliArgumentType(options_list=('--subnet-name',), metavar='SUBNET_NAME', help='The subnet name.')
load_balancer_name_type = CliArgumentType(options_list=('--lb-name',), metavar='LB_NAME', help='The load balancer name.', completer=get_resource_name_completion_list('Microsoft.Network/loadBalancers'), id_part='name')
@ -200,21 +210,30 @@ register_cli_argument('network application-gateway url-path-map rule', 'url_path
register_cli_argument('network application-gateway url-path-map rule', 'address_pool', help='The name or ID of the backend address pool. If not specified, the default for the map will be used.', validator=process_ag_url_path_map_rule_create_namespace, completer=get_ag_subresource_completion_list('backend_address_pools'))
register_cli_argument('network application-gateway url-path-map rule', 'http_settings', help='The name or ID of the HTTP settings. If not specified, the default for the map will be used.', completer=get_ag_subresource_completion_list('backend_http_settings_collection'))
# Express Route Circuit Auth
register_cli_argument('network express-route circuit-auth', 'authorization_name', name_arg_type, id_part='child_name', help='Authorization name')
register_cli_argument('network express-route circuit-auth', 'circuit_name', completer=get_resource_name_completion_list('Microsoft.Network/expressRouteCircuits'), id_part='name', help='Circuit name.')
register_cli_argument('network express-route circuit-auth', 'authorization_key', help='Authorization key.')
# Express Routes
register_cli_argument('network express-route', 'circuit_name', circuit_name_type, options_list=('--name', '-n'))
register_cli_argument('network express-route', 'sku_family', **enum_choice_list(ExpressRouteCircuitSkuFamily))
register_cli_argument('network express-route', 'sku_tier', **enum_choice_list(ExpressRouteCircuitSkuTier))
register_cli_argument('network express-route', 'bandwidth_in_mbps', options_list=('--bandwidth',))
register_cli_argument('network express-route', 'service_provider_name', options_list=('--provider',))
register_cli_argument('network express-route', 'device_path', options_list=('--path',), **enum_choice_list(device_path_values))
# Express Route Circuit Peering
register_cli_argument('network express-route circuit-peering', 'peering_name', name_arg_type, id_part='child_name')
register_cli_argument('network express-route circuit-peering', 'peering_type', **enum_choice_list(ExpressRouteCircuitPeeringType))
register_cli_argument('network express-route circuit-peering', 'sku_family', **enum_choice_list(ExpressRouteCircuitSkuFamily))
register_cli_argument('network express-route circuit-peering', 'sku_tier', **enum_choice_list(ExpressRouteCircuitSkuTier))
register_cli_argument('network express-route auth', 'circuit_name', circuit_name_type)
register_cli_argument('network express-route auth', 'authorization_name', name_arg_type, id_part='child_name', help='Authorization name')
# Express Route Circuit
register_cli_argument('network express-route circuit', 'circuit_name', name_arg_type, completer=get_resource_name_completion_list('Microsoft.Network/expressRouteCircuits'), id_part='name')
register_cli_argument('network express-route circuit', 'sku_family', **enum_choice_list(ExpressRouteCircuitSkuFamily))
register_cli_argument('network express-route circuit', 'sku_tier', **enum_choice_list(ExpressRouteCircuitSkuTier))
register_cli_argument('network express-route auth create', 'authorization_parameters', ignore_type, validator=process_auth_create_namespace)
register_cli_argument('network express-route peering', 'circuit_name', circuit_name_type)
register_cli_argument('network express-route peering', 'peering_name', name_arg_type, id_part='child_name')
register_cli_argument('network express-route peering', 'peering_type', validator=validate_peering_type, **enum_choice_list(ExpressRouteCircuitPeeringType))
register_cli_argument('network express-route peering', 'sku_family', **enum_choice_list(ExpressRouteCircuitSkuFamily))
register_cli_argument('network express-route peering', 'sku_tier', **enum_choice_list(ExpressRouteCircuitSkuTier))
register_cli_argument('network express-route peering', 'advertised_public_prefix_state', arg_group='Microsoft Peering', **enum_choice_list(ExpressRouteCircuitPeeringAdvertisedPublicPrefixState))
register_cli_argument('network express-route peering', 'advertised_public_prefixes', arg_group='Microsoft Peering', nargs='+')
register_cli_argument('network express-route peering', 'primary_peer_address_prefix', options_list=('--primary-peer-subnet',))
register_cli_argument('network express-route peering', 'secondary_peer_address_prefix', options_list=('--secondary-peer-subnet',))
register_cli_argument('network express-route peering', 'customer_asn', arg_group='Microsoft Peering')
register_cli_argument('network express-route peering', 'routing_registry_name', arg_group='Microsoft Peering', **enum_choice_list(routing_registry_values))
# Local Gateway
register_cli_argument('network local-gateway', 'local_network_gateway_name', name_arg_type, completer=get_resource_name_completion_list('Microsoft.Network/localNetworkGateways'), id_part='name')

Просмотреть файл

@ -150,6 +150,19 @@ def validate_nsg_name_or_id(namespace):
type='networkSecurityGroups',
name=namespace.network_security_group)
def validate_peering_type(namespace):
if namespace.peering_type and namespace.peering_type == 'MicrosoftPeering':
microsoft_params = {
'--advertised-public-prefix-state': namespace.advertised_public_prefix_state,
'--advertised-public-prefixes': namespace.advertised_public_prefixes,
'--customer-asn': namespace.customer_asn,
'--routing-registry-name': namespace.routing_registry_name
}
missing_params = [k for k, v in microsoft_params.items() if not v]
if any(missing_params):
raise CLIError('missing required MicrosoftPeering parameters: {}'.format(
' '.join(missing_params)))
def validate_private_ip_address(namespace):
if namespace.private_ip_address:
namespace.private_ip_address_allocation = 'static'
@ -293,6 +306,10 @@ def process_ag_create_namespace(namespace):
if not namespace.public_ip_type:
namespace.public_ip_type = 'none'
def process_auth_create_namespace(namespace):
from azure.mgmt.network.models import ExpressRouteCircuitAuthorization
namespace.authorization_parameters = ExpressRouteCircuitAuthorization()
def process_lb_create_namespace(namespace):
if namespace.public_ip_dns_name:
namespace.dns_name_type = 'new'

Просмотреть файл

@ -12,8 +12,7 @@ from azure.mgmt.network.models import \
(Subnet, SecurityRule, PublicIPAddress, NetworkSecurityGroup, InboundNatRule, InboundNatPool,
FrontendIPConfiguration, BackendAddressPool, Probe, LoadBalancingRule,
NetworkInterfaceIPConfiguration, Route, VpnClientRootCertificate, VpnClientConfiguration,
AddressSpace, VpnClientRevokedCertificate, ExpressRouteCircuitAuthorization, SubResource,
VirtualNetworkPeering)
AddressSpace, VpnClientRevokedCertificate, SubResource, VirtualNetworkPeering)
from azure.cli.core.commands.arm import parse_resource_id, is_valid_resource_id, resource_id
from azure.cli.core._util import CLIError
@ -811,11 +810,39 @@ def update_network_vpn_gateway(instance, address_prefixes=None):
config.vpn_client_address_pool.address_prefixes = address_prefixes
def create_express_route_auth(resource_group_name, circuit_name, authorization_name,
authorization_key):
ncf = _network_client_factory().express_route_circuit_authorizations
auth = ExpressRouteCircuitAuthorization(authorization_key=authorization_key)
return ncf.create_or_update(resource_group_name, circuit_name, authorization_name, auth)
def create_express_route_peering(
client, resource_group_name, circuit_name, peering_type, peer_asn, vlan_id,
primary_peer_address_prefix, secondary_peer_address_prefix, shared_key=None,
advertised_public_prefixes=None, advertised_public_prefix_state=None, customer_asn=None,
routing_registry_name=None):
"""
:param str peer_asn: Autonomous system number of the customer/connectivity provider.
:param str vlan_id: Identifier used to identify the customer.
:param str peering_type: BGP peering type for the circuit.
:param str primary_peer_address_prefix: /30 subnet used to configure IP
addresses for primary interface.
:param str secondary_peer_address_prefix: /30 subnet used to configure IP addresses
for secondary interface.
:param str shared_key: Key for generating an MD5 for the BGP session.
:param str advertised_public_prefixes: List of prefixes to be advertised through
the BGP peering.
:param str advertised_public_prefix_state: Configuration state of the BGP session.
:param str customer_asn: Autonomous system number of the customer.
:param str routing_registry_name: Internet Routing Registry / Regional Internet Registry
"""
from azure.mgmt.network.models import \
(ExpressRouteCircuitPeering, ExpressRouteCircuitPeeringConfig)
peering_config = ExpressRouteCircuitPeeringConfig(
advertised_public_prefixes, advertised_public_prefix_state,
customer_asn, routing_registry_name) if peering_type == 'MicrosoftPeering' else None
peering = ExpressRouteCircuitPeering(
peering_type=peering_type, peer_asn=peer_asn, vlan_id=vlan_id,
primary_peer_address_prefix=primary_peer_address_prefix,
secondary_peer_address_prefix=secondary_peer_address_prefix,
shared_key=shared_key,
microsoft_peering_config=peering_config)
return client.create_or_update(
resource_group_name, circuit_name, peering_type, peering)
def create_route(resource_group_name, route_table_name, route_name, next_hop_type, address_prefix,
next_hop_ip_address=None):

Просмотреть файл

@ -65,10 +65,6 @@ from azure.cli.command_modules.network.mgmt_express_route_circuit.lib.operations
import ExpressRouteCircuitOperations
from azure.cli.command_modules.network.mgmt_express_route_circuit.lib \
import ExpressRouteCircuitCreationClient as ExpressRouteCircuitClient
from azure.cli.command_modules.network.mgmt_express_route_peering.lib.operations \
import ExpressRoutePeeringOperations
from azure.cli.command_modules.network.mgmt_express_route_peering.lib \
import ExpressRoutePeeringCreationClient as ExpressRoutePeeringClient
from azure.cli.command_modules.network.mgmt_traffic_manager_profile.lib.operations \
import TrafficManagerProfileOperations
from azure.cli.command_modules.network.mgmt_traffic_manager_profile.lib \
@ -108,7 +104,8 @@ from .custom import \
list_application_gateways, list_express_route_circuits, list_lbs, list_nics, list_nsgs,
list_public_ips, list_route_tables, list_vnet, create_vnet_peering, create_route,
update_network_vpn_gateway, create_vpn_gateway_root_cert, delete_vpn_gateway_root_cert,
create_vpn_gateway_revoked_cert, delete_vpn_gateway_revoked_cert, create_express_route_auth,
create_vpn_gateway_revoked_cert, delete_vpn_gateway_revoked_cert,
create_express_route_peering,
list_traffic_manager_profiles, create_traffic_manager_endpoint, list_dns_zones,
create_dns_record_set, add_dns_aaaa_record, add_dns_a_record, add_dns_cname_record,
add_dns_ns_record, add_dns_ptr_record, update_dns_soa_record, add_dns_srv_record,
@ -162,38 +159,35 @@ cli_command('network application-gateway url-path-map rule delete', delete_ag_ur
# ExpressRouteCircuitAuthorizationsOperations
factory = lambda _: _network_client_factory().express_route_circuit_authorizations
cli_command('network express-route circuit-auth delete', ExpressRouteCircuitAuthorizationsOperations.delete, factory)
cli_command('network express-route circuit-auth show', ExpressRouteCircuitAuthorizationsOperations.get, factory)
cli_command('network express-route circuit-auth list', ExpressRouteCircuitAuthorizationsOperations.list, factory)
cli_generic_update_command('network express-route circuit-auth update', ExpressRouteCircuitAuthorizationsOperations.get, ExpressRouteCircuitAuthorizationsOperations.create_or_update, factory)
cli_command('network express-route circuit-auth create', create_express_route_auth)
cli_command('network express-route auth delete', ExpressRouteCircuitAuthorizationsOperations.delete, factory)
cli_command('network express-route auth show', ExpressRouteCircuitAuthorizationsOperations.get, factory)
cli_command('network express-route auth list', ExpressRouteCircuitAuthorizationsOperations.list, factory)
cli_command('network express-route auth create', ExpressRouteCircuitAuthorizationsOperations.create_or_update, factory)
# ExpressRouteCircuitPeeringsOperations
factory = lambda _: _network_client_factory().express_route_circuit_peerings
cli_command('network express-route circuit-peering delete', ExpressRouteCircuitPeeringsOperations.delete, factory)
cli_command('network express-route circuit-peering show', ExpressRouteCircuitPeeringsOperations.get, factory)
cli_command('network express-route circuit-peering list', ExpressRouteCircuitPeeringsOperations.list, factory)
cli_generic_update_command('network express-route circuit-peering update', ExpressRouteCircuitPeeringsOperations.get, ExpressRouteCircuitPeeringsOperations.create_or_update, factory)
factory = lambda _: get_mgmt_service_client(ExpressRoutePeeringClient).express_route_peering
cli_command('network express-route circuit-peering create', ExpressRoutePeeringOperations.create_or_update, factory, transform=DeploymentOutputLongRunningOperation('Starting network express-route circuit-peering create'))
cli_command('network express-route peering delete', ExpressRouteCircuitPeeringsOperations.delete, factory)
cli_command('network express-route peering show', ExpressRouteCircuitPeeringsOperations.get, factory)
cli_command('network express-route peering list', ExpressRouteCircuitPeeringsOperations.list, factory)
cli_generic_update_command('network express-route peering update', ExpressRouteCircuitPeeringsOperations.get, ExpressRouteCircuitPeeringsOperations.create_or_update, factory, setter_arg_name='peering_parameters')
cli_command('network express-route peering create', create_express_route_peering, factory)
# ExpressRouteCircuitsOperations
factory = lambda _: _network_client_factory().express_route_circuits
cli_command('network express-route circuit delete', ExpressRouteCircuitsOperations.delete, factory)
cli_command('network express-route circuit show', ExpressRouteCircuitsOperations.get, factory)
cli_command('network express-route circuit get-stats', ExpressRouteCircuitsOperations.get_stats, factory)
cli_command('network express-route circuit list-arp-tables', ExpressRouteCircuitsOperations.list_arp_table, factory)
cli_command('network express-route circuit list-route-tables', ExpressRouteCircuitsOperations.list_routes_table, factory)
cli_command('network express-route circuit list', list_express_route_circuits)
cli_generic_update_command('network express-route circuit update', ExpressRouteCircuitsOperations.get, ExpressRouteCircuitsOperations.create_or_update, factory)
cli_command('network express-route delete', ExpressRouteCircuitsOperations.delete, factory)
cli_command('network express-route show', ExpressRouteCircuitsOperations.get, factory)
cli_command('network express-route get-stats', ExpressRouteCircuitsOperations.get_stats, factory)
cli_command('network express-route list-arp-tables', ExpressRouteCircuitsOperations.list_arp_table, factory)
cli_command('network express-route list-route-tables', ExpressRouteCircuitsOperations.list_routes_table, factory)
cli_command('network express-route list', list_express_route_circuits)
cli_generic_update_command('network express-route update', ExpressRouteCircuitsOperations.get, ExpressRouteCircuitsOperations.create_or_update, factory)
factory = lambda _: get_mgmt_service_client(ExpressRouteCircuitClient).express_route_circuit
cli_command('network express-route circuit create', ExpressRouteCircuitOperations.create_or_update, factory, transform=DeploymentOutputLongRunningOperation('Starting network express-route circuit create'))
cli_command('network express-route create', ExpressRouteCircuitOperations.create_or_update, factory, transform=DeploymentOutputLongRunningOperation('Starting network express-route create'))
# ExpressRouteServiceProvidersOperations
factory = lambda _: _network_client_factory().express_route_service_providers
cli_command('network express-route service-provider list', ExpressRouteServiceProvidersOperations.list, factory)
cli_command('network express-route list-service-providers', ExpressRouteServiceProvidersOperations.list, factory)
# LoadBalancersOperations
factory = lambda _: _network_client_factory().load_balancers

Просмотреть файл

@ -1,8 +0,0 @@
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------
#pylint: skip-file
import pkg_resources
pkg_resources.declare_namespace(__name__)

Просмотреть файл

@ -1,122 +0,0 @@
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"bandwidthInMbps": {
"type": "int",
"metadata": {
"description": "Bandwidth in Mbps of the circuit being created. It must exactly match one of the available bandwidth offers List ExpressRoute Service Providers API call."
}
},
"circuitName": {
"type": "string",
"metadata": {
"description": "Name of the ExpressRoute circuit"
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for resources."
}
},
"peerASN": {
"type": "int",
"metadata": {
"description": "The autonomous system number of the customer/connectivity provider."
}
},
"peeringLocation": {
"type": "string",
"metadata": {
"description": "Name of the peering location and not the ARM resource location. It must exactly match one of the available peering locations from List ExpressRoute Service Providers API call."
}
},
"peeringType": {
"type": "string",
"defaultValue": "AzurePrivatePeering",
"metadata": {
"description": "BGP peering type for the Circuit."
}
},
"primaryPeerAddressPrefix": {
"type": "string",
"metadata": {
"description": "/30 subnet used to configure IP addresses for interfaces on Link1."
}
},
"secondaryPeerAddressPrefix": {
"type": "string",
"metadata": {
"description": "/30 subnet used to configure IP addresses for interfaces on Link2."
}
},
"serviceProviderName": {
"type": "string",
"metadata": {
"description": "Name of the ExpressRoute Service Provider. It must exactly match one of the Service Providers from List ExpressRoute Service Providers API call."
}
},
"sku_family": {
"type": "string",
"defaultValue": "MeteredData",
"metadata": {
"description": "Chosen SKU family of ExpressRoute circuit."
}
},
"sku_tier": {
"type": "string",
"defaultValue": "Standard",
"metadata": {
"description": "Chosen SKU Tier of ExpressRoute circuit."
}
},
"tags": {
"type": "object",
"defaultValue": { },
"metadata": {
"description": "Tags object."
}
},
"vlanId": {
"type": "int",
"metadata": {
"description": "Specifies the identifier that is used to identify the customer."
}
}
},
"resources": [
{
"apiVersion": "2015-05-01-preview",
"type": "Microsoft.Network/expressRouteCircuits",
"name": "[parameters('circuitName')]",
"location": "[parameters('location')]",
"tags": "[parameters('tags')]",
"sku": {
"name": "[concat(parameters('sku_tier'),'_', parameters('sku_family'))]",
"tier": "[parameters('sku_tier')]",
"family": "[parameters('sku_family')]"
},
"properties": {
"serviceProviderProperties": {
"serviceProviderName": "[parameters('serviceProviderName')]",
"peeringLocation": "[parameters('peeringLocation')]",
"bandwidthInMbps": "[parameters('bandwidthInMbps')]"
},
"peerings": [
{
"name": "[parameters('peeringType')]",
"properties": {
"peeringType": "[parameters('peeringType')]",
"peerASN": "[parameters('peerASN')]",
"primaryPeerAddressPrefix": "[parameters('primaryPeerAddressPrefix')]",
"secondaryPeerAddressPrefix": "[parameters('secondaryPeerAddressPrefix')]",
"vlanId": "[parameters('vlanId')]"
}
}
]
}
}
]
}

Просмотреть файл

@ -1,20 +0,0 @@
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------
#pylint: skip-file
# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
from .express_route_peering_creation_client import ExpressRoutePeeringCreationClient
from .version import VERSION
__all__ = ['ExpressRoutePeeringCreationClient']
__version__ = VERSION

Просмотреть файл

@ -1,22 +0,0 @@
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------
#pylint: skip-file
# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
from msrest.authentication import (
BasicAuthentication,
BasicTokenAuthentication,
OAuthTokenAuthentication)
from msrestazure.azure_active_directory import (
InteractiveCredentials,
ServicePrincipalCredentials,
UserPassCredentials)

Просмотреть файл

@ -1,25 +0,0 @@
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------
#pylint: skip-file
# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
from msrest.exceptions import (
ClientException,
SerializationError,
DeserializationError,
TokenExpiredError,
ClientRequestError,
AuthenticationError,
HttpOperationError,
ValidationError,
)
from msrestazure.azure_exceptions import CloudError

Просмотреть файл

@ -1,122 +0,0 @@
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------
#pylint: skip-file
# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
from msrest.service_client import ServiceClient
from msrest import Serializer, Deserializer
from msrestazure import AzureConfiguration
from .version import VERSION
from .operations.express_route_peering_operations import ExpressRoutePeeringOperations
from . import models
class ExpressRoutePeeringCreationClientConfiguration(AzureConfiguration):
"""Configuration for ExpressRoutePeeringCreationClient
Note that all parameters used to create this instance are saved as instance
attributes.
:param credentials: Gets Azure subscription credentials.
:type credentials: :mod:`A msrestazure Credentials
object<msrestazure.azure_active_directory>`
:param subscription_id: Gets subscription credentials which uniquely
identify Microsoft Azure subscription. The subscription ID forms part of
the URI for every service call.
:type subscription_id: str
:param api_version: Client Api Version.
:type api_version: str
:param accept_language: Gets or sets the preferred language for the
response.
:type accept_language: str
:param long_running_operation_retry_timeout: Gets or sets the retry
timeout in seconds for Long Running Operations. Default value is 30.
:type long_running_operation_retry_timeout: int
:param generate_client_request_id: When set to true a unique
x-ms-client-request-id value is generated and included in each request.
Default is true.
:type generate_client_request_id: bool
:param str base_url: Service URL
:param str filepath: Existing config
"""
def __init__(
self, credentials, subscription_id, api_version='2015-11-01', accept_language='en-US', long_running_operation_retry_timeout=30, generate_client_request_id=True, base_url=None, filepath=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 isinstance(subscription_id, str):
raise TypeError("Parameter 'subscription_id' must be str.")
if api_version is not None and not isinstance(api_version, str):
raise TypeError("Optional parameter 'api_version' must be str.")
if accept_language is not None and not isinstance(accept_language, str):
raise TypeError("Optional parameter 'accept_language' must be str.")
if not base_url:
base_url = 'https://management.azure.com'
super(ExpressRoutePeeringCreationClientConfiguration, self).__init__(base_url, filepath)
self.add_user_agent('expressroutepeeringcreationclient/{}'.format(VERSION))
self.add_user_agent('Azure-SDK-For-Python')
self.credentials = credentials
self.subscription_id = subscription_id
self.api_version = api_version
self.accept_language = accept_language
self.long_running_operation_retry_timeout = long_running_operation_retry_timeout
self.generate_client_request_id = generate_client_request_id
class ExpressRoutePeeringCreationClient(object):
"""ExpressRoutePeeringCreationClient
:ivar config: Configuration for client.
:vartype config: ExpressRoutePeeringCreationClientConfiguration
:ivar express_route_peering: ExpressRoutePeering operations
:vartype express_route_peering: .operations.ExpressRoutePeeringOperations
:param credentials: Gets Azure subscription credentials.
:type credentials: :mod:`A msrestazure Credentials
object<msrestazure.azure_active_directory>`
:param subscription_id: Gets subscription credentials which uniquely
identify Microsoft Azure subscription. The subscription ID forms part of
the URI for every service call.
:type subscription_id: str
:param api_version: Client Api Version.
:type api_version: str
:param accept_language: Gets or sets the preferred language for the
response.
:type accept_language: str
:param long_running_operation_retry_timeout: Gets or sets the retry
timeout in seconds for Long Running Operations. Default value is 30.
:type long_running_operation_retry_timeout: int
:param generate_client_request_id: When set to true a unique
x-ms-client-request-id value is generated and included in each request.
Default is true.
:type generate_client_request_id: bool
:param str base_url: Service URL
:param str filepath: Existing config
"""
def __init__(
self, credentials, subscription_id, api_version='2015-11-01', accept_language='en-US', long_running_operation_retry_timeout=30, generate_client_request_id=True, base_url=None, filepath=None):
self.config = ExpressRoutePeeringCreationClientConfiguration(credentials, subscription_id, api_version, accept_language, long_running_operation_retry_timeout, generate_client_request_id, base_url, filepath)
self._client = ServiceClient(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.express_route_peering = ExpressRoutePeeringOperations(
self._client, self.config, self._serialize, self._deserialize)

Просмотреть файл

@ -1,38 +0,0 @@
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------
#pylint: skip-file
# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
from .deployment_express_route_peering import DeploymentExpressRoutePeering
from .template_link import TemplateLink
from .parameters_link import ParametersLink
from .provider_resource_type import ProviderResourceType
from .provider import Provider
from .basic_dependency import BasicDependency
from .dependency import Dependency
from .deployment_properties_extended import DeploymentPropertiesExtended
from .deployment_extended import DeploymentExtended
from .express_route_peering_creation_client_enums import (
DeploymentMode,
)
__all__ = [
'DeploymentExpressRoutePeering',
'TemplateLink',
'ParametersLink',
'ProviderResourceType',
'Provider',
'BasicDependency',
'Dependency',
'DeploymentPropertiesExtended',
'DeploymentExtended',
'DeploymentMode',
]

Просмотреть файл

@ -1,38 +0,0 @@
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------
#pylint: skip-file
# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
from msrest.serialization import Model
class BasicDependency(Model):
"""
Deployment dependency information.
:param id: Gets or sets the ID of the dependency.
:type id: str
:param resource_type: Gets or sets the dependency resource type.
:type resource_type: str
:param resource_name: Gets or sets the dependency resource name.
:type resource_name: str
"""
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'resource_type': {'key': 'resourceType', 'type': 'str'},
'resource_name': {'key': 'resourceName', 'type': 'str'},
}
def __init__(self, id=None, resource_type=None, resource_name=None):
self.id = id
self.resource_type = resource_type
self.resource_name = resource_name

Просмотреть файл

@ -1,43 +0,0 @@
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------
#pylint: skip-file
# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
from msrest.serialization import Model
class Dependency(Model):
"""
Deployment dependency information.
:param depends_on: Gets the list of dependencies.
:type depends_on: list of :class:`BasicDependency
<default.models.BasicDependency>`
:param id: Gets or sets the ID of the dependency.
:type id: str
:param resource_type: Gets or sets the dependency resource type.
:type resource_type: str
:param resource_name: Gets or sets the dependency resource name.
:type resource_name: str
"""
_attribute_map = {
'depends_on': {'key': 'dependsOn', 'type': '[BasicDependency]'},
'id': {'key': 'id', 'type': 'str'},
'resource_type': {'key': 'resourceType', 'type': 'str'},
'resource_name': {'key': 'resourceName', 'type': 'str'},
}
def __init__(self, depends_on=None, id=None, resource_type=None, resource_name=None):
self.depends_on = depends_on
self.id = id
self.resource_type = resource_type
self.resource_name = resource_name

Просмотреть файл

@ -1,125 +0,0 @@
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------
#pylint: skip-file
# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
from msrest.serialization import Model
class DeploymentExpressRoutePeering(Model):
"""
Deployment operation parameters.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar uri: URI referencing the template. Default value:
"https://azuresdkci.blob.core.windows.net/templatehost/CreateExpressRoutePeering_2016-08-08/azuredeploy.json"
.
:vartype uri: str
:param content_version: If included it must match the ContentVersion in
the template.
:type content_version: str
:param bandwidth_in_mbps: Bandwidth in Mbps of the circuit being created.
It must exactly match one of the available bandwidth offers List
ExpressRoute Service Providers API call.
:type bandwidth_in_mbps: int
:param circuit_name: Name of the ExpressRoute circuit
:type circuit_name: str
:param location: Location for resources.
:type location: str
:param peer_asn: The autonomous system number of the
customer/connectivity provider.
:type peer_asn: int
:param peering_location: Name of the peering location and not the ARM
resource location. It must exactly match one of the available peering
locations from List ExpressRoute Service Providers API call.
:type peering_location: str
:param peering_type: BGP peering type for the Circuit. Default value:
"AzurePrivatePeering" .
:type peering_type: str
:param primary_peer_address_prefix: /30 subnet used to configure IP
addresses for interfaces on Link1.
:type primary_peer_address_prefix: str
:param secondary_peer_address_prefix: /30 subnet used to configure IP
addresses for interfaces on Link2.
:type secondary_peer_address_prefix: str
:param service_provider_name: Name of the ExpressRoute Service Provider.
It must exactly match one of the Service Providers from List
ExpressRoute Service Providers API call.
:type service_provider_name: str
:param sku_family: Chosen SKU family of ExpressRoute circuit. Default
value: "MeteredData" .
:type sku_family: str
:param sku_tier: Chosen SKU Tier of ExpressRoute circuit. Default value:
"Standard" .
:type sku_tier: str
:param tags: Tags object.
:type tags: object
:param vlan_id: Specifies the identifier that is used to identify the
customer.
:type vlan_id: int
:ivar mode: Gets or sets the deployment mode. Default value:
"Incremental" .
:vartype mode: str
"""
_validation = {
'uri': {'required': True, 'constant': True},
'bandwidth_in_mbps': {'required': True},
'circuit_name': {'required': True},
'peer_asn': {'required': True},
'peering_location': {'required': True},
'primary_peer_address_prefix': {'required': True},
'secondary_peer_address_prefix': {'required': True},
'service_provider_name': {'required': True},
'vlan_id': {'required': True},
'mode': {'required': True, 'constant': True},
}
_attribute_map = {
'uri': {'key': 'properties.templateLink.uri', 'type': 'str'},
'content_version': {'key': 'properties.templateLink.contentVersion', 'type': 'str'},
'bandwidth_in_mbps': {'key': 'properties.parameters.bandwidthInMbps.value', 'type': 'int'},
'circuit_name': {'key': 'properties.parameters.circuitName.value', 'type': 'str'},
'location': {'key': 'properties.parameters.location.value', 'type': 'str'},
'peer_asn': {'key': 'properties.parameters.peerASN.value', 'type': 'int'},
'peering_location': {'key': 'properties.parameters.peeringLocation.value', 'type': 'str'},
'peering_type': {'key': 'properties.parameters.peeringType.value', 'type': 'str'},
'primary_peer_address_prefix': {'key': 'properties.parameters.primaryPeerAddressPrefix.value', 'type': 'str'},
'secondary_peer_address_prefix': {'key': 'properties.parameters.secondaryPeerAddressPrefix.value', 'type': 'str'},
'service_provider_name': {'key': 'properties.parameters.serviceProviderName.value', 'type': 'str'},
'sku_family': {'key': 'properties.parameters.sku_family.value', 'type': 'str'},
'sku_tier': {'key': 'properties.parameters.sku_tier.value', 'type': 'str'},
'tags': {'key': 'properties.parameters.tags.value', 'type': 'object'},
'vlan_id': {'key': 'properties.parameters.vlanId.value', 'type': 'int'},
'mode': {'key': 'properties.mode', 'type': 'str'},
}
uri = "https://azuresdkci.blob.core.windows.net/templatehost/CreateExpressRoutePeering_2016-08-08/azuredeploy.json"
mode = "Incremental"
def __init__(self, bandwidth_in_mbps, circuit_name, peer_asn, peering_location, primary_peer_address_prefix, secondary_peer_address_prefix, service_provider_name, vlan_id, content_version=None, location=None, peering_type="AzurePrivatePeering", sku_family="MeteredData", sku_tier="Standard", tags=None):
self.content_version = content_version
self.bandwidth_in_mbps = bandwidth_in_mbps
self.circuit_name = circuit_name
self.location = location
self.peer_asn = peer_asn
self.peering_location = peering_location
self.peering_type = peering_type
self.primary_peer_address_prefix = primary_peer_address_prefix
self.secondary_peer_address_prefix = secondary_peer_address_prefix
self.service_provider_name = service_provider_name
self.sku_family = sku_family
self.sku_tier = sku_tier
self.tags = tags
self.vlan_id = vlan_id

Просмотреть файл

@ -1,43 +0,0 @@
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------
#pylint: skip-file
# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
from msrest.serialization import Model
class DeploymentExtended(Model):
"""
Deployment information.
:param id: Gets or sets the ID of the deployment.
:type id: str
:param name: Gets or sets the name of the deployment.
:type name: str
:param properties: Gets or sets deployment properties.
:type properties: :class:`DeploymentPropertiesExtended
<default.models.DeploymentPropertiesExtended>`
"""
_validation = {
'name': {'required': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'properties': {'key': 'properties', 'type': 'DeploymentPropertiesExtended'},
}
def __init__(self, name, id=None, properties=None):
self.id = id
self.name = name
self.properties = properties

Просмотреть файл

@ -1,80 +0,0 @@
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------
#pylint: skip-file
# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
from msrest.serialization import Model
class DeploymentPropertiesExtended(Model):
"""
Deployment properties with additional details.
:param provisioning_state: Gets or sets the state of the provisioning.
:type provisioning_state: str
:param correlation_id: Gets or sets the correlation ID of the deployment.
:type correlation_id: str
:param timestamp: Gets or sets the timestamp of the template deployment.
:type timestamp: datetime
:param outputs: Gets or sets key/value pairs that represent
deploymentoutput.
:type outputs: object
:param providers: Gets the list of resource providers needed for the
deployment.
:type providers: list of :class:`Provider <default.models.Provider>`
:param dependencies: Gets the list of deployment dependencies.
:type dependencies: list of :class:`Dependency
<default.models.Dependency>`
:param template: Gets or sets the template content. Use only one of
Template or TemplateLink.
:type template: object
:param template_link: Gets or sets the URI referencing the template. Use
only one of Template or TemplateLink.
:type template_link: :class:`TemplateLink <default.models.TemplateLink>`
:param parameters: Deployment parameters. Use only one of Parameters or
ParametersLink.
:type parameters: object
:param parameters_link: Gets or sets the URI referencing the parameters.
Use only one of Parameters or ParametersLink.
:type parameters_link: :class:`ParametersLink
<default.models.ParametersLink>`
:param mode: Gets or sets the deployment mode. Possible values include:
'Incremental', 'Complete'
:type mode: str or :class:`DeploymentMode
<expressroutepeeringcreationclient.models.DeploymentMode>`
"""
_attribute_map = {
'provisioning_state': {'key': 'provisioningState', 'type': 'str'},
'correlation_id': {'key': 'correlationId', 'type': 'str'},
'timestamp': {'key': 'timestamp', 'type': 'iso-8601'},
'outputs': {'key': 'outputs', 'type': 'object'},
'providers': {'key': 'providers', 'type': '[Provider]'},
'dependencies': {'key': 'dependencies', 'type': '[Dependency]'},
'template': {'key': 'template', 'type': 'object'},
'template_link': {'key': 'TemplateLink', 'type': 'TemplateLink'},
'parameters': {'key': 'parameters', 'type': 'object'},
'parameters_link': {'key': 'parametersLink', 'type': 'ParametersLink'},
'mode': {'key': 'mode', 'type': 'DeploymentMode'},
}
def __init__(self, provisioning_state=None, correlation_id=None, timestamp=None, outputs=None, providers=None, dependencies=None, template=None, template_link=None, parameters=None, parameters_link=None, mode=None):
self.provisioning_state = provisioning_state
self.correlation_id = correlation_id
self.timestamp = timestamp
self.outputs = outputs
self.providers = providers
self.dependencies = dependencies
self.template = template
self.template_link = template_link
self.parameters = parameters
self.parameters_link = parameters_link
self.mode = mode

Просмотреть файл

@ -1,20 +0,0 @@
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------
#pylint: skip-file
# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
from enum import Enum
class DeploymentMode(Enum):
incremental = "Incremental"
complete = "Complete"

Просмотреть файл

@ -1,39 +0,0 @@
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------
#pylint: skip-file
# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
from msrest.serialization import Model
class ParametersLink(Model):
"""
Entity representing the reference to the deployment paramaters.
:param uri: URI referencing the template.
:type uri: str
:param content_version: If included it must match the ContentVersion in
the template.
:type content_version: str
"""
_validation = {
'uri': {'required': True},
}
_attribute_map = {
'uri': {'key': 'uri', 'type': 'str'},
'content_version': {'key': 'contentVersion', 'type': 'str'},
}
def __init__(self, uri, content_version=None):
self.uri = uri
self.content_version = content_version

Просмотреть файл

@ -1,45 +0,0 @@
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------
#pylint: skip-file
# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
from msrest.serialization import Model
class Provider(Model):
"""
Resource provider information.
:param id: Gets or sets the provider id.
:type id: str
:param namespace: Gets or sets the namespace of the provider.
:type namespace: str
:param registration_state: Gets or sets the registration state of the
provider.
:type registration_state: str
:param resource_types: Gets or sets the collection of provider resource
types.
:type resource_types: list of :class:`ProviderResourceType
<default.models.ProviderResourceType>`
"""
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'namespace': {'key': 'namespace', 'type': 'str'},
'registration_state': {'key': 'registrationState', 'type': 'str'},
'resource_types': {'key': 'resourceTypes', 'type': '[ProviderResourceType]'},
}
def __init__(self, id=None, namespace=None, registration_state=None, resource_types=None):
self.id = id
self.namespace = namespace
self.registration_state = registration_state
self.resource_types = resource_types

Просмотреть файл

@ -1,43 +0,0 @@
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------
#pylint: skip-file
# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
from msrest.serialization import Model
class ProviderResourceType(Model):
"""
Resource type managed by the resource provider.
:param resource_type: Gets or sets the resource type.
:type resource_type: str
:param locations: Gets or sets the collection of locations where this
resource type can be created in.
:type locations: list of str
:param api_versions: Gets or sets the api version.
:type api_versions: list of str
:param properties: Gets or sets the properties.
:type properties: dict
"""
_attribute_map = {
'resource_type': {'key': 'resourceType', 'type': 'str'},
'locations': {'key': 'locations', 'type': '[str]'},
'api_versions': {'key': 'apiVersions', 'type': '[str]'},
'properties': {'key': 'properties', 'type': '{str}'},
}
def __init__(self, resource_type=None, locations=None, api_versions=None, properties=None):
self.resource_type = resource_type
self.locations = locations
self.api_versions = api_versions
self.properties = properties

Просмотреть файл

@ -1,45 +0,0 @@
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------
#pylint: skip-file
# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
from msrest.serialization import Model
class TemplateLink(Model):
"""
Entity representing the reference to the template.
Variables are only populated by the server, and will be ignored when
sending a request.
:ivar uri: URI referencing the template. Default value:
"https://azuresdkci.blob.core.windows.net/templatehost/CreateExpressRoutePeering_2016-08-08/azuredeploy.json"
.
:vartype uri: str
:param content_version: If included it must match the ContentVersion in
the template.
:type content_version: str
"""
_validation = {
'uri': {'required': True, 'constant': True},
}
_attribute_map = {
'uri': {'key': 'uri', 'type': 'str'},
'content_version': {'key': 'contentVersion', 'type': 'str'},
}
uri = "https://azuresdkci.blob.core.windows.net/templatehost/CreateExpressRoutePeering_2016-08-08/azuredeploy.json"
def __init__(self, content_version=None):
self.content_version = content_version

Просмотреть файл

@ -1,18 +0,0 @@
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------
#pylint: skip-file
# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
from .express_route_peering_operations import ExpressRoutePeeringOperations
__all__ = [
'ExpressRoutePeeringOperations',
]

Просмотреть файл

@ -1,170 +0,0 @@
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------
#pylint: skip-file
# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0
# 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 msrestazure.azure_operation import AzureOperationPoller
import uuid
from .. import models
class ExpressRoutePeeringOperations(object):
"""ExpressRoutePeeringOperations operations.
:param client: Client for service requests.
:param config: Configuration of service client.
:param serializer: An object model serializer.
:param deserializer: An objec model deserializer.
"""
def __init__(self, client, config, serializer, deserializer):
self._client = client
self._serialize = serializer
self._deserialize = deserializer
self.config = config
def create_or_update(
self, resource_group_name, deployment_name, bandwidth_in_mbps, circuit_name, peer_asn, peering_location, primary_peer_address_prefix, secondary_peer_address_prefix, service_provider_name, vlan_id, content_version=None, location=None, peering_type="AzurePrivatePeering", sku_family="MeteredData", sku_tier="Standard", tags=None, custom_headers=None, raw=False, **operation_config):
"""
Create or update a virtual machine.
:param resource_group_name: The name of the resource group. The name
is case insensitive.
:type resource_group_name: str
:param deployment_name: The name of the deployment.
:type deployment_name: str
:param bandwidth_in_mbps: Bandwidth in Mbps of the circuit being
created. It must exactly match one of the available bandwidth offers
List ExpressRoute Service Providers API call.
:type bandwidth_in_mbps: int
:param circuit_name: Name of the ExpressRoute circuit
:type circuit_name: str
:param peer_asn: The autonomous system number of the
customer/connectivity provider.
:type peer_asn: int
:param peering_location: Name of the peering location and not the ARM
resource location. It must exactly match one of the available
peering locations from List ExpressRoute Service Providers API call.
:type peering_location: str
:param primary_peer_address_prefix: /30 subnet used to configure IP
addresses for interfaces on Link1.
:type primary_peer_address_prefix: str
:param secondary_peer_address_prefix: /30 subnet used to configure IP
addresses for interfaces on Link2.
:type secondary_peer_address_prefix: str
:param service_provider_name: Name of the ExpressRoute Service
Provider. It must exactly match one of the Service Providers from
List ExpressRoute Service Providers API call.
:type service_provider_name: str
:param vlan_id: Specifies the identifier that is used to identify the
customer.
:type vlan_id: int
:param content_version: If included it must match the ContentVersion
in the template.
:type content_version: str
:param location: Location for resources.
:type location: str
:param peering_type: BGP peering type for the Circuit.
:type peering_type: str
:param sku_family: Chosen SKU family of ExpressRoute circuit.
:type sku_family: str
:param sku_tier: Chosen SKU Tier of ExpressRoute circuit.
:type sku_tier: str
:param tags: Tags object.
:type tags: object
:param dict custom_headers: headers that will be added to the request
:param bool raw: returns the direct response alongside the
deserialized response
:rtype:
:class:`AzureOperationPoller<msrestazure.azure_operation.AzureOperationPoller>`
instance that returns :class:`DeploymentExtended
<default.models.DeploymentExtended>`
:rtype: :class:`ClientRawResponse<msrest.pipeline.ClientRawResponse>`
if raw=true
"""
parameters = models.DeploymentExpressRoutePeering(content_version=content_version, bandwidth_in_mbps=bandwidth_in_mbps, circuit_name=circuit_name, location=location, peer_asn=peer_asn, peering_location=peering_location, peering_type=peering_type, primary_peer_address_prefix=primary_peer_address_prefix, secondary_peer_address_prefix=secondary_peer_address_prefix, service_provider_name=service_provider_name, sku_family=sku_family, sku_tier=sku_tier, tags=tags, vlan_id=vlan_id)
# Construct URL
url = '/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}'
path_format_arguments = {
'resourceGroupName': self._serialize.url("resource_group_name", resource_group_name, 'str', max_length=64, min_length=1, pattern='^[-\w\._]+$'),
'deploymentName': self._serialize.url("deployment_name", deployment_name, 'str', max_length=64, min_length=1, pattern='^[-\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.config.api_version", self.config.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(parameters, 'DeploymentExpressRoutePeering')
# Construct and send request
def long_running_send():
request = self._client.put(url, query_parameters)
return self._client.send(
request, header_parameters, body_content, **operation_config)
def get_long_running_status(status_link, headers=None):
request = self._client.get(status_link)
if headers:
request.headers.update(headers)
return self._client.send(
request, header_parameters, **operation_config)
def get_long_running_output(response):
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('DeploymentExtended', response)
if response.status_code == 201:
deserialized = self._deserialize('DeploymentExtended', response)
if raw:
client_raw_response = ClientRawResponse(deserialized, response)
return client_raw_response
return deserialized
if raw:
response = long_running_send()
return get_long_running_output(response)
long_running_operation_timeout = operation_config.get(
'long_running_operation_timeout',
self.config.long_running_operation_timeout)
return AzureOperationPoller(
long_running_send, get_long_running_output,
get_long_running_status, long_running_operation_timeout)

Просмотреть файл

@ -1,15 +0,0 @@
#---------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for license information.
#---------------------------------------------------------------------------------------------
#pylint: skip-file
# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
VERSION = "2015-11-01"

Просмотреть файл

@ -1,596 +0,0 @@
{
"swagger": "2.0",
"info": {
"title": "ExpressRoutePeeringCreationClient",
"version": "2015-11-01"
},
"host": "management.azure.com",
"schemes": [
"https"
],
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"security": [
{
"azure_auth": [
"user_impersonation"
]
}
],
"securityDefinitions": {
"azure_auth": {
"type": "oauth2",
"authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
"flow": "implicit",
"description": "Azure Active Directory OAuth2 Flow",
"scopes": {
"user_impersonation": "impersonate your user account"
}
}
},
"paths": {
"/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Resources/deployments/{deploymentName}": {
"put": {
"tags": [
"ExpressRoutePeering"
],
"operationId": "ExpressRoutePeering_CreateOrUpdate",
"description": "Create or update a virtual machine.",
"parameters": [
{
"name": "resourceGroupName",
"in": "path",
"required": true,
"type": "string",
"description": "The name of the resource group. The name is case insensitive.",
"pattern": "^[-\\w\\._]+$",
"minLength": 1,
"maxLength": 64
},
{
"name": "deploymentName",
"in": "path",
"required": true,
"type": "string",
"description": "The name of the deployment.",
"pattern": "^[-\\w\\._]+$",
"minLength": 1,
"maxLength": 64
},
{
"name": "parameters",
"x-ms-client-flatten": true,
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/Deployment_ExpressRoutePeering"
},
"description": "Additional parameters supplied to the operation."
},
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"$ref": "#/parameters/SubscriptionIdParameter"
}
],
"responses": {
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/DeploymentExtended"
}
},
"201": {
"description": "",
"schema": {
"$ref": "#/definitions/DeploymentExtended"
}
}
},
"x-ms-long-running-operation": true
}
}
},
"definitions": {
"Deployment_ExpressRoutePeering": {
"properties": {
"properties": {
"$ref": "#/definitions/DeploymentProperties_ExpressRoutePeering",
"description": "Gets or sets the deployment properties.",
"x-ms-client-flatten": true
}
},
"description": "Deployment operation parameters."
},
"DeploymentProperties_ExpressRoutePeering": {
"properties": {
"templateLink": {
"$ref": "#/definitions/TemplateLink",
"description": "Gets or sets the URI referencing the template. Use only one of Template or TemplateLink.",
"x-ms-client-flatten": true
},
"parameters": {
"$ref": "#/definitions/ExpressRoutePeeringParameters",
"type": "object",
"description": "Deployment parameters. Use only one of Parameters or ParametersLink.",
"x-ms-client-flatten": true
},
"mode": {
"type": "string",
"description": "Gets or sets the deployment mode.",
"enum": [
"Incremental"
],
"x-ms-enum": {
"name": "DeploymentMode",
"modelAsString": false
}
}
},
"required": [
"templateLink",
"parameters",
"mode"
],
"description": "Deployment properties."
},
"TemplateLink": {
"properties": {
"uri": {
"type": "string",
"description": "URI referencing the template.",
"enum": [
"https://azuresdkci.blob.core.windows.net/templatehost/CreateExpressRoutePeering_2016-08-08/azuredeploy.json"
]
},
"contentVersion": {
"type": "string",
"description": "If included it must match the ContentVersion in the template."
}
},
"required": [
"uri"
],
"description": "Entity representing the reference to the template."
},
"ExpressRoutePeeringParameters": {
"properties": {
"bandwidthInMbps": {
"type": "object",
"$ref": "#/definitions/DeploymentParameter_bandwidthInMbps",
"x-ms-client-flatten": true
},
"circuitName": {
"type": "object",
"$ref": "#/definitions/DeploymentParameter_circuitName",
"x-ms-client-flatten": true
},
"location": {
"type": "object",
"$ref": "#/definitions/DeploymentParameter_location",
"x-ms-client-flatten": true
},
"peerASN": {
"type": "object",
"$ref": "#/definitions/DeploymentParameter_peerASN",
"x-ms-client-flatten": true
},
"peeringLocation": {
"type": "object",
"$ref": "#/definitions/DeploymentParameter_peeringLocation",
"x-ms-client-flatten": true
},
"peeringType": {
"type": "object",
"$ref": "#/definitions/DeploymentParameter_peeringType",
"x-ms-client-flatten": true
},
"primaryPeerAddressPrefix": {
"type": "object",
"$ref": "#/definitions/DeploymentParameter_primaryPeerAddressPrefix",
"x-ms-client-flatten": true
},
"secondaryPeerAddressPrefix": {
"type": "object",
"$ref": "#/definitions/DeploymentParameter_secondaryPeerAddressPrefix",
"x-ms-client-flatten": true
},
"serviceProviderName": {
"type": "object",
"$ref": "#/definitions/DeploymentParameter_serviceProviderName",
"x-ms-client-flatten": true
},
"sku_family": {
"type": "object",
"$ref": "#/definitions/DeploymentParameter_sku_family",
"x-ms-client-flatten": true
},
"sku_tier": {
"type": "object",
"$ref": "#/definitions/DeploymentParameter_sku_tier",
"x-ms-client-flatten": true
},
"tags": {
"type": "object",
"$ref": "#/definitions/DeploymentParameter_tags",
"x-ms-client-flatten": true
},
"vlanId": {
"type": "object",
"$ref": "#/definitions/DeploymentParameter_vlanId",
"x-ms-client-flatten": true
}
},
"required": [
"secondaryPeerAddressPrefix",
"serviceProviderName",
"circuitName",
"vlanId",
"primaryPeerAddressPrefix",
"peerASN",
"peeringLocation",
"bandwidthInMbps"
]
},
"DeploymentParameter_bandwidthInMbps": {
"properties": {
"value": {
"type": "integer",
"description": "Bandwidth in Mbps of the circuit being created. It must exactly match one of the available bandwidth offers List ExpressRoute Service Providers API call.",
"x-ms-client-name": "bandwidthInMbps"
}
},
"required": [
"value"
]
},
"DeploymentParameter_circuitName": {
"properties": {
"value": {
"type": "string",
"description": "Name of the ExpressRoute circuit",
"x-ms-client-name": "circuitName"
}
},
"required": [
"value"
]
},
"DeploymentParameter_location": {
"properties": {
"value": {
"type": "string",
"description": "Location for resources.",
"x-ms-client-name": "location"
}
}
},
"DeploymentParameter_peerASN": {
"properties": {
"value": {
"type": "integer",
"description": "The autonomous system number of the customer/connectivity provider.",
"x-ms-client-name": "peerASN"
}
},
"required": [
"value"
]
},
"DeploymentParameter_peeringLocation": {
"properties": {
"value": {
"type": "string",
"description": "Name of the peering location and not the ARM resource location. It must exactly match one of the available peering locations from List ExpressRoute Service Providers API call.",
"x-ms-client-name": "peeringLocation"
}
},
"required": [
"value"
]
},
"DeploymentParameter_peeringType": {
"properties": {
"value": {
"type": "string",
"description": "BGP peering type for the Circuit.",
"x-ms-client-name": "peeringType",
"default": "AzurePrivatePeering"
}
}
},
"DeploymentParameter_primaryPeerAddressPrefix": {
"properties": {
"value": {
"type": "string",
"description": "/30 subnet used to configure IP addresses for interfaces on Link1.",
"x-ms-client-name": "primaryPeerAddressPrefix"
}
},
"required": [
"value"
]
},
"DeploymentParameter_secondaryPeerAddressPrefix": {
"properties": {
"value": {
"type": "string",
"description": "/30 subnet used to configure IP addresses for interfaces on Link2.",
"x-ms-client-name": "secondaryPeerAddressPrefix"
}
},
"required": [
"value"
]
},
"DeploymentParameter_serviceProviderName": {
"properties": {
"value": {
"type": "string",
"description": "Name of the ExpressRoute Service Provider. It must exactly match one of the Service Providers from List ExpressRoute Service Providers API call.",
"x-ms-client-name": "serviceProviderName"
}
},
"required": [
"value"
]
},
"DeploymentParameter_sku_family": {
"properties": {
"value": {
"type": "string",
"description": "Chosen SKU family of ExpressRoute circuit.",
"x-ms-client-name": "sku_family",
"default": "MeteredData"
}
}
},
"DeploymentParameter_sku_tier": {
"properties": {
"value": {
"type": "string",
"description": "Chosen SKU Tier of ExpressRoute circuit.",
"x-ms-client-name": "sku_tier",
"default": "Standard"
}
}
},
"DeploymentParameter_tags": {
"properties": {
"value": {
"type": "object",
"description": "Tags object.",
"x-ms-client-name": "tags"
}
}
},
"DeploymentParameter_vlanId": {
"properties": {
"value": {
"type": "integer",
"description": "Specifies the identifier that is used to identify the customer.",
"x-ms-client-name": "vlanId"
}
},
"required": [
"value"
]
},
"ParametersLink": {
"properties": {
"uri": {
"type": "string",
"description": "URI referencing the template."
},
"contentVersion": {
"type": "string",
"description": "If included it must match the ContentVersion in the template."
}
},
"required": [
"uri"
],
"description": "Entity representing the reference to the deployment paramaters."
},
"ProviderResourceType": {
"properties": {
"resourceType": {
"type": "string",
"description": "Gets or sets the resource type."
},
"locations": {
"type": "array",
"items": {
"type": "string"
},
"description": "Gets or sets the collection of locations where this resource type can be created in."
},
"apiVersions": {
"type": "array",
"items": {
"type": "string"
},
"description": "Gets or sets the api version."
},
"properties": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"description": "Gets or sets the properties."
}
},
"description": "Resource type managed by the resource provider."
},
"Provider": {
"properties": {
"id": {
"type": "string",
"description": "Gets or sets the provider id."
},
"namespace": {
"type": "string",
"description": "Gets or sets the namespace of the provider."
},
"registrationState": {
"type": "string",
"description": "Gets or sets the registration state of the provider."
},
"resourceTypes": {
"type": "array",
"items": {
"$ref": "#/definitions/ProviderResourceType"
},
"description": "Gets or sets the collection of provider resource types."
}
},
"description": "Resource provider information."
},
"BasicDependency": {
"properties": {
"id": {
"type": "string",
"description": "Gets or sets the ID of the dependency."
},
"resourceType": {
"type": "string",
"description": "Gets or sets the dependency resource type."
},
"resourceName": {
"type": "string",
"description": "Gets or sets the dependency resource name."
}
},
"description": "Deployment dependency information."
},
"Dependency": {
"properties": {
"dependsOn": {
"type": "array",
"items": {
"$ref": "#/definitions/BasicDependency"
},
"description": "Gets the list of dependencies."
},
"id": {
"type": "string",
"description": "Gets or sets the ID of the dependency."
},
"resourceType": {
"type": "string",
"description": "Gets or sets the dependency resource type."
},
"resourceName": {
"type": "string",
"description": "Gets or sets the dependency resource name."
}
},
"description": "Deployment dependency information."
},
"DeploymentPropertiesExtended": {
"properties": {
"provisioningState": {
"type": "string",
"description": "Gets or sets the state of the provisioning."
},
"correlationId": {
"type": "string",
"description": "Gets or sets the correlation ID of the deployment."
},
"timestamp": {
"type": "string",
"format": "date-time",
"description": "Gets or sets the timestamp of the template deployment."
},
"outputs": {
"type": "object",
"description": "Gets or sets key/value pairs that represent deploymentoutput."
},
"providers": {
"type": "array",
"items": {
"$ref": "#/definitions/Provider"
},
"description": "Gets the list of resource providers needed for the deployment."
},
"dependencies": {
"type": "array",
"items": {
"$ref": "#/definitions/Dependency"
},
"description": "Gets the list of deployment dependencies."
},
"template": {
"type": "object",
"description": "Gets or sets the template content. Use only one of Template or TemplateLink."
},
"TemplateLink": {
"$ref": "#/definitions/TemplateLink",
"description": "Gets or sets the URI referencing the template. Use only one of Template or TemplateLink."
},
"parameters": {
"type": "object",
"description": "Deployment parameters. Use only one of Parameters or ParametersLink."
},
"parametersLink": {
"$ref": "#/definitions/ParametersLink",
"description": "Gets or sets the URI referencing the parameters. Use only one of Parameters or ParametersLink."
},
"mode": {
"type": "string",
"description": "Gets or sets the deployment mode.",
"enum": [
"Incremental",
"Complete"
],
"x-ms-enum": {
"name": "DeploymentMode",
"modelAsString": false
}
}
},
"description": "Deployment properties with additional details."
},
"DeploymentExtended": {
"properties": {
"id": {
"type": "string",
"description": "Gets or sets the ID of the deployment."
},
"name": {
"type": "string",
"description": "Gets or sets the name of the deployment."
},
"properties": {
"$ref": "#/definitions/DeploymentPropertiesExtended",
"description": "Gets or sets deployment properties."
}
},
"required": [
"name"
],
"description": "Deployment information."
}
},
"parameters": {
"SubscriptionIdParameter": {
"name": "subscriptionId",
"in": "path",
"required": true,
"type": "string",
"description": "Gets subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call."
},
"ApiVersionParameter": {
"name": "api-version",
"in": "query",
"required": true,
"type": "string",
"description": "Client Api Version."
}
}
}

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Просмотреть файл

@ -1,180 +0,0 @@
interactions:
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Authorization: [Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IlliUkFRUlljRV9tb3RXVkpLSHJ3TEJiZF85cyIsImtpZCI6IlliUkFRUlljRV9tb3RXVkpLSHJ3TEJiZF85cyJ9.eyJhdWQiOiJodHRwczovL21hbmFnZW1lbnQuY29yZS53aW5kb3dzLm5ldC8iLCJpc3MiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC81NDgyNmIyMi0zOGQ2LTRmYjItYmFkOS1iN2I5M2EzZTljNWEvIiwiaWF0IjoxNDczODAxODU5LCJuYmYiOjE0NzM4MDE4NTksImV4cCI6MTQ3MzgwNTc1OSwiYWNyIjoiMSIsImFtciI6WyJwd2QiXSwiYXBwaWQiOiIwNGIwNzc5NS04ZGRiLTQ2MWEtYmJlZS0wMmY5ZTFiZjdiNDYiLCJhcHBpZGFjciI6IjAiLCJlX2V4cCI6MTA4MDAsImZhbWlseV9uYW1lIjoiQWRtaW4yIiwiZ2l2ZW5fbmFtZSI6IkFkbWluMiIsImdyb3VwcyI6WyJlNGJiMGI1Ni0xMDE0LTQwZjgtODhhYi0zZDhhOGNiMGUwODYiLCI2Yjk3NzYxYS1kN2QwLTQ4ZjYtYWQ1Ni1mMzhkMzI3Yzg1NTMiXSwiaXBhZGRyIjoiMTY3LjIyMC41Ny4yMTciLCJuYW1lIjoiQWRtaW4yIiwib2lkIjoiNTk2M2Y1MGMtN2M0My00MDVjLWFmN2UtNTMyOTRkZTc2YWJkIiwicHVpZCI6IjEwMDNCRkZEOTU5Rjg0MjMiLCJzY3AiOiJ1c2VyX2ltcGVyc29uYXRpb24iLCJzdWIiOiJzRGdleFJ3Q05JZlktaHpRampDRHZaVDdJemRmbzRTeXJyNHgwZEROelI0IiwidGlkIjoiNTQ4MjZiMjItMzhkNi00ZmIyLWJhZDktYjdiOTNhM2U5YzVhIiwidW5pcXVlX25hbWUiOiJhZG1pbjJAQXp1cmVTREtUZWFtLm9ubWljcm9zb2Z0LmNvbSIsInVwbiI6ImFkbWluMkBBenVyZVNES1RlYW0ub25taWNyb3NvZnQuY29tIiwidmVyIjoiMS4wIiwid2lkcyI6WyI2MmU5MDM5NC02OWY1LTQyMzctOTE5MC0wMTIxNzcxNDVlMTAiXX0.F1iLbtQZIQ5trrrzbn1MKyQS7vsdBMzULdC-nChRPT7C40tPzP_O-6yIGr0aj1Z66mzcgQ2k4GXt2-UAuLpSaeq9CfirQu47N8D3UnAqqULoVQTxLL0-gCT6FaDic7zePUJ22CihKwO2wufthnps1aXa9elfCfTJ4TybNBSYh_7aAwv0gKmd7VI7MG_W-uhWBaVsRzWp6fhTcW909xeYh8ICJMER6BbMQaNy636xY0ZTutFMynPnzuVicyzGu1vzPullfT5EYXAHA5DbKbEcOk32LeJgVXYhwPkROPI45d5r87MfX5P1F2e41Yvkh5yDTecpZwmOfLprbcA5mAgT1g]
Connection: [keep-alive]
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/2.7.10 (Darwin-15.5.0-x86_64-i386-64bit) requests/2.9.1
msrest/0.4.3 msrest_azure/0.4.2 networkmanagementclient/0.30.0rc6 Azure-SDK-For-Python
AZURECLI/TEST/0.0.1]
accept-language: [en-US]
x-ms-client-request-id: [fcbb711e-79fb-11e6-8cd2-a0999b14fe87]
method: GET
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/express_route_circuit_scenario/providers/Microsoft.Network/expressRouteCircuits/test_route/authorizations/none_existent?api-version=2016-06-01
response:
body: {string: !!python/unicode '{"error":{"code":"ResourceNotFound","message":"The
Resource ''Microsoft.Network/expressRouteCircuits/test_route'' under resource
group ''express_route_circuit_scenario'' was not found."}}'}
headers:
cache-control: [no-cache]
content-length: ['183']
content-type: [application/json; charset=utf-8]
date: ['Tue, 13 Sep 2016 21:49:45 GMT']
expires: ['-1']
pragma: [no-cache]
strict-transport-security: [max-age=31536000; includeSubDomains]
x-ms-failure-cause: [gateway]
status: {code: 404, message: Not Found}
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Authorization: [Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IlliUkFRUlljRV9tb3RXVkpLSHJ3TEJiZF85cyIsImtpZCI6IlliUkFRUlljRV9tb3RXVkpLSHJ3TEJiZF85cyJ9.eyJhdWQiOiJodHRwczovL21hbmFnZW1lbnQuY29yZS53aW5kb3dzLm5ldC8iLCJpc3MiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC81NDgyNmIyMi0zOGQ2LTRmYjItYmFkOS1iN2I5M2EzZTljNWEvIiwiaWF0IjoxNDczODAxODU5LCJuYmYiOjE0NzM4MDE4NTksImV4cCI6MTQ3MzgwNTc1OSwiYWNyIjoiMSIsImFtciI6WyJwd2QiXSwiYXBwaWQiOiIwNGIwNzc5NS04ZGRiLTQ2MWEtYmJlZS0wMmY5ZTFiZjdiNDYiLCJhcHBpZGFjciI6IjAiLCJlX2V4cCI6MTA4MDAsImZhbWlseV9uYW1lIjoiQWRtaW4yIiwiZ2l2ZW5fbmFtZSI6IkFkbWluMiIsImdyb3VwcyI6WyJlNGJiMGI1Ni0xMDE0LTQwZjgtODhhYi0zZDhhOGNiMGUwODYiLCI2Yjk3NzYxYS1kN2QwLTQ4ZjYtYWQ1Ni1mMzhkMzI3Yzg1NTMiXSwiaXBhZGRyIjoiMTY3LjIyMC41Ny4yMTciLCJuYW1lIjoiQWRtaW4yIiwib2lkIjoiNTk2M2Y1MGMtN2M0My00MDVjLWFmN2UtNTMyOTRkZTc2YWJkIiwicHVpZCI6IjEwMDNCRkZEOTU5Rjg0MjMiLCJzY3AiOiJ1c2VyX2ltcGVyc29uYXRpb24iLCJzdWIiOiJzRGdleFJ3Q05JZlktaHpRampDRHZaVDdJemRmbzRTeXJyNHgwZEROelI0IiwidGlkIjoiNTQ4MjZiMjItMzhkNi00ZmIyLWJhZDktYjdiOTNhM2U5YzVhIiwidW5pcXVlX25hbWUiOiJhZG1pbjJAQXp1cmVTREtUZWFtLm9ubWljcm9zb2Z0LmNvbSIsInVwbiI6ImFkbWluMkBBenVyZVNES1RlYW0ub25taWNyb3NvZnQuY29tIiwidmVyIjoiMS4wIiwid2lkcyI6WyI2MmU5MDM5NC02OWY1LTQyMzctOTE5MC0wMTIxNzcxNDVlMTAiXX0.F1iLbtQZIQ5trrrzbn1MKyQS7vsdBMzULdC-nChRPT7C40tPzP_O-6yIGr0aj1Z66mzcgQ2k4GXt2-UAuLpSaeq9CfirQu47N8D3UnAqqULoVQTxLL0-gCT6FaDic7zePUJ22CihKwO2wufthnps1aXa9elfCfTJ4TybNBSYh_7aAwv0gKmd7VI7MG_W-uhWBaVsRzWp6fhTcW909xeYh8ICJMER6BbMQaNy636xY0ZTutFMynPnzuVicyzGu1vzPullfT5EYXAHA5DbKbEcOk32LeJgVXYhwPkROPI45d5r87MfX5P1F2e41Yvkh5yDTecpZwmOfLprbcA5mAgT1g]
Connection: [keep-alive]
Content-Length: ['0']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/2.7.10 (Darwin-15.5.0-x86_64-i386-64bit) requests/2.9.1
msrest/0.4.3 msrest_azure/0.4.2 networkmanagementclient/0.30.0rc6 Azure-SDK-For-Python
AZURECLI/TEST/0.0.1]
accept-language: [en-US]
x-ms-client-request-id: [fce38275-79fb-11e6-b822-a0999b14fe87]
method: DELETE
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/express_route_circuit_scenario/providers/Microsoft.Network/expressRouteCircuits/test_route/authorizations/none_existent?api-version=2016-06-01
response:
body: {string: !!python/unicode '{"error":{"code":"ResourceNotFound","message":"The
Resource ''Microsoft.Network/expressRouteCircuits/test_route'' under resource
group ''express_route_circuit_scenario'' was not found."}}'}
headers:
cache-control: [no-cache]
content-length: ['183']
content-type: [application/json; charset=utf-8]
date: ['Tue, 13 Sep 2016 21:49:45 GMT']
expires: ['-1']
pragma: [no-cache]
strict-transport-security: [max-age=31536000; includeSubDomains]
x-ms-failure-cause: [gateway]
status: {code: 404, message: Not Found}
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Authorization: [Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IlliUkFRUlljRV9tb3RXVkpLSHJ3TEJiZF85cyIsImtpZCI6IlliUkFRUlljRV9tb3RXVkpLSHJ3TEJiZF85cyJ9.eyJhdWQiOiJodHRwczovL21hbmFnZW1lbnQuY29yZS53aW5kb3dzLm5ldC8iLCJpc3MiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC81NDgyNmIyMi0zOGQ2LTRmYjItYmFkOS1iN2I5M2EzZTljNWEvIiwiaWF0IjoxNDczODAxODU5LCJuYmYiOjE0NzM4MDE4NTksImV4cCI6MTQ3MzgwNTc1OSwiYWNyIjoiMSIsImFtciI6WyJwd2QiXSwiYXBwaWQiOiIwNGIwNzc5NS04ZGRiLTQ2MWEtYmJlZS0wMmY5ZTFiZjdiNDYiLCJhcHBpZGFjciI6IjAiLCJlX2V4cCI6MTA4MDAsImZhbWlseV9uYW1lIjoiQWRtaW4yIiwiZ2l2ZW5fbmFtZSI6IkFkbWluMiIsImdyb3VwcyI6WyJlNGJiMGI1Ni0xMDE0LTQwZjgtODhhYi0zZDhhOGNiMGUwODYiLCI2Yjk3NzYxYS1kN2QwLTQ4ZjYtYWQ1Ni1mMzhkMzI3Yzg1NTMiXSwiaXBhZGRyIjoiMTY3LjIyMC41Ny4yMTciLCJuYW1lIjoiQWRtaW4yIiwib2lkIjoiNTk2M2Y1MGMtN2M0My00MDVjLWFmN2UtNTMyOTRkZTc2YWJkIiwicHVpZCI6IjEwMDNCRkZEOTU5Rjg0MjMiLCJzY3AiOiJ1c2VyX2ltcGVyc29uYXRpb24iLCJzdWIiOiJzRGdleFJ3Q05JZlktaHpRampDRHZaVDdJemRmbzRTeXJyNHgwZEROelI0IiwidGlkIjoiNTQ4MjZiMjItMzhkNi00ZmIyLWJhZDktYjdiOTNhM2U5YzVhIiwidW5pcXVlX25hbWUiOiJhZG1pbjJAQXp1cmVTREtUZWFtLm9ubWljcm9zb2Z0LmNvbSIsInVwbiI6ImFkbWluMkBBenVyZVNES1RlYW0ub25taWNyb3NvZnQuY29tIiwidmVyIjoiMS4wIiwid2lkcyI6WyI2MmU5MDM5NC02OWY1LTQyMzctOTE5MC0wMTIxNzcxNDVlMTAiXX0.F1iLbtQZIQ5trrrzbn1MKyQS7vsdBMzULdC-nChRPT7C40tPzP_O-6yIGr0aj1Z66mzcgQ2k4GXt2-UAuLpSaeq9CfirQu47N8D3UnAqqULoVQTxLL0-gCT6FaDic7zePUJ22CihKwO2wufthnps1aXa9elfCfTJ4TybNBSYh_7aAwv0gKmd7VI7MG_W-uhWBaVsRzWp6fhTcW909xeYh8ICJMER6BbMQaNy636xY0ZTutFMynPnzuVicyzGu1vzPullfT5EYXAHA5DbKbEcOk32LeJgVXYhwPkROPI45d5r87MfX5P1F2e41Yvkh5yDTecpZwmOfLprbcA5mAgT1g]
Connection: [keep-alive]
Content-Length: ['0']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/2.7.10 (Darwin-15.5.0-x86_64-i386-64bit) requests/2.9.1
msrest/0.4.3 msrest_azure/0.4.2 networkmanagementclient/0.30.0rc6 Azure-SDK-For-Python
AZURECLI/TEST/0.0.1]
accept-language: [en-US]
x-ms-client-request-id: [fd91fb07-79fb-11e6-be28-a0999b14fe87]
method: DELETE
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/express_route_circuit_scenario/providers/Microsoft.Network/expressRouteCircuits/test_route/peerings/none_existent?api-version=2016-06-01
response:
body: {string: !!python/unicode '{"error":{"code":"ResourceNotFound","message":"The
Resource ''Microsoft.Network/expressRouteCircuits/test_route'' under resource
group ''express_route_circuit_scenario'' was not found."}}'}
headers:
cache-control: [no-cache]
content-length: ['183']
content-type: [application/json; charset=utf-8]
date: ['Tue, 13 Sep 2016 21:49:47 GMT']
expires: ['-1']
pragma: [no-cache]
strict-transport-security: [max-age=31536000; includeSubDomains]
x-ms-failure-cause: [gateway]
status: {code: 404, message: Not Found}
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Authorization: [Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IlliUkFRUlljRV9tb3RXVkpLSHJ3TEJiZF85cyIsImtpZCI6IlliUkFRUlljRV9tb3RXVkpLSHJ3TEJiZF85cyJ9.eyJhdWQiOiJodHRwczovL21hbmFnZW1lbnQuY29yZS53aW5kb3dzLm5ldC8iLCJpc3MiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC81NDgyNmIyMi0zOGQ2LTRmYjItYmFkOS1iN2I5M2EzZTljNWEvIiwiaWF0IjoxNDczODAxODU5LCJuYmYiOjE0NzM4MDE4NTksImV4cCI6MTQ3MzgwNTc1OSwiYWNyIjoiMSIsImFtciI6WyJwd2QiXSwiYXBwaWQiOiIwNGIwNzc5NS04ZGRiLTQ2MWEtYmJlZS0wMmY5ZTFiZjdiNDYiLCJhcHBpZGFjciI6IjAiLCJlX2V4cCI6MTA4MDAsImZhbWlseV9uYW1lIjoiQWRtaW4yIiwiZ2l2ZW5fbmFtZSI6IkFkbWluMiIsImdyb3VwcyI6WyJlNGJiMGI1Ni0xMDE0LTQwZjgtODhhYi0zZDhhOGNiMGUwODYiLCI2Yjk3NzYxYS1kN2QwLTQ4ZjYtYWQ1Ni1mMzhkMzI3Yzg1NTMiXSwiaXBhZGRyIjoiMTY3LjIyMC41Ny4yMTciLCJuYW1lIjoiQWRtaW4yIiwib2lkIjoiNTk2M2Y1MGMtN2M0My00MDVjLWFmN2UtNTMyOTRkZTc2YWJkIiwicHVpZCI6IjEwMDNCRkZEOTU5Rjg0MjMiLCJzY3AiOiJ1c2VyX2ltcGVyc29uYXRpb24iLCJzdWIiOiJzRGdleFJ3Q05JZlktaHpRampDRHZaVDdJemRmbzRTeXJyNHgwZEROelI0IiwidGlkIjoiNTQ4MjZiMjItMzhkNi00ZmIyLWJhZDktYjdiOTNhM2U5YzVhIiwidW5pcXVlX25hbWUiOiJhZG1pbjJAQXp1cmVTREtUZWFtLm9ubWljcm9zb2Z0LmNvbSIsInVwbiI6ImFkbWluMkBBenVyZVNES1RlYW0ub25taWNyb3NvZnQuY29tIiwidmVyIjoiMS4wIiwid2lkcyI6WyI2MmU5MDM5NC02OWY1LTQyMzctOTE5MC0wMTIxNzcxNDVlMTAiXX0.F1iLbtQZIQ5trrrzbn1MKyQS7vsdBMzULdC-nChRPT7C40tPzP_O-6yIGr0aj1Z66mzcgQ2k4GXt2-UAuLpSaeq9CfirQu47N8D3UnAqqULoVQTxLL0-gCT6FaDic7zePUJ22CihKwO2wufthnps1aXa9elfCfTJ4TybNBSYh_7aAwv0gKmd7VI7MG_W-uhWBaVsRzWp6fhTcW909xeYh8ICJMER6BbMQaNy636xY0ZTutFMynPnzuVicyzGu1vzPullfT5EYXAHA5DbKbEcOk32LeJgVXYhwPkROPI45d5r87MfX5P1F2e41Yvkh5yDTecpZwmOfLprbcA5mAgT1g]
Connection: [keep-alive]
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/2.7.10 (Darwin-15.5.0-x86_64-i386-64bit) requests/2.9.1
msrest/0.4.3 msrest_azure/0.4.2 networkmanagementclient/0.30.0rc6 Azure-SDK-For-Python
AZURECLI/TEST/0.0.1]
accept-language: [en-US]
x-ms-client-request-id: [fe3f1178-79fb-11e6-b894-a0999b14fe87]
method: GET
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/express_route_circuit_scenario/providers/Microsoft.Network/expressRouteCircuits/test_route/peerings/none_existent?api-version=2016-06-01
response:
body: {string: !!python/unicode '{"error":{"code":"ResourceNotFound","message":"The
Resource ''Microsoft.Network/expressRouteCircuits/test_route'' under resource
group ''express_route_circuit_scenario'' was not found."}}'}
headers:
cache-control: [no-cache]
content-length: ['183']
content-type: [application/json; charset=utf-8]
date: ['Tue, 13 Sep 2016 21:49:48 GMT']
expires: ['-1']
pragma: [no-cache]
strict-transport-security: [max-age=31536000; includeSubDomains]
x-ms-failure-cause: [gateway]
status: {code: 404, message: Not Found}
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Authorization: [Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IlliUkFRUlljRV9tb3RXVkpLSHJ3TEJiZF85cyIsImtpZCI6IlliUkFRUlljRV9tb3RXVkpLSHJ3TEJiZF85cyJ9.eyJhdWQiOiJodHRwczovL21hbmFnZW1lbnQuY29yZS53aW5kb3dzLm5ldC8iLCJpc3MiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC81NDgyNmIyMi0zOGQ2LTRmYjItYmFkOS1iN2I5M2EzZTljNWEvIiwiaWF0IjoxNDczODAxODU5LCJuYmYiOjE0NzM4MDE4NTksImV4cCI6MTQ3MzgwNTc1OSwiYWNyIjoiMSIsImFtciI6WyJwd2QiXSwiYXBwaWQiOiIwNGIwNzc5NS04ZGRiLTQ2MWEtYmJlZS0wMmY5ZTFiZjdiNDYiLCJhcHBpZGFjciI6IjAiLCJlX2V4cCI6MTA4MDAsImZhbWlseV9uYW1lIjoiQWRtaW4yIiwiZ2l2ZW5fbmFtZSI6IkFkbWluMiIsImdyb3VwcyI6WyJlNGJiMGI1Ni0xMDE0LTQwZjgtODhhYi0zZDhhOGNiMGUwODYiLCI2Yjk3NzYxYS1kN2QwLTQ4ZjYtYWQ1Ni1mMzhkMzI3Yzg1NTMiXSwiaXBhZGRyIjoiMTY3LjIyMC41Ny4yMTciLCJuYW1lIjoiQWRtaW4yIiwib2lkIjoiNTk2M2Y1MGMtN2M0My00MDVjLWFmN2UtNTMyOTRkZTc2YWJkIiwicHVpZCI6IjEwMDNCRkZEOTU5Rjg0MjMiLCJzY3AiOiJ1c2VyX2ltcGVyc29uYXRpb24iLCJzdWIiOiJzRGdleFJ3Q05JZlktaHpRampDRHZaVDdJemRmbzRTeXJyNHgwZEROelI0IiwidGlkIjoiNTQ4MjZiMjItMzhkNi00ZmIyLWJhZDktYjdiOTNhM2U5YzVhIiwidW5pcXVlX25hbWUiOiJhZG1pbjJAQXp1cmVTREtUZWFtLm9ubWljcm9zb2Z0LmNvbSIsInVwbiI6ImFkbWluMkBBenVyZVNES1RlYW0ub25taWNyb3NvZnQuY29tIiwidmVyIjoiMS4wIiwid2lkcyI6WyI2MmU5MDM5NC02OWY1LTQyMzctOTE5MC0wMTIxNzcxNDVlMTAiXX0.F1iLbtQZIQ5trrrzbn1MKyQS7vsdBMzULdC-nChRPT7C40tPzP_O-6yIGr0aj1Z66mzcgQ2k4GXt2-UAuLpSaeq9CfirQu47N8D3UnAqqULoVQTxLL0-gCT6FaDic7zePUJ22CihKwO2wufthnps1aXa9elfCfTJ4TybNBSYh_7aAwv0gKmd7VI7MG_W-uhWBaVsRzWp6fhTcW909xeYh8ICJMER6BbMQaNy636xY0ZTutFMynPnzuVicyzGu1vzPullfT5EYXAHA5DbKbEcOk32LeJgVXYhwPkROPI45d5r87MfX5P1F2e41Yvkh5yDTecpZwmOfLprbcA5mAgT1g]
Connection: [keep-alive]
Content-Length: ['0']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/2.7.10 (Darwin-15.5.0-x86_64-i386-64bit) requests/2.9.1
msrest/0.4.3 msrest_azure/0.4.2 networkmanagementclient/0.30.0rc6 Azure-SDK-For-Python
AZURECLI/TEST/0.0.1]
accept-language: [en-US]
x-ms-client-request-id: [fe677580-79fb-11e6-9f84-a0999b14fe87]
method: POST
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/express_route_circuit_scenario/providers/Microsoft.Network/expressRouteCircuits/test_route/peerings/none_existent/arpTables/none_existent?api-version=2016-06-01
response:
body: {string: !!python/unicode '{"error":{"code":"ResourceNotFound","message":"The
Resource ''Microsoft.Network/expressRouteCircuits/test_route'' under resource
group ''express_route_circuit_scenario'' was not found."}}'}
headers:
cache-control: [no-cache]
content-length: ['183']
content-type: [application/json; charset=utf-8]
date: ['Tue, 13 Sep 2016 21:49:48 GMT']
expires: ['-1']
pragma: [no-cache]
strict-transport-security: [max-age=31536000; includeSubDomains]
x-ms-failure-cause: [gateway]
status: {code: 404, message: Not Found}
- request:
body: null
headers:
Accept: [application/json]
Accept-Encoding: ['gzip, deflate']
Authorization: [Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IlliUkFRUlljRV9tb3RXVkpLSHJ3TEJiZF85cyIsImtpZCI6IlliUkFRUlljRV9tb3RXVkpLSHJ3TEJiZF85cyJ9.eyJhdWQiOiJodHRwczovL21hbmFnZW1lbnQuY29yZS53aW5kb3dzLm5ldC8iLCJpc3MiOiJodHRwczovL3N0cy53aW5kb3dzLm5ldC81NDgyNmIyMi0zOGQ2LTRmYjItYmFkOS1iN2I5M2EzZTljNWEvIiwiaWF0IjoxNDczODAxODU5LCJuYmYiOjE0NzM4MDE4NTksImV4cCI6MTQ3MzgwNTc1OSwiYWNyIjoiMSIsImFtciI6WyJwd2QiXSwiYXBwaWQiOiIwNGIwNzc5NS04ZGRiLTQ2MWEtYmJlZS0wMmY5ZTFiZjdiNDYiLCJhcHBpZGFjciI6IjAiLCJlX2V4cCI6MTA4MDAsImZhbWlseV9uYW1lIjoiQWRtaW4yIiwiZ2l2ZW5fbmFtZSI6IkFkbWluMiIsImdyb3VwcyI6WyJlNGJiMGI1Ni0xMDE0LTQwZjgtODhhYi0zZDhhOGNiMGUwODYiLCI2Yjk3NzYxYS1kN2QwLTQ4ZjYtYWQ1Ni1mMzhkMzI3Yzg1NTMiXSwiaXBhZGRyIjoiMTY3LjIyMC41Ny4yMTciLCJuYW1lIjoiQWRtaW4yIiwib2lkIjoiNTk2M2Y1MGMtN2M0My00MDVjLWFmN2UtNTMyOTRkZTc2YWJkIiwicHVpZCI6IjEwMDNCRkZEOTU5Rjg0MjMiLCJzY3AiOiJ1c2VyX2ltcGVyc29uYXRpb24iLCJzdWIiOiJzRGdleFJ3Q05JZlktaHpRampDRHZaVDdJemRmbzRTeXJyNHgwZEROelI0IiwidGlkIjoiNTQ4MjZiMjItMzhkNi00ZmIyLWJhZDktYjdiOTNhM2U5YzVhIiwidW5pcXVlX25hbWUiOiJhZG1pbjJAQXp1cmVTREtUZWFtLm9ubWljcm9zb2Z0LmNvbSIsInVwbiI6ImFkbWluMkBBenVyZVNES1RlYW0ub25taWNyb3NvZnQuY29tIiwidmVyIjoiMS4wIiwid2lkcyI6WyI2MmU5MDM5NC02OWY1LTQyMzctOTE5MC0wMTIxNzcxNDVlMTAiXX0.F1iLbtQZIQ5trrrzbn1MKyQS7vsdBMzULdC-nChRPT7C40tPzP_O-6yIGr0aj1Z66mzcgQ2k4GXt2-UAuLpSaeq9CfirQu47N8D3UnAqqULoVQTxLL0-gCT6FaDic7zePUJ22CihKwO2wufthnps1aXa9elfCfTJ4TybNBSYh_7aAwv0gKmd7VI7MG_W-uhWBaVsRzWp6fhTcW909xeYh8ICJMER6BbMQaNy636xY0ZTutFMynPnzuVicyzGu1vzPullfT5EYXAHA5DbKbEcOk32LeJgVXYhwPkROPI45d5r87MfX5P1F2e41Yvkh5yDTecpZwmOfLprbcA5mAgT1g]
Connection: [keep-alive]
Content-Length: ['0']
Content-Type: [application/json; charset=utf-8]
User-Agent: [python/2.7.10 (Darwin-15.5.0-x86_64-i386-64bit) requests/2.9.1
msrest/0.4.3 msrest_azure/0.4.2 networkmanagementclient/0.30.0rc6 Azure-SDK-For-Python
AZURECLI/TEST/0.0.1]
accept-language: [en-US]
x-ms-client-request-id: [ff1b0347-79fb-11e6-b7e4-a0999b14fe87]
method: POST
uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/express_route_circuit_scenario/providers/Microsoft.Network/expressRouteCircuits/test_route/peerings/none_existent/routeTables/none_existent?api-version=2016-06-01
response:
body: {string: !!python/unicode '{"error":{"code":"ResourceNotFound","message":"The
Resource ''Microsoft.Network/expressRouteCircuits/test_route'' under resource
group ''express_route_circuit_scenario'' was not found."}}'}
headers:
cache-control: [no-cache]
content-length: ['183']
content-type: [application/json; charset=utf-8]
date: ['Tue, 13 Sep 2016 21:49:49 GMT']
expires: ['-1']
pragma: [no-cache]
strict-transport-security: [max-age=31536000; includeSubDomains]
x-ms-failure-cause: [gateway]
status: {code: 404, message: Not Found}
version: 1

Просмотреть файл

@ -159,78 +159,104 @@ class NetworkExpressRouteScenarioTest(ResourceGroupVCRTestBase):
def __init__(self, test_method):
super(NetworkExpressRouteScenarioTest, self).__init__(__file__, test_method)
self.resource_group = 'cli_test1'
self.express_route_name = 'test_route'
self.resource_group = 'cli_test_express_route'
self.circuit_name = 'circuit1'
self.resource_type = 'Microsoft.Network/expressRouteCircuits'
def test_network_express_route(self):
self.execute()
def _test_express_route_peering(self):
rg = self.resource_group
circuit = self.circuit_name
def _create_peering(peering, peer_asn, vlan, primary_prefix, seconary_prefix):
self.cmd('network express-route peering create -g {} --circuit-name {} --peering-type {} --peer-asn {} --vlan-id {} --primary-peer-subnet {} --secondary-peer-subnet {}'.format(rg, circuit, peering, peer_asn, vlan, primary_prefix, seconary_prefix))
# create public and private peerings
_create_peering('AzurePublicPeering', 10000, 100, '100.0.0.0/30', '101.0.0.0/30')
_create_peering('AzurePrivatePeering', 10001, 101, '102.0.0.0/30', '103.0.0.0/30')
# create MicrosoftPeering - This will result in an exception that we will allow
self.cmd('network express-route peering create -g {} --circuit-name {} --peering-type MicrosoftPeering --peer-asn 10002 --vlan-id 103 --primary-peer-subnet 104.0.0.0/30 --secondary-peer-subnet 105.0.0.0/30 --advertised-public-prefix-state NotConfigured --advertised-public-prefixes 104.0.0.0/30 --customer-asn 10000 --routing-registry-name level3'.format(rg, circuit),
allowed_exceptions='An error occured.')
self.cmd('network express-route peering show -g {} --circuit-name {} -n MicrosoftPeering'.format(rg, circuit), checks=[
JMESPathCheck('microsoftPeeringConfig.advertisedPublicPrefixes[0]', '104.0.0.0/30'),
JMESPathCheck('microsoftPeeringConfig.advertisedPublicPrefixesState', 'NotConfigured'),
JMESPathCheck('microsoftPeeringConfig.customerAsn', 10000),
JMESPathCheck('microsoftPeeringConfig.routingRegistryName', 'LEVEL3')
])
self.cmd('network express-route peering delete -g {} --circuit-name {} -n MicrosoftPeering'.format(rg, circuit))
self.cmd('network express-route peering list --resource-group {} --circuit-name {}'.format(rg, circuit),
checks=JMESPathCheck('length(@)', 2))
self.cmd('network express-route peering update -g {} --circuit-name {} -n AzurePublicPeering --set vlanId=200'.format(rg, circuit),
checks=JMESPathCheck('vlanId', 200))
def _test_express_route_auth(self):
rg = self.resource_group
circuit = self.circuit_name
self.cmd('network express-route auth create -g {} --circuit-name {} -n auth1'.format(rg, circuit),
checks=JMESPathCheck('authorizationUseStatus', 'Available'))
self.cmd('network express-route auth list --resource-group {} --circuit-name {}'.format(rg, circuit),
checks=JMESPathCheck('length(@)', 1))
self.cmd('network express-route auth show -g {} --circuit-name {} -n auth1'.format(rg, circuit),
checks=JMESPathCheck('authorizationUseStatus', 'Available'))
self.cmd('network express-route auth delete -g {} --circuit-name {} -n auth1'.format(rg, circuit))
self.cmd('network express-route auth list --resource-group {} --circuit-name {}'.format(rg, circuit), checks=NoneCheck())
def body(self):
self.cmd('network express-route circuit create -g {} -n {} --bandwidth-in-mbps 50 --service-provider-name "AT&T" --peering-location "Silicon Valley"'.format(
self.resource_group, self.express_route_name
))
self.cmd('network express-route circuit list', checks=[
JMESPathCheck('type(@)', 'array'),
JMESPathCheck("length([?type == '{}']) == length(@)".format(self.resource_type), True)
])
self.cmd('network express-route circuit list --resource-group {}'.format(self.resource_group), checks=[
JMESPathCheck('type(@)', 'array'),
JMESPathCheck("length([?type == '{}']) == length(@)".format(self.resource_type), True),
JMESPathCheck("length([?resourceGroup == '{}']) == length(@)".format(self.resource_group), True)
])
self.cmd('network express-route circuit show --resource-group {} --name {}'.format(self.resource_group, self.express_route_name), checks=[
JMESPathCheck('type(@)', 'object'),
JMESPathCheck('type', self.resource_type),
JMESPathCheck('name', self.express_route_name),
JMESPathCheck('resourceGroup', self.resource_group),
])
self.cmd('network express-route circuit get-stats --resource-group {} --name {}'.format(
self.resource_group, self.express_route_name), checks=JMESPathCheck('type(@)', 'object'))
self.cmd('network express-route circuit-auth list --resource-group {} --circuit-name {}'.format(
self.resource_group, self.express_route_name), checks=NoneCheck())
self.cmd('network express-route circuit-peering list --resource-group {} --circuit-name {}'.format(
self.resource_group, self.express_route_name), checks=NoneCheck())
self.cmd('network express-route service-provider list', checks=[
rg = self.resource_group
circuit = self.circuit_name
self.cmd('network express-route list-service-providers', checks=[
JMESPathCheck('type(@)', 'array'),
JMESPathCheck("length([?type == '{}']) == length(@)".format('Microsoft.Network/expressRouteServiceProviders'), True)
])
self.cmd('network express-route circuit delete --resource-group {} --name {}'.format(
self.resource_group, self.express_route_name), checks=NoneCheck())
self.cmd('network express-route create -g {} -n {} --bandwidth 50 --provider "Microsoft ER Test" --peering-location Area51'.format(rg, circuit))
self.cmd('network express-route list', checks=[
JMESPathCheck('type(@)', 'array'),
JMESPathCheck("length([?type == '{}']) == length(@)".format(self.resource_type), True)
])
self.cmd('network express-route list --resource-group {}'.format(rg), checks=[
JMESPathCheck('type(@)', 'array'),
JMESPathCheck("length([?type == '{}']) == length(@)".format(self.resource_type), True),
JMESPathCheck("length([?resourceGroup == '{}']) == length(@)".format(rg), True)
])
self.cmd('network express-route show --resource-group {} --name {}'.format(rg, circuit), checks=[
JMESPathCheck('type(@)', 'object'),
JMESPathCheck('type', self.resource_type),
JMESPathCheck('name', circuit),
JMESPathCheck('resourceGroup', rg),
])
self.cmd('network express-route get-stats --resource-group {} --name {}'.format(rg, circuit),
checks=JMESPathCheck('type(@)', 'object'))
self.cmd('network express-route update -g {} -n {} --set tags.test=Test'.format(rg, circuit),
checks=JMESPathCheck('tags', {'test': 'Test'}))
self._test_express_route_auth()
self._test_express_route_peering()
# because the circuit isn't actually provisioned, these commands will not return anything useful
# so we will just verify that the command makes it through the SDK without error.
self.cmd('network express-route list-arp-tables --resource-group {} --name {} --peering-name azureprivatepeering --path primary'.format(rg, circuit))
self.cmd('network express-route list-route-tables --resource-group {} --name {} --peering-name azureprivatepeering --path primary'.format(rg, circuit))
self.cmd('network express-route delete --resource-group {} --name {}'.format(rg, circuit))
# Expecting no results as we just deleted the only express route in the resource group
self.cmd('network express-route circuit list --resource-group {}'.format(self.resource_group),
checks=NoneCheck())
class NetworkExpressRouteCircuitScenarioTest(ResourceGroupVCRTestBase):
def __init__(self, test_method):
# TODO The resources for this test did not exist so the commands will return 404 errors.
# So this test is for the command execution itself.
super(NetworkExpressRouteCircuitScenarioTest, self).__init__(__file__, test_method)
self.resource_group = 'express_route_circuit_scenario'
self.express_route_name = 'test_route'
self.placeholder_value = 'none_existent'
def test_network_express_route_circuit(self):
self.execute()
def body(self):
rg = self.resource_group
ern = self.express_route_name
pv = self.placeholder_value
allowed_exceptions = "The Resource 'Microsoft.Network/expressRouteCircuits/{}' under resource group '{}' was not found.".format(ern, rg)
self.cmd('network express-route circuit-auth show --resource-group {0} --circuit-name {1} --name {2}'.format(
rg, ern, pv), allowed_exceptions=allowed_exceptions)
self.cmd('network express-route circuit-auth delete --resource-group {0} --circuit-name {1} --name {2}'.format(
rg, ern, pv), allowed_exceptions=allowed_exceptions)
self.cmd('network express-route circuit-peering delete --resource-group {0} --circuit-name {1} --name {2}'.format(
rg, ern, pv), allowed_exceptions=allowed_exceptions)
self.cmd('network express-route circuit-peering show --resource-group {0} --circuit-name {1} --name {2}'.format(
rg, ern, pv), allowed_exceptions=allowed_exceptions)
self.cmd('network express-route circuit list-arp-tables --resource-group {0} --name {1} --peering-name {2} --device-path {2}'.format(
rg, ern, pv), allowed_exceptions=allowed_exceptions)
self.cmd('network express-route circuit list-route-tables --resource-group {0} --name {1} --peering-name {2} --device-path {2}'.format(
rg, ern, pv), allowed_exceptions=allowed_exceptions)
self.cmd('network express-route list --resource-group {}'.format(rg), checks=NoneCheck())
class NetworkLoadBalancerScenarioTest(ResourceGroupVCRTestBase):

Просмотреть файл

@ -102,10 +102,6 @@ setup(
'azure.cli.command_modules.network.mgmt_express_route_circuit.lib',
'azure.cli.command_modules.network.mgmt_express_route_circuit.lib.models',
'azure.cli.command_modules.network.mgmt_express_route_circuit.lib.operations',
'azure.cli.command_modules.network.mgmt_express_route_peering',
'azure.cli.command_modules.network.mgmt_express_route_peering.lib',
'azure.cli.command_modules.network.mgmt_express_route_peering.lib.models',
'azure.cli.command_modules.network.mgmt_express_route_peering.lib.operations',
'azure.cli.command_modules.network.mgmt_traffic_manager_profile',
'azure.cli.command_modules.network.mgmt_traffic_manager_profile.lib',
'azure.cli.command_modules.network.mgmt_traffic_manager_profile.lib.models',