Skip to content
This repository has been archived by the owner on May 5, 2023. It is now read-only.

[AutoPR network/resource-manager] Add globalReachEnabled, Add Get and list for peer express route circuit connections. Remove allowGlobalReach #4751

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,8 @@ class ExpressRouteCircuit extends models['Resource'] {
* @property {string} [gatewayManagerEtag] The GatewayManager Etag.
* @property {boolean} [allowGlobalReach] Flag to enable Global Reach on the
* circuit.
* @property {boolean} [globalReachEnabled] Flag denoting Global reach
* status.
* @property {string} [etag] Gets a unique read-only string that changes
* whenever the resource is updated.
*/
Expand Down Expand Up @@ -252,6 +254,13 @@ class ExpressRouteCircuit extends models['Resource'] {
name: 'Boolean'
}
},
globalReachEnabled: {
required: false,
serializedName: 'properties.globalReachEnabled',
type: {
name: 'Boolean'
}
},
etag: {
required: false,
readOnly: true,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,8 @@ class ExpressRouteCircuitPeering extends models['SubResource'] {
* ExpressRouteConnection.
* @property {array} [connections] The list of circuit connections associated
* with Azure Private Peering for this circuit.
* @property {array} [peeredConnections] The list of peered circuit
* connections associated with Azure Private Peering for this circuit.
* @property {string} [name] Gets name of the resource that is unique within
* a resource group. This name can be used to access the resource.
* @property {string} [etag] A unique read-only string that changes whenever
Expand Down Expand Up @@ -297,6 +299,22 @@ class ExpressRouteCircuitPeering extends models['SubResource'] {
}
}
},
peeredConnections: {
required: false,
readOnly: true,
serializedName: 'properties.peeredConnections',
type: {
name: 'Sequence',
element: {
required: false,
serializedName: 'PeerExpressRouteCircuitConnectionElementType',
type: {
name: 'Composite',
className: 'PeerExpressRouteCircuitConnection'
}
}
}
},
name: {
required: false,
serializedName: 'name',
Expand Down
65 changes: 65 additions & 0 deletions lib/services/networkManagement2/lib/models/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2996,6 +2996,51 @@ export interface ExpressRouteCircuitConnection extends SubResource {
readonly etag?: string;
}

/**
* Peer Express Route Circuit Connection in an ExpressRouteCircuitPeering resource.
*/
export interface PeerExpressRouteCircuitConnection extends SubResource {
/**
* Reference to Express Route Circuit Private Peering Resource of the circuit.
*/
expressRouteCircuitPeering?: SubResource;
/**
* Reference to Express Route Circuit Private Peering Resource of the peered circuit.
*/
peerExpressRouteCircuitPeering?: SubResource;
/**
* /29 IP address space to carve out Customer addresses for tunnels.
*/
addressPrefix?: string;
/**
* Express Route Circuit Connection State. Possible values are: 'Connected' and 'Disconnected'.
* Possible values include: 'Connected', 'Connecting', 'Disconnected'
*/
readonly circuitConnectionStatus?: string;
/**
* The name of the express route circuit connection resource.
*/
connectionName?: string;
/**
* The resource guid of the authorization used for the express route circuit connection.
*/
authResourceGuid?: string;
/**
* Provisioning state of the peer express route circuit connection resource. Possible values are:
* 'Succeeded', 'Updating', 'Deleting', and 'Failed'.
*/
readonly provisioningState?: string;
/**
* Gets name of the resource that is unique within a resource group. This name can be used to
* access the resource.
*/
name?: string;
/**
* A unique read-only string that changes whenever the resource is updated.
*/
readonly etag?: string;
}

/**
* Peering in an ExpressRouteCircuit resource.
*/
Expand Down Expand Up @@ -3078,6 +3123,10 @@ export interface ExpressRouteCircuitPeering extends SubResource {
* The list of circuit connections associated with Azure Private Peering for this circuit.
*/
connections?: ExpressRouteCircuitConnection[];
/**
* The list of peered circuit connections associated with Azure Private Peering for this circuit.
*/
readonly peeredConnections?: PeerExpressRouteCircuitConnection[];
/**
* Gets name of the resource that is unique within a resource group. This name can be used to
* access the resource.
Expand Down Expand Up @@ -3245,6 +3294,10 @@ export interface ExpressRouteCircuit extends Resource {
* Flag to enable Global Reach on the circuit.
*/
allowGlobalReach?: boolean;
/**
* Flag denoting Global reach status.
*/
globalReachEnabled?: boolean;
/**
* Gets a unique read-only string that changes whenever the resource is updated.
*/
Expand Down Expand Up @@ -7784,6 +7837,18 @@ Array<ExpressRouteCircuitConnection> {
nextLink?: string;
}

/**
* Response for ListPeeredConnections API service call retrieves all global reach peer circuit
* connections that belongs to a Private Peering for an ExpressRouteCircuit.
*/
export interface PeerExpressRouteCircuitConnectionListResult extends
Array<PeerExpressRouteCircuitConnection> {
/**
* The URL to get the next set of results.
*/
nextLink?: string;
}

/**
* Response for ListExpressRouteCircuit API service call.
*/
Expand Down
2 changes: 2 additions & 0 deletions lib/services/networkManagement2/lib/models/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,7 @@ exports.RouteFilterRule = require('./routeFilterRule');
exports.ExpressRouteCircuitStats = require('./expressRouteCircuitStats');
exports.ExpressRouteConnectionId = require('./expressRouteConnectionId');
exports.ExpressRouteCircuitConnection = require('./expressRouteCircuitConnection');
exports.PeerExpressRouteCircuitConnection = require('./peerExpressRouteCircuitConnection');
exports.ExpressRouteCircuitPeering = require('./expressRouteCircuitPeering');
exports.RouteFilter = require('./routeFilter');
exports.Ipv6ExpressRouteCircuitPeeringConfig = require('./ipv6ExpressRouteCircuitPeeringConfig');
Expand Down Expand Up @@ -315,6 +316,7 @@ exports.EndpointServicesListResult = require('./endpointServicesListResult');
exports.AuthorizationListResult = require('./authorizationListResult');
exports.ExpressRouteCircuitPeeringListResult = require('./expressRouteCircuitPeeringListResult');
exports.ExpressRouteCircuitConnectionListResult = require('./expressRouteCircuitConnectionListResult');
exports.PeerExpressRouteCircuitConnectionListResult = require('./peerExpressRouteCircuitConnectionListResult');
exports.ExpressRouteCircuitListResult = require('./expressRouteCircuitListResult');
exports.ExpressRouteServiceProviderListResult = require('./expressRouteServiceProviderListResult');
exports.ExpressRouteCrossConnectionListResult = require('./expressRouteCrossConnectionListResult');
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,146 @@
/*
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is
* regenerated.
*/

'use strict';

const models = require('./index');

/**
* Peer Express Route Circuit Connection in an ExpressRouteCircuitPeering
* resource.
*
* @extends models['SubResource']
*/
class PeerExpressRouteCircuitConnection extends models['SubResource'] {
/**
* Create a PeerExpressRouteCircuitConnection.
* @property {object} [expressRouteCircuitPeering] Reference to Express Route
* Circuit Private Peering Resource of the circuit.
* @property {string} [expressRouteCircuitPeering.id] Resource ID.
* @property {object} [peerExpressRouteCircuitPeering] Reference to Express
* Route Circuit Private Peering Resource of the peered circuit.
* @property {string} [peerExpressRouteCircuitPeering.id] Resource ID.
* @property {string} [addressPrefix] /29 IP address space to carve out
* Customer addresses for tunnels.
* @property {string} [circuitConnectionStatus] Express Route Circuit
* Connection State. Possible values are: 'Connected' and 'Disconnected'.
* Possible values include: 'Connected', 'Connecting', 'Disconnected'
* @property {string} [connectionName] The name of the express route circuit
* connection resource.
* @property {string} [authResourceGuid] The resource guid of the
* authorization used for the express route circuit connection.
* @property {string} [provisioningState] Provisioning state of the peer
* express route circuit connection resource. Possible values are:
* 'Succeeded', 'Updating', 'Deleting', and 'Failed'.
* @property {string} [name] Gets name of the resource that is unique within
* a resource group. This name can be used to access the resource.
* @property {string} [etag] A unique read-only string that changes whenever
* the resource is updated.
*/
constructor() {
super();
}

/**
* Defines the metadata of PeerExpressRouteCircuitConnection
*
* @returns {object} metadata of PeerExpressRouteCircuitConnection
*
*/
mapper() {
return {
required: false,
serializedName: 'PeerExpressRouteCircuitConnection',
type: {
name: 'Composite',
className: 'PeerExpressRouteCircuitConnection',
modelProperties: {
id: {
required: false,
serializedName: 'id',
type: {
name: 'String'
}
},
expressRouteCircuitPeering: {
required: false,
serializedName: 'properties.expressRouteCircuitPeering',
type: {
name: 'Composite',
className: 'SubResource'
}
},
peerExpressRouteCircuitPeering: {
required: false,
serializedName: 'properties.peerExpressRouteCircuitPeering',
type: {
name: 'Composite',
className: 'SubResource'
}
},
addressPrefix: {
required: false,
serializedName: 'properties.addressPrefix',
type: {
name: 'String'
}
},
circuitConnectionStatus: {
required: false,
readOnly: true,
serializedName: 'properties.circuitConnectionStatus',
type: {
name: 'String'
}
},
connectionName: {
required: false,
serializedName: 'properties.connectionName',
type: {
name: 'String'
}
},
authResourceGuid: {
required: false,
serializedName: 'properties.authResourceGuid',
type: {
name: 'String'
}
},
provisioningState: {
required: false,
readOnly: true,
serializedName: 'properties.provisioningState',
type: {
name: 'String'
}
},
name: {
required: false,
serializedName: 'name',
type: {
name: 'String'
}
},
etag: {
required: false,
readOnly: true,
serializedName: 'etag',
type: {
name: 'String'
}
}
}
}
};
}
}

module.exports = PeerExpressRouteCircuitConnection;
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
/*
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
* Changes may cause incorrect behavior and will be lost if the code is
* regenerated.
*/

'use strict';

/**
* Response for ListPeeredConnections API service call retrieves all global
* reach peer circuit connections that belongs to a Private Peering for an
* ExpressRouteCircuit.
*/
class PeerExpressRouteCircuitConnectionListResult extends Array {
/**
* Create a PeerExpressRouteCircuitConnectionListResult.
* @property {string} [nextLink] The URL to get the next set of results.
*/
constructor() {
super();
}

/**
* Defines the metadata of PeerExpressRouteCircuitConnectionListResult
*
* @returns {object} metadata of PeerExpressRouteCircuitConnectionListResult
*
*/
mapper() {
return {
required: false,
serializedName: 'PeerExpressRouteCircuitConnectionListResult',
type: {
name: 'Composite',
className: 'PeerExpressRouteCircuitConnectionListResult',
modelProperties: {
value: {
required: false,
serializedName: '',
type: {
name: 'Sequence',
element: {
required: false,
serializedName: 'PeerExpressRouteCircuitConnectionElementType',
type: {
name: 'Composite',
className: 'PeerExpressRouteCircuitConnection'
}
}
}
},
nextLink: {
required: false,
serializedName: 'nextLink',
type: {
name: 'String'
}
}
}
}
};
}
}

module.exports = PeerExpressRouteCircuitConnectionListResult;
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@ export default class NetworkManagementClient extends AzureServiceClient {
expressRouteCircuitAuthorizations: operations.ExpressRouteCircuitAuthorizations;
expressRouteCircuitPeerings: operations.ExpressRouteCircuitPeerings;
expressRouteCircuitConnections: operations.ExpressRouteCircuitConnections;
peerExpressRouteCircuitConnections: operations.PeerExpressRouteCircuitConnections;
expressRouteCircuits: operations.ExpressRouteCircuits;
expressRouteServiceProviders: operations.ExpressRouteServiceProviders;
expressRouteCrossConnections: operations.ExpressRouteCrossConnections;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -376,6 +376,7 @@ class NetworkManagementClient extends ServiceClient {
this.expressRouteCircuitAuthorizations = new operations.ExpressRouteCircuitAuthorizations(this);
this.expressRouteCircuitPeerings = new operations.ExpressRouteCircuitPeerings(this);
this.expressRouteCircuitConnections = new operations.ExpressRouteCircuitConnections(this);
this.peerExpressRouteCircuitConnections = new operations.PeerExpressRouteCircuitConnections(this);
this.expressRouteCircuits = new operations.ExpressRouteCircuits(this);
this.expressRouteServiceProviders = new operations.ExpressRouteServiceProviders(this);
this.expressRouteCrossConnections = new operations.ExpressRouteCrossConnections(this);
Expand Down
Loading