Skip to content

Commit 712fd04

Browse files
authored
[Network| Fix SDK breaking change. (#6028)
* Fix SDK breaking change. * Fixes for Stack compatibility
1 parent c3fa6fb commit 712fd04

File tree

2 files changed

+17
-8
lines changed

2 files changed

+17
-8
lines changed

src/command_modules/azure-cli-network/azure/cli/command_modules/network/_params.py

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,17 +39,23 @@ def load_arguments(self, _):
3939

4040
(Access, ApplicationGatewayFirewallMode, ApplicationGatewayProtocol, ApplicationGatewayRedirectType,
4141
ApplicationGatewayRequestRoutingRuleType, ApplicationGatewaySkuName, AuthenticationMethod, Direction,
42-
ExpressRouteCircuitPeeringType, ExpressRouteCircuitSkuFamily, ExpressRouteCircuitSkuTier, IPAllocationMethod,
42+
ExpressRouteCircuitSkuFamily, ExpressRouteCircuitSkuTier, IPAllocationMethod,
4343
IPVersion, LoadBalancerSkuName, LoadDistribution, ProbeProtocol, ProcessorArchitecture, Protocol, PublicIPAddressSkuName,
4444
RouteNextHopType, SecurityRuleAccess, SecurityRuleProtocol, SecurityRuleDirection, TransportProtocol,
4545
VirtualNetworkGatewaySkuName, VirtualNetworkGatewayType, VpnClientProtocol, VpnType, ZoneType) = self.get_models(
4646
'Access', 'ApplicationGatewayFirewallMode', 'ApplicationGatewayProtocol', 'ApplicationGatewayRedirectType',
4747
'ApplicationGatewayRequestRoutingRuleType', 'ApplicationGatewaySkuName', 'AuthenticationMethod', 'Direction',
48-
'ExpressRouteCircuitPeeringType', 'ExpressRouteCircuitSkuFamily', 'ExpressRouteCircuitSkuTier', 'IPAllocationMethod',
48+
'ExpressRouteCircuitSkuFamily', 'ExpressRouteCircuitSkuTier', 'IPAllocationMethod',
4949
'IPVersion', 'LoadBalancerSkuName', 'LoadDistribution', 'ProbeProtocol', 'ProcessorArchitecture', 'Protocol', 'PublicIPAddressSkuName',
5050
'RouteNextHopType', 'SecurityRuleAccess', 'SecurityRuleProtocol', 'SecurityRuleDirection', 'TransportProtocol',
5151
'VirtualNetworkGatewaySkuName', 'VirtualNetworkGatewayType', 'VpnClientProtocol', 'VpnType', 'ZoneType')
5252

53+
if self.supported_api_version(min_api='2018-02-01'):
54+
ExpressRoutePeeringType = self.get_models('ExpressRoutePeeringType')
55+
else:
56+
# for Stack compatibility
57+
ExpressRoutePeeringType = self.get_models('ExpressRouteCircuitPeeringType')
58+
5359
default_existing = 'If only one exists, omit to use as default.'
5460

5561
# taken from Xplat. No enums in SDK
@@ -436,7 +442,7 @@ def load_arguments(self, _):
436442
c.argument('vlan_id', help='Identifier used to identify the customer.')
437443
c.argument('circuit_name', circuit_name_type)
438444
c.argument('peering_name', name_arg_type, id_part='child_name_1')
439-
c.argument('peering_type', validator=validate_peering_type, arg_type=get_enum_type(ExpressRouteCircuitPeeringType), help='BGP peering type for the circuit.')
445+
c.argument('peering_type', validator=validate_peering_type, arg_type=get_enum_type(ExpressRoutePeeringType), help='BGP peering type for the circuit.')
440446
c.argument('sku_family', arg_type=get_enum_type(ExpressRouteCircuitSkuFamily))
441447
c.argument('sku_tier', arg_type=get_enum_type(ExpressRouteCircuitSkuTier))
442448
c.argument('primary_peer_address_prefix', options_list=['--primary-peer-subnet'], help='/30 subnet used to configure IP addresses for primary interface.')

src/command_modules/azure-cli-network/azure/cli/command_modules/network/custom.py

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1468,18 +1468,21 @@ def create_express_route_peering(
14681468
primary_peer_address_prefix, secondary_peer_address_prefix, shared_key=None,
14691469
advertised_public_prefixes=None, customer_asn=None, routing_registry_name=None,
14701470
route_filter=None):
1471-
(ExpressRouteCircuitPeering, ExpressRouteCircuitPeeringConfig, ExpressRouteCircuitPeeringType,
1472-
RouteFilter) = cmd.get_models(
1473-
'ExpressRouteCircuitPeering', 'ExpressRouteCircuitPeeringConfig', 'ExpressRouteCircuitPeeringType',
1474-
'RouteFilter')
1471+
(ExpressRouteCircuitPeering, ExpressRouteCircuitPeeringConfig, RouteFilter) = \
1472+
cmd.get_models('ExpressRouteCircuitPeering', 'ExpressRouteCircuitPeeringConfig', 'RouteFilter')
1473+
1474+
if cmd.supported_api_version(min_api='2018-02-01'):
1475+
ExpressRoutePeeringType = cmd.get_models('ExpressRoutePeeringType')
1476+
else:
1477+
ExpressRoutePeeringType = cmd.get_models('ExpressRouteCircuitPeeringType')
14751478

14761479
peering = ExpressRouteCircuitPeering(
14771480
peering_type=peering_type, peer_asn=peer_asn, vlan_id=vlan_id,
14781481
primary_peer_address_prefix=primary_peer_address_prefix,
14791482
secondary_peer_address_prefix=secondary_peer_address_prefix,
14801483
shared_key=shared_key)
14811484

1482-
if peering_type == ExpressRouteCircuitPeeringType.microsoft_peering.value:
1485+
if peering_type == ExpressRoutePeeringType.microsoft_peering.value:
14831486
peering.microsoft_peering_config = ExpressRouteCircuitPeeringConfig(
14841487
advertised_public_prefixes=advertised_public_prefixes,
14851488
customer_asn=customer_asn,

0 commit comments

Comments
 (0)