From ba26ce83d0d3b9e75d047088ef3a73cdbc9f2230 Mon Sep 17 00:00:00 2001 From: Rainer Halanek Date: Sat, 6 Nov 2021 14:12:06 +0100 Subject: [PATCH 01/14] restructure vnet child resources --- .../databaseAccounts/readme.md | 2 +- .../.parameters/vnetPeering.parameters.json | 151 ++++++++++++++++++ .../virtualNetworks/deploy.bicep | 25 ++- .../virtualNetworks/readme.md | 3 +- .../.bicep/nested_cuaId.bicep | 0 .../.parameters/parameters.json | 0 .../virtualNetworkPeerings/deploy.bicep | 4 +- .../virtualNetworkPeerings/readme.md | 2 +- 8 files changed, 178 insertions(+), 9 deletions(-) create mode 100644 arm/Microsoft.Network/virtualNetworks/.parameters/vnetPeering.parameters.json rename arm/Microsoft.Network/{virtualNetworksResources => virtualNetworks}/virtualNetworkPeerings/.bicep/nested_cuaId.bicep (100%) rename arm/Microsoft.Network/{virtualNetworksResources => virtualNetworks}/virtualNetworkPeerings/.parameters/parameters.json (100%) rename arm/Microsoft.Network/{virtualNetworksResources => virtualNetworks}/virtualNetworkPeerings/deploy.bicep (94%) rename arm/Microsoft.Network/{virtualNetworksResources => virtualNetworks}/virtualNetworkPeerings/readme.md (90%) diff --git a/arm/Microsoft.DocumentDB/databaseAccounts/readme.md b/arm/Microsoft.DocumentDB/databaseAccounts/readme.md index c1f65882c0..8153ebcede 100644 --- a/arm/Microsoft.DocumentDB/databaseAccounts/readme.md +++ b/arm/Microsoft.DocumentDB/databaseAccounts/readme.md @@ -35,7 +35,7 @@ This module deploys a Documentdb database account and its child resources. | `maxIntervalInSeconds` | int | `300` | | Optional. Max lag time (minutes). Required for BoundedStaleness. Valid ranges, Single Region: 5 to 84600. Multi Region: 300 to 86400. | | `maxStalenessPrefix` | int | `100000` | | Optional. Max stale requests. Required for BoundedStaleness. Valid ranges, Single Region: 10 to 1000000. Multi Region: 100000 to 1000000. | | `metricsToEnable` | array | `[Requests]` | `[Requests]` | Optional. The name of metrics that will be streamed. | -| `mongodbDatabases` | _[mongodbDatabases](mongodbDatabases/readme.md)_ array | `[]` | | Optional. MongoDB Databases configurations | +| `mongodbDatabases` | _[mongodbDatabases](mongodbDatabases/readme.md)_ array | `[]` | | Optional. Virtual Network Peerings configurations | | `name` | string | | | Required. Name of the Database Account | | `roleAssignments` | array | `[]` | | Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalIds' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or it's fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11' | | `serverVersion` | string | `4.0` | `[3.2, 3.6, 4.0]` | Optional. Specifies the MongoDB server version to use. | diff --git a/arm/Microsoft.Network/virtualNetworks/.parameters/vnetPeering.parameters.json b/arm/Microsoft.Network/virtualNetworks/.parameters/vnetPeering.parameters.json new file mode 100644 index 0000000000..4f9f42c8f5 --- /dev/null +++ b/arm/Microsoft.Network/virtualNetworks/.parameters/vnetPeering.parameters.json @@ -0,0 +1,151 @@ +{ + "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#", + "contentVersion": "1.0.0.0", + "parameters": { + "vnetName": { + "value": "sxx-az-vnet-x-001" + }, + "vnetAddressPrefixes": { + "value": [ + "10.0.0.0/16" + ] + }, + "subnets": { + "value": [ + { + "name": "GatewaySubnet", + "addressPrefix": "10.0.255.0/24" + }, + { + "name": "sxx-az-subnet-x-001", + "addressPrefix": "10.0.0.0/24", + "networkSecurityGroupName": "", + "routeTableName": "", + "serviceEndpoints": [ + { + "service": "Microsoft.EventHub" + }, + { + "service": "Microsoft.Sql" + }, + { + "service": "Microsoft.Storage" + }, + { + "service": "Microsoft.KeyVault" + } + ], + "delegations": [] + }, + { + "name": "sxx-az-subnet-x-002", + "addressPrefix": "10.0.1.0/24", + "networkSecurityGroupName": "", + "routeTableName": "", + "serviceEndpoints": [ + { + "service": "Microsoft.EventHub" + }, + { + "service": "Microsoft.Sql" + }, + { + "service": "Microsoft.Storage" + }, + { + "service": "Microsoft.KeyVault" + } + ], + "delegations": [] + }, + { + "name": "sxx-az-subnet-x-003", + "addressPrefix": "10.0.2.0/24", + "networkSecurityGroupName": "", + "routeTableName": "", + "serviceEndpoints": [], + "delegations": [ + { + "name": "sqlMiDel", + "properties": { + "serviceName": "Microsoft.Sql/managedInstances" + } + } + ] + }, + { + "name": "sxx-az-subnet-x-004", + "addressPrefix": "10.0.3.0/24", + "networkSecurityGroupName": "", + "routeTableName": "", + "serviceEndpoints": [], + "delegations": [ + { + "name": "netappDel", + "properties": { + "serviceName": "Microsoft.Netapp/volumes" + } + } + ] + }, + { + "name": "AzureFirewallSubnet", + "addressPrefix": "10.0.4.0/24", + "networkSecurityGroupName": "", + "routeTableName": "", + "serviceEndpoints": [], + "delegations": [] + }, + { + "name": "AzureBastionSubnet", + "addressPrefix": "10.0.5.0/24", + "networkSecurityGroupName": "", + "routeTableName": "", + "serviceEndpoints": [], + "delegations": [] + }, + { + "name": "sxx-az-subnet-x-005", + "addressPrefix": "10.0.6.0/24", + "networkSecurityGroupName": "", + "routeTableName": "", + "serviceEndpoints": [], + "delegations": [], + "privateEndpointNetworkPolicies": "Disabled", // This property must be set to disabled for subnets that contain private endpoints. It confirms that NSGs rules will not apply to private endpoints (currently not supported). Default Value when not specified is "Enabled". + "privateLinkServiceNetworkPolicies": "Enabled" + } + ] + }, + "virtualNetworkPeerings": { + "value": [ + { + "remoteVirtualNetworkId": { + "value": "/subscriptions/<>/resourceGroups/validation-rg/providers/Microsoft.Network/virtualNetworks/adp-sxx-az-vnet-x-peer01" + }, + "allowForwardedTraffic": { + "value": true + }, + "allowGatewayTransit": { + "value": false + }, + "allowVirtualNetworkAccess": { + "value": true + }, + "useRemoteGateways": { + "value": false + } + } + ] + }, + "roleAssignments": { + "value": [ + { + "roleDefinitionIdOrName": "Reader", + "principalIds": [ + "cf33fea8-b30f-424f-ab73-c48d99e0b222" + ] + } + ] + } + } +} diff --git a/arm/Microsoft.Network/virtualNetworks/deploy.bicep b/arm/Microsoft.Network/virtualNetworks/deploy.bicep index ed40323ec1..3b10d63145 100644 --- a/arm/Microsoft.Network/virtualNetworks/deploy.bicep +++ b/arm/Microsoft.Network/virtualNetworks/deploy.bicep @@ -1,5 +1,5 @@ @description('Required. The Virtual Network (vNet) Name.') -param vNetName string +param name string @description('Optional. Location for all resources.') param location string = resourceGroup().location @@ -17,6 +17,9 @@ param dnsServers array = [] @description('Optional. Resource Id of the DDoS protection plan to assign the VNET to. If it\'s left blank, DDoS protection will not be configured. If it\'s provided, the VNET created by this template will be attached to the referenced DDoS protection plan. The DDoS protection plan can exist in the same or in a different subscription.') param ddosProtectionPlanId string = '' +@description('Optional. Virtual Network Peerings configurations') +param virtualNetworkPeerings array = [] + @description('Optional. Specifies the number of days that logs will be kept for; a value of 0 will retain data indefinitely.') @minValue(0) @maxValue(365) @@ -99,7 +102,7 @@ module pid_cuaId '.bicep/nested_cuaId.bicep' = if (!empty(cuaId)) { } resource virtualNetwork 'Microsoft.Network/virtualNetworks@2021-05-01' = { - name: vNetName + name: name location: location tags: tags properties: { @@ -125,6 +128,20 @@ resource virtualNetwork 'Microsoft.Network/virtualNetworks@2021-05-01' = { } } +module virtualNetworkPeerings_resource 'virtualNetworkPeerings/deploy.bicep' = [for virtualNetworkPeering in virtualNetworkPeerings: { + name: '${uniqueString(deployment().name, location)}-virtualNetworkPeering-${virtualNetworkPeering.name}' + params: { + localVnetName: name + remoteVirtualNetworkId: virtualNetworkPeering.remoteVirtualNetworkId + name: contains(virtualNetworkPeering, 'name') ? virtualNetworkPeering.name : '' + allowForwardedTraffic: contains(virtualNetworkPeering, 'allowForwardedTraffic') ? virtualNetworkPeering.allowForwardedTraffic : true + allowGatewayTransit: contains(virtualNetworkPeering, 'allowGatewayTransit') ? virtualNetworkPeering.allowGatewayTransit : false + allowVirtualNetworkAccess: contains(virtualNetworkPeering, 'allowVirtualNetworkAccess') ? virtualNetworkPeering.allowVirtualNetworkAccess : true + doNotVerifyRemoteGateways: contains(virtualNetworkPeering, 'doNotVerifyRemoteGateways') ? virtualNetworkPeering.doNotVerifyRemoteGateways : true + useRemoteGateways: contains(virtualNetworkPeering, 'useRemoteGateways') ? virtualNetworkPeering.useRemoteGateways : false + } +}] + resource virtualNetwork_lock 'Microsoft.Authorization/locks@2016-09-01' = if (lock != 'NotSpecified') { name: '${virtualNetwork.name}-${lock}-lock' properties: { @@ -135,7 +152,7 @@ resource virtualNetwork_lock 'Microsoft.Authorization/locks@2016-09-01' = if (lo } resource appServiceEnvironment_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@2017-05-01-preview' = if (!empty(diagnosticStorageAccountId) || !empty(workspaceId) || !empty(eventHubAuthorizationRuleId) || !empty(eventHubName)) { - name: '${vNetName}-diagnosticSettings' + name: '${name}-diagnosticSettings' properties: { storageAccountId: empty(diagnosticStorageAccountId) ? null : diagnosticStorageAccountId workspaceId: empty(workspaceId) ? null : workspaceId @@ -168,4 +185,4 @@ output virtualNetworkName string = virtualNetwork.name output subnetNames array = [for subnet in subnets: subnet.name] @description('The resourceIds of the deployed subnets') -output subnetIds array = [for subnet in subnets: resourceId('Microsoft.Network/virtualNetworks/subnets', vNetName, subnet.name)] +output subnetIds array = [for subnet in subnets: resourceId('Microsoft.Network/virtualNetworks/subnets', name, subnet.name)] diff --git a/arm/Microsoft.Network/virtualNetworks/readme.md b/arm/Microsoft.Network/virtualNetworks/readme.md index 287974c703..fed7c71657 100644 --- a/arm/Microsoft.Network/virtualNetworks/readme.md +++ b/arm/Microsoft.Network/virtualNetworks/readme.md @@ -26,11 +26,12 @@ This template deploys a Virtual Network (vNet) with 2 optional Subnets. | `lock` | string | `NotSpecified` | `[CanNotDelete, NotSpecified, ReadOnly]` | Optional. Specify the type of lock. | | `logsToEnable` | array | `[VMProtectionAlerts]` | `[VMProtectionAlerts]` | Optional. The name of logs that will be streamed. | | `metricsToEnable` | array | `[AllMetrics]` | `[AllMetrics]` | Optional. The name of metrics that will be streamed. | +| `name` | string | | | Required. The Virtual Network (vNet) Name. | | `roleAssignments` | array | `[]` | | Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11' | | `subnets` | array | | | Required. An Array of subnets to deploy to the Virual Network. | | `tags` | object | `{object}` | | Optional. Tags of the resource. | | `vNetAddressPrefixes` | array | | | Required. An Array of 1 or more IP Address Prefixes for the Virtual Network. | -| `vNetName` | string | | | Required. The Virtual Network (vNet) Name. | +| `virtualNetworkPeerings` | _[virtualNetworkPeerings](virtualNetworkPeerings/readme.md)_ array | `[]` | | Optional. MongoDB Databases configurations | | `workspaceId` | string | | | Optional. Resource identifier of Log Analytics. | ### Parameter Usage: `vNetAddressPrefixes` diff --git a/arm/Microsoft.Network/virtualNetworksResources/virtualNetworkPeerings/.bicep/nested_cuaId.bicep b/arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/.bicep/nested_cuaId.bicep similarity index 100% rename from arm/Microsoft.Network/virtualNetworksResources/virtualNetworkPeerings/.bicep/nested_cuaId.bicep rename to arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/.bicep/nested_cuaId.bicep diff --git a/arm/Microsoft.Network/virtualNetworksResources/virtualNetworkPeerings/.parameters/parameters.json b/arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/.parameters/parameters.json similarity index 100% rename from arm/Microsoft.Network/virtualNetworksResources/virtualNetworkPeerings/.parameters/parameters.json rename to arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/.parameters/parameters.json diff --git a/arm/Microsoft.Network/virtualNetworksResources/virtualNetworkPeerings/deploy.bicep b/arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/deploy.bicep similarity index 94% rename from arm/Microsoft.Network/virtualNetworksResources/virtualNetworkPeerings/deploy.bicep rename to arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/deploy.bicep index d7652b2491..19da7cde76 100644 --- a/arm/Microsoft.Network/virtualNetworksResources/virtualNetworkPeerings/deploy.bicep +++ b/arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/deploy.bicep @@ -1,5 +1,5 @@ @description('Optional. The Name of Vnet Peering resource. If not provided, default value will be localVnetName-remoteVnetName') -param peeringName string = '${localVnetName}-${last(split(remoteVirtualNetworkId, '/'))}' +param name string = '${localVnetName}-${last(split(remoteVirtualNetworkId, '/'))}' @description('Required. The Name of the Virtual Network to add the peering to.') param localVnetName string @@ -31,7 +31,7 @@ module pid_cuaId '.bicep/nested_cuaId.bicep' = if (!empty(cuaId)) { } resource virtualNetworkPeering 'Microsoft.Network/virtualNetworks/virtualNetworkPeerings@2021-02-01' = { - name: '${localVnetName}/${peeringName}' + name: '${localVnetName}/${name}' properties: { allowForwardedTraffic: allowForwardedTraffic allowGatewayTransit: allowGatewayTransit diff --git a/arm/Microsoft.Network/virtualNetworksResources/virtualNetworkPeerings/readme.md b/arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/readme.md similarity index 90% rename from arm/Microsoft.Network/virtualNetworksResources/virtualNetworkPeerings/readme.md rename to arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/readme.md index 8b67407f92..9855eb1dca 100644 --- a/arm/Microsoft.Network/virtualNetworksResources/virtualNetworkPeerings/readme.md +++ b/arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/readme.md @@ -25,7 +25,7 @@ The following resources are required to be able to deploy this resource. | `cuaId` | string | | | Optional. Customer Usage Attribution id (GUID). This GUID must be previously registered | | `doNotVerifyRemoteGateways` | bool | `True` | | Optional. If we need to verify the provisioning state of the remote gateway. Default is true | | `localVnetName` | string | | | Required. The Name of the Virtual Network to add the peering to. | -| `peeringName` | string | `[format('{0}-{1}', parameters('localVnetName'), last(split(parameters('remoteVirtualNetworkId'), '/')))]` | | Optional. The Name of Vnet Peering resource. If not provided, default value will be localVnetName-remoteVnetName | +| `name` | string | `[format('{0}-{1}', parameters('localVnetName'), last(split(parameters('remoteVirtualNetworkId'), '/')))]` | | Optional. The Name of Vnet Peering resource. If not provided, default value will be localVnetName-remoteVnetName | | `remoteVirtualNetworkId` | string | | | Required. The Resource ID of the VNet that is this Local VNet is being peered to. Should be in the format of a Resource ID | | `useRemoteGateways` | bool | | | Optional. If remote gateways can be used on this virtual network. If the flag is set to true, and allowGatewayTransit on remote peering is also true, virtual network will use gateways of remote virtual network for transit. Only one peering can have this flag set to true. This flag cannot be set if virtual network already has a gateway. Default is false | From a62a9b3f937dd9cf2fd4c403cdad80cbc9bae252 Mon Sep 17 00:00:00 2001 From: Rainer Halanek Date: Sat, 6 Nov 2021 14:13:32 +0100 Subject: [PATCH 02/14] update pipeline --- .github/workflows/ms.network.virtualnetworks.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ms.network.virtualnetworks.yml b/.github/workflows/ms.network.virtualnetworks.yml index 074cadfdf9..8c2853d8c1 100644 --- a/.github/workflows/ms.network.virtualnetworks.yml +++ b/.github/workflows/ms.network.virtualnetworks.yml @@ -97,7 +97,7 @@ jobs: strategy: fail-fast: false matrix: - parameterFilePaths: ['parameters.json'] + parameterFilePaths: ['parameters.json', 'vnetPeering.parameters.json'] steps: - name: 'Checkout' uses: actions/checkout@v2 @@ -132,7 +132,7 @@ jobs: strategy: fail-fast: false matrix: - parameterFilePaths: ['parameters.json'] + parameterFilePaths: ['parameters.json', 'vnetPeering.parameters.json'] steps: - name: 'Checkout' uses: actions/checkout@v2 From cfcccc866e9bef18aee7d5a121f39ced3d95ffd6 Mon Sep 17 00:00:00 2001 From: Rainer Halanek Date: Sat, 6 Nov 2021 14:51:18 +0100 Subject: [PATCH 03/14] update readme --- arm/Microsoft.Network/virtualNetworks/readme.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/arm/Microsoft.Network/virtualNetworks/readme.md b/arm/Microsoft.Network/virtualNetworks/readme.md index fed7c71657..e9b28a1a3f 100644 --- a/arm/Microsoft.Network/virtualNetworks/readme.md +++ b/arm/Microsoft.Network/virtualNetworks/readme.md @@ -10,6 +10,7 @@ This template deploys a Virtual Network (vNet) with 2 optional Subnets. | `Microsoft.Authorization/roleAssignments` | 2020-04-01-preview | | `Microsoft.Insights/diagnosticSettings` | 2017-05-01-preview | | `Microsoft.Network/virtualNetworks` | 2021-05-01 | +| `Microsoft.Network/virtualNetworks/virtualNetworkPeerings` | 2021-02-01 | ## Parameters @@ -30,8 +31,8 @@ This template deploys a Virtual Network (vNet) with 2 optional Subnets. | `roleAssignments` | array | `[]` | | Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalId' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or its fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11' | | `subnets` | array | | | Required. An Array of subnets to deploy to the Virual Network. | | `tags` | object | `{object}` | | Optional. Tags of the resource. | +| `virtualNetworkPeerings` | _[virtualNetworkPeerings](virtualNetworkPeerings/readme.md)_ array | `[]` | | Optional. Virtual Network Peerings configurations | | `vNetAddressPrefixes` | array | | | Required. An Array of 1 or more IP Address Prefixes for the Virtual Network. | -| `virtualNetworkPeerings` | _[virtualNetworkPeerings](virtualNetworkPeerings/readme.md)_ array | `[]` | | Optional. MongoDB Databases configurations | | `workspaceId` | string | | | Optional. Resource identifier of Log Analytics. | ### Parameter Usage: `vNetAddressPrefixes` @@ -165,3 +166,4 @@ The network security group and route table resources must reside in the same res - [Roleassignments](https://docs.microsoft.com/en-us/azure/templates/Microsoft.Authorization/2020-04-01-preview/roleAssignments) - [Diagnosticsettings](https://docs.microsoft.com/en-us/azure/templates/Microsoft.Insights/2017-05-01-preview/diagnosticSettings) - [Virtualnetworks](https://docs.microsoft.com/en-us/azure/templates/Microsoft.Network/2021-05-01/virtualNetworks) +- [Virtualnetworks/Virtualnetworkpeerings](https://docs.microsoft.com/en-us/azure/templates/Microsoft.Network/2021-02-01/virtualNetworks/virtualNetworkPeerings) From db5225929027878f5801e54571da17af4e1c60bd Mon Sep 17 00:00:00 2001 From: Rainer Halanek Date: Sat, 6 Nov 2021 14:54:44 +0100 Subject: [PATCH 04/14] update parameter name --- .../virtualNetworks/.parameters/parameters.json | 2 +- .../virtualNetworks/.parameters/vnetPeering.parameters.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/arm/Microsoft.Network/virtualNetworks/.parameters/parameters.json b/arm/Microsoft.Network/virtualNetworks/.parameters/parameters.json index 32f6279fbf..08f99059ed 100644 --- a/arm/Microsoft.Network/virtualNetworks/.parameters/parameters.json +++ b/arm/Microsoft.Network/virtualNetworks/.parameters/parameters.json @@ -2,7 +2,7 @@ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#", "contentVersion": "1.0.0.0", "parameters": { - "vnetName": { + "name": { "value": "sxx-az-vnet-x-001" }, "vnetAddressPrefixes": { diff --git a/arm/Microsoft.Network/virtualNetworks/.parameters/vnetPeering.parameters.json b/arm/Microsoft.Network/virtualNetworks/.parameters/vnetPeering.parameters.json index 4f9f42c8f5..10b3c78278 100644 --- a/arm/Microsoft.Network/virtualNetworks/.parameters/vnetPeering.parameters.json +++ b/arm/Microsoft.Network/virtualNetworks/.parameters/vnetPeering.parameters.json @@ -2,7 +2,7 @@ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#", "contentVersion": "1.0.0.0", "parameters": { - "vnetName": { + "name": { "value": "sxx-az-vnet-x-001" }, "vnetAddressPrefixes": { From d33fb28752863464570e7dfb37fbe4538e445e24 Mon Sep 17 00:00:00 2001 From: Rainer Halanek Date: Sat, 6 Nov 2021 17:38:55 +0100 Subject: [PATCH 05/14] fix --- arm/Microsoft.Network/virtualNetworks/deploy.bicep | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arm/Microsoft.Network/virtualNetworks/deploy.bicep b/arm/Microsoft.Network/virtualNetworks/deploy.bicep index 3b10d63145..7d3a455bc7 100644 --- a/arm/Microsoft.Network/virtualNetworks/deploy.bicep +++ b/arm/Microsoft.Network/virtualNetworks/deploy.bicep @@ -129,11 +129,11 @@ resource virtualNetwork 'Microsoft.Network/virtualNetworks@2021-05-01' = { } module virtualNetworkPeerings_resource 'virtualNetworkPeerings/deploy.bicep' = [for virtualNetworkPeering in virtualNetworkPeerings: { - name: '${uniqueString(deployment().name, location)}-virtualNetworkPeering-${virtualNetworkPeering.name}' + name: '${uniqueString(deployment().name, location)}-virtualNetworkPeering-${contains(virtualNetworkPeering, 'name') ? virtualNetworkPeering.name : '${name}-${last(split(virtualNetworkPeering.remoteVirtualNetworkId, '/'))}'}' params: { localVnetName: name remoteVirtualNetworkId: virtualNetworkPeering.remoteVirtualNetworkId - name: contains(virtualNetworkPeering, 'name') ? virtualNetworkPeering.name : '' + name: contains(virtualNetworkPeering, 'name') ? virtualNetworkPeering.name : '${name}-${last(split(virtualNetworkPeering.remoteVirtualNetworkId, '/'))}' allowForwardedTraffic: contains(virtualNetworkPeering, 'allowForwardedTraffic') ? virtualNetworkPeering.allowForwardedTraffic : true allowGatewayTransit: contains(virtualNetworkPeering, 'allowGatewayTransit') ? virtualNetworkPeering.allowGatewayTransit : false allowVirtualNetworkAccess: contains(virtualNetworkPeering, 'allowVirtualNetworkAccess') ? virtualNetworkPeering.allowVirtualNetworkAccess : true From 9ab70d279c1d38b7c828cebffe1f0087ab381ca3 Mon Sep 17 00:00:00 2001 From: Rainer Halanek Date: Sat, 6 Nov 2021 17:53:52 +0100 Subject: [PATCH 06/14] fix #2 --- .../.parameters/vnetPeering.parameters.json | 20 +++++-------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/arm/Microsoft.Network/virtualNetworks/.parameters/vnetPeering.parameters.json b/arm/Microsoft.Network/virtualNetworks/.parameters/vnetPeering.parameters.json index 10b3c78278..8eb8ac2ce9 100644 --- a/arm/Microsoft.Network/virtualNetworks/.parameters/vnetPeering.parameters.json +++ b/arm/Microsoft.Network/virtualNetworks/.parameters/vnetPeering.parameters.json @@ -119,21 +119,11 @@ "virtualNetworkPeerings": { "value": [ { - "remoteVirtualNetworkId": { - "value": "/subscriptions/<>/resourceGroups/validation-rg/providers/Microsoft.Network/virtualNetworks/adp-sxx-az-vnet-x-peer01" - }, - "allowForwardedTraffic": { - "value": true - }, - "allowGatewayTransit": { - "value": false - }, - "allowVirtualNetworkAccess": { - "value": true - }, - "useRemoteGateways": { - "value": false - } + "remoteVirtualNetworkId": "/subscriptions/<>/resourceGroups/validation-rg/providers/Microsoft.Network/virtualNetworks/adp-sxx-az-vnet-x-peer01", + "allowForwardedTraffic": true, + "allowGatewayTransit": false, + "allowVirtualNetworkAccess": true, + "useRemoteGateways": false } ] }, From 896550016be38462449c9ce18a43bc3a71112cd7 Mon Sep 17 00:00:00 2001 From: Rainer Halanek Date: Sat, 6 Nov 2021 18:12:31 +0100 Subject: [PATCH 07/14] shorten deployment name --- arm/Microsoft.Network/virtualNetworks/deploy.bicep | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arm/Microsoft.Network/virtualNetworks/deploy.bicep b/arm/Microsoft.Network/virtualNetworks/deploy.bicep index 7d3a455bc7..19551ee162 100644 --- a/arm/Microsoft.Network/virtualNetworks/deploy.bicep +++ b/arm/Microsoft.Network/virtualNetworks/deploy.bicep @@ -128,8 +128,8 @@ resource virtualNetwork 'Microsoft.Network/virtualNetworks@2021-05-01' = { } } -module virtualNetworkPeerings_resource 'virtualNetworkPeerings/deploy.bicep' = [for virtualNetworkPeering in virtualNetworkPeerings: { - name: '${uniqueString(deployment().name, location)}-virtualNetworkPeering-${contains(virtualNetworkPeering, 'name') ? virtualNetworkPeering.name : '${name}-${last(split(virtualNetworkPeering.remoteVirtualNetworkId, '/'))}'}' +module virtualNetworkPeerings_resource 'virtualNetworkPeerings/deploy.bicep' = [for (virtualNetworkPeering, index) in virtualNetworkPeerings: { + name: '${uniqueString(deployment().name, location)}-virtualNetworkPeering-${index}' params: { localVnetName: name remoteVirtualNetworkId: virtualNetworkPeering.remoteVirtualNetworkId From 1958165d67fd1d33e1c3d868f78068140b92cf89 Mon Sep 17 00:00:00 2001 From: Rainer Halanek Date: Sat, 6 Nov 2021 18:25:01 +0100 Subject: [PATCH 08/14] fix path --- .../ms.network.virtualnetworks.virtualnetworkpeerings.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml b/.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml index ebd0423e42..af1f3d958c 100644 --- a/.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml +++ b/.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml @@ -21,12 +21,12 @@ on: paths: - '.github/actions/templates/**' - '.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml' - - 'arm/Microsoft.Network/virtualNetworksResources/virtualNetworkPeerings/**' - - '!arm/Microsoft.Network/virtualNetworksResources/virtualNetworkPeerings/readme.md' + - 'arm/Microsoft.Network/virtualNetworkPeerings/**' + - '!arm/Microsoft.Network/virtualNetworkPeerings/readme.md' env: moduleName: 'virtualNetworkPeerings' - modulePath: 'arm/Microsoft.Network/virtualNetworksResources/virtualNetworkPeerings' + modulePath: 'arm/Microsoft.Network/virtualNetworkPeerings' workflowPath: '.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml' AZURE_CREDENTIALS: ${{ secrets.AZURE_CREDENTIALS }} ARM_SUBSCRIPTION_ID: ${{ secrets.ARM_SUBSCRIPTION_ID }} From c93fb5d640c7d1cb58695afff3618f1ab4a83f0f Mon Sep 17 00:00:00 2001 From: Rainer Halanek Date: Sat, 6 Nov 2021 18:30:17 +0100 Subject: [PATCH 09/14] fix path --- .../ms.network.virtualnetworks.virtualnetworkpeerings.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml b/.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml index af1f3d958c..edb1b57efc 100644 --- a/.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml +++ b/.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml @@ -21,12 +21,12 @@ on: paths: - '.github/actions/templates/**' - '.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml' - - 'arm/Microsoft.Network/virtualNetworkPeerings/**' - - '!arm/Microsoft.Network/virtualNetworkPeerings/readme.md' + - 'arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/**' + - '!arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/readme.md' env: moduleName: 'virtualNetworkPeerings' - modulePath: 'arm/Microsoft.Network/virtualNetworkPeerings' + modulePath: 'arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings' workflowPath: '.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml' AZURE_CREDENTIALS: ${{ secrets.AZURE_CREDENTIALS }} ARM_SUBSCRIPTION_ID: ${{ secrets.ARM_SUBSCRIPTION_ID }} From 3fa53d176022aa17c64961cde1417ecaf5cebe0d Mon Sep 17 00:00:00 2001 From: Rainer Halanek Date: Sat, 6 Nov 2021 18:43:58 +0100 Subject: [PATCH 10/14] fix wrong entry --- arm/Microsoft.DocumentDB/databaseAccounts/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arm/Microsoft.DocumentDB/databaseAccounts/readme.md b/arm/Microsoft.DocumentDB/databaseAccounts/readme.md index 8153ebcede..c1f65882c0 100644 --- a/arm/Microsoft.DocumentDB/databaseAccounts/readme.md +++ b/arm/Microsoft.DocumentDB/databaseAccounts/readme.md @@ -35,7 +35,7 @@ This module deploys a Documentdb database account and its child resources. | `maxIntervalInSeconds` | int | `300` | | Optional. Max lag time (minutes). Required for BoundedStaleness. Valid ranges, Single Region: 5 to 84600. Multi Region: 300 to 86400. | | `maxStalenessPrefix` | int | `100000` | | Optional. Max stale requests. Required for BoundedStaleness. Valid ranges, Single Region: 10 to 1000000. Multi Region: 100000 to 1000000. | | `metricsToEnable` | array | `[Requests]` | `[Requests]` | Optional. The name of metrics that will be streamed. | -| `mongodbDatabases` | _[mongodbDatabases](mongodbDatabases/readme.md)_ array | `[]` | | Optional. Virtual Network Peerings configurations | +| `mongodbDatabases` | _[mongodbDatabases](mongodbDatabases/readme.md)_ array | `[]` | | Optional. MongoDB Databases configurations | | `name` | string | | | Required. Name of the Database Account | | `roleAssignments` | array | `[]` | | Optional. Array of role assignment objects that contain the 'roleDefinitionIdOrName' and 'principalIds' to define RBAC role assignments on this resource. In the roleDefinitionIdOrName attribute, you can provide either the display name of the role definition, or it's fully qualified ID in the following format: '/providers/Microsoft.Authorization/roleDefinitions/c2f4ef07-c644-48eb-af81-4b1b4947fb11' | | `serverVersion` | string | `4.0` | `[3.2, 3.6, 4.0]` | Optional. Specifies the MongoDB server version to use. | From 3f60e76188cb68d9b7bc818047ffeeb21f394e61 Mon Sep 17 00:00:00 2001 From: Rainer Halanek Date: Sun, 7 Nov 2021 15:34:22 +0100 Subject: [PATCH 11/14] remove unneeded files --- ...virtualnetworks.virtualnetworkpeerings.yml | 214 ------------------ .../.parameters/parameters.json | 24 -- 2 files changed, 238 deletions(-) delete mode 100644 .github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml delete mode 100644 arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/.parameters/parameters.json diff --git a/.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml b/.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml deleted file mode 100644 index edb1b57efc..0000000000 --- a/.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml +++ /dev/null @@ -1,214 +0,0 @@ -name: 'Network: Virtualnetworks Virtualnetworkpeerings' - -on: - workflow_dispatch: - inputs: - removeDeployment: - description: 'Remove deployed module' - required: false - default: 'false' # Deployment does not support tags - versioningOption: - description: 'The mode to handle the version increments [major|minor|patch|custom]' - required: false - default: 'patch' - customVersion: - description: 'The version to enforce if [versionOption] is set to [custom]' - required: false - default: '0.0.1' - push: - branches: - - main - paths: - - '.github/actions/templates/**' - - '.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml' - - 'arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/**' - - '!arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/readme.md' - -env: - moduleName: 'virtualNetworkPeerings' - modulePath: 'arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings' - workflowPath: '.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml' - AZURE_CREDENTIALS: ${{ secrets.AZURE_CREDENTIALS }} - ARM_SUBSCRIPTION_ID: ${{ secrets.ARM_SUBSCRIPTION_ID }} - ARM_MGMTGROUP_ID: ${{ secrets.ARM_MGMTGROUP_ID }} - -jobs: - ############################ - # SET INPUT PARAMETERS # - ############################ - job_set_workflow_param: - runs-on: ubuntu-20.04 - name: 'Set input parameters to output variables' - steps: - - name: 'Checkout' - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - name: 'Set input parameters' - id: get-workflow-param - uses: ./.github/actions/templates/getWorkflowInput - with: - workflowPath: '${{ env.workflowPath}}' - outputs: - removeDeployment: ${{ steps.get-workflow-param.outputs.removeDeployment }} - versioningOption: ${{ steps.get-workflow-param.outputs.versioningOption }} - customVersion: ${{ steps.get-workflow-param.outputs.customVersion }} - - ################## - # UNIT TESTS # - ################## - # Global tests - # ------------ - job_tests_module_global: - runs-on: ubuntu-20.04 - name: 'Run global module tests' - steps: - - name: 'Checkout' - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - name: 'Test module' - uses: ./.github/actions/templates/validateModuleGeneral - with: - modulePath: '${{ env.modulePath }}' - moduleName: '${{ env.moduleName}}' - - # Global API tests - # ---------------- - job_tests_module_global_api: - runs-on: ubuntu-20.04 - name: 'Run global API module tests' - steps: - - name: 'Checkout' - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - name: 'Test module' - uses: ./.github/actions/templates/validateModuleApis - with: - modulePath: '${{ env.modulePath }}' - moduleName: '${{ env.moduleName}}' - - # Validate deployment module tests - # -------------------------------- - job_tests_module_deploy_validate: - runs-on: ubuntu-20.04 - name: 'Run deployment validation module tests' - strategy: - fail-fast: false - matrix: - parameterFilePaths: ['parameters.json'] - steps: - - name: 'Checkout' - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - name: Set environment variables - uses: deep-mm/set-variables@v1.0 - with: - # Name of variable file - variableFileName: 'variables.module' # Don't write .json here - - name: 'Test module' - uses: ./.github/actions/templates/validateModuleDeploy - with: - templateFilePath: '${{ env.modulePath }}/deploy.bicep' - parameterFilePath: '${{ env.modulePath }}/.parameters/${{ matrix.parameterFilePaths }}' - location: '${{ env.defaultLocation }}' - resourceGroupName: '${{ env.resourceGroupName }}' - subscriptionId: '${{ secrets.ARM_SUBSCRIPTION_ID }}' - managementGroupId: '${{ secrets.ARM_MGMTGROUP_ID }}' - - #################### - # DEPLOY TESTS # - #################### - job_deploy_module: - runs-on: ubuntu-20.04 - name: 'Deploy module' - needs: - - job_set_workflow_param - - job_tests_module_global - - job_tests_module_global_api - - job_tests_module_deploy_validate - strategy: - fail-fast: false - matrix: - parameterFilePaths: ['parameters.json'] - steps: - - name: 'Checkout' - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - name: Set environment variables - uses: deep-mm/set-variables@v1.0 - with: - # Name of variable file - variableFileName: 'variables.module' # Don't write .json here - - name: 'Deploy module' - uses: ./.github/actions/templates/deployModule - with: - moduleName: '${{ env.moduleName }}' - templateFilePath: '${{ env.modulePath }}/deploy.bicep' - parameterFilePath: '${{ env.modulePath }}/.parameters/${{ matrix.parameterFilePaths }}' - location: '${{ env.defaultLocation }}' - resourceGroupName: '${{ env.resourceGroupName }}' - subscriptionId: '${{ secrets.ARM_SUBSCRIPTION_ID }}' - managementGroupId: '${{ secrets.ARM_MGMTGROUP_ID }}' - removeDeployment: '${{ needs.job_set_workflow_param.outputs.removeDeployment }}' - - ############### - # PUBLISH # - ############### - job_publish_module: - name: 'Publish module' - if: contains(fromJson('["refs/heads/main", "refs/heads/master"]'), github.ref) - runs-on: ubuntu-20.04 - needs: - - job_set_workflow_param - - job_deploy_module - steps: - - name: 'Checkout' - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - name: Set environment variables - uses: deep-mm/set-variables@v1.0 - with: - # Name of variable file - variableFileName: 'variables.module' # Don't write .json here - - name: 'Publish module' - uses: ./.github/actions/templates/publishModule - with: - templateFilePath: '${{ env.modulePath }}/deploy.bicep' - componentTemplateSpecRGName: '${{ env.componentTemplateSpecRGName }}' - componentTemplateSpecRGLocation: '${{ env.componentTemplateSpecRGLocation }}' - componentTemplateSpecName: '${{ env.moduleName }}' - componentTemplateSpecDescription: '${{ env.componentTemplateSpecDescription }}' - publishToTemplateSpec: '${{ env.publishToTemplateSpec }}' - versioningOption: '${{ needs.job_set_workflow_param.outputs.versioningOption }}' - customVersion: '${{ needs.job_set_workflow_param.outputs.customVersion }}' - - ############## - # REMOVE # - ############## - job_remove_module: - runs-on: ubuntu-20.04 - name: 'Remove module' - if: ${{ always() && !cancelled() && needs.job_set_workflow_param.outputs.removeDeployment == 'true' && (contains(needs.*.result, 'success') || contains(needs.*.result, 'failure')) }} - needs: - - job_deploy_module - steps: - - name: 'Checkout' - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - name: Set environment variables - uses: deep-mm/set-variables@v1.0 - with: - # Name of variable file - variableFileName: 'variables.module' # Don't write .json here - - name: 'Remove module' - uses: ./.github/actions/templates/removeModule - with: - moduleName: '${{ env.moduleName }}' - templateFilePath: '${{ env.modulePath }}/deploy.bicep' - resourceGroupName: '${{ env.resourceGroupName }}' diff --git a/arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/.parameters/parameters.json b/arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/.parameters/parameters.json deleted file mode 100644 index a465c8245a..0000000000 --- a/arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/.parameters/parameters.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#", - "contentVersion": "1.0.0.0", - "parameters": { - "localVnetName": { - "value": "adp-sxx-az-vnet-x-peer02" - }, - "remoteVirtualNetworkId": { - "value": "/subscriptions/<>/resourceGroups/validation-rg/providers/Microsoft.Network/virtualNetworks/adp-sxx-az-vnet-x-peer01" - }, - "allowForwardedTraffic": { - "value": true - }, - "allowGatewayTransit": { - "value": false - }, - "allowVirtualNetworkAccess": { - "value": true - }, - "useRemoteGateways": { - "value": false - } - } -} From 93ee69b77037e8dda5652e48a87e07ec6a0bc07d Mon Sep 17 00:00:00 2001 From: Rainer Halanek Date: Sun, 7 Nov 2021 15:35:15 +0100 Subject: [PATCH 12/14] update name --- arm/Microsoft.Network/virtualNetworks/deploy.bicep | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arm/Microsoft.Network/virtualNetworks/deploy.bicep b/arm/Microsoft.Network/virtualNetworks/deploy.bicep index 19551ee162..8935c48136 100644 --- a/arm/Microsoft.Network/virtualNetworks/deploy.bicep +++ b/arm/Microsoft.Network/virtualNetworks/deploy.bicep @@ -152,7 +152,7 @@ resource virtualNetwork_lock 'Microsoft.Authorization/locks@2016-09-01' = if (lo } resource appServiceEnvironment_diagnosticSettings 'Microsoft.Insights/diagnosticSettings@2017-05-01-preview' = if (!empty(diagnosticStorageAccountId) || !empty(workspaceId) || !empty(eventHubAuthorizationRuleId) || !empty(eventHubName)) { - name: '${name}-diagnosticSettings' + name: '${virtualNetwork.name}-diagnosticSettings' properties: { storageAccountId: empty(diagnosticStorageAccountId) ? null : diagnosticStorageAccountId workspaceId: empty(workspaceId) ? null : workspaceId From 12357788406139aba8d03f89e40929013802b26b Mon Sep 17 00:00:00 2001 From: Rainer Halanek Date: Sun, 7 Nov 2021 15:43:05 +0100 Subject: [PATCH 13/14] update ourputs --- arm/Microsoft.Network/virtualNetworks/readme.md | 4 ++-- .../virtualNetworkPeerings/deploy.bicep | 3 +++ .../virtualNetworks/virtualNetworkPeerings/readme.md | 10 +++++----- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/arm/Microsoft.Network/virtualNetworks/readme.md b/arm/Microsoft.Network/virtualNetworks/readme.md index e9b28a1a3f..270b0d2416 100644 --- a/arm/Microsoft.Network/virtualNetworks/readme.md +++ b/arm/Microsoft.Network/virtualNetworks/readme.md @@ -154,8 +154,8 @@ The network security group and route table resources must reside in the same res | Output Name | Type | Description | | :-- | :-- | :-- | -| `subnetIds` | array | | -| `subnetNames` | array | | +| `subnetIds` | array | The resourceIds of the deployed subnets | +| `subnetNames` | array | The names of the deployed subnets | | `virtualNetworkName` | string | The name of the virtual network | | `virtualNetworkResourceGroup` | string | The resource group the virtual network was deployed into | | `virtualNetworkResourceId` | string | The resourceId of the virtual network | diff --git a/arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/deploy.bicep b/arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/deploy.bicep index 19da7cde76..ca897bbe82 100644 --- a/arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/deploy.bicep +++ b/arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/deploy.bicep @@ -44,6 +44,9 @@ resource virtualNetworkPeering 'Microsoft.Network/virtualNetworks/virtualNetwork } } +@description('The resource group the virtual network peering was deployed into') output virtualNetworkPeeringResourceGroup string = resourceGroup().name +@description('The name of the virtual network peering') output virtualNetworkPeeringName string = virtualNetworkPeering.name +@description('The resourceId of the virtual network peering') output virtualNetworkPeeringResourceId string = virtualNetworkPeering.id diff --git a/arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/readme.md b/arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/readme.md index 9855eb1dca..c8c7969a3a 100644 --- a/arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/readme.md +++ b/arm/Microsoft.Network/virtualNetworks/virtualNetworkPeerings/readme.md @@ -31,11 +31,11 @@ The following resources are required to be able to deploy this resource. ## Outputs -| Output Name | Type | -| :-- | :-- | -| `virtualNetworkPeeringName` | string | -| `virtualNetworkPeeringResourceGroup` | string | -| `virtualNetworkPeeringResourceId` | string | +| Output Name | Type | Description | +| :-- | :-- | :-- | +| `virtualNetworkPeeringName` | string | The name of the virtual network peering | +| `virtualNetworkPeeringResourceGroup` | string | The resource group the virtual network peering was deployed into | +| `virtualNetworkPeeringResourceId` | string | The resourceId of the virtual network peering | ## Template references From 14e6e81f3321bfa5fc934ee71a86ab21f05a1baf Mon Sep 17 00:00:00 2001 From: Rainer Halanek Date: Mon, 8 Nov 2021 11:14:39 +0100 Subject: [PATCH 14/14] remove yml file --- ...virtualnetworks.virtualnetworkpeerings.yml | 216 ------------------ 1 file changed, 216 deletions(-) delete mode 100644 .github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml diff --git a/.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml b/.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml deleted file mode 100644 index b2e18f3d15..0000000000 --- a/.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml +++ /dev/null @@ -1,216 +0,0 @@ -name: 'Network: Virtualnetworks Virtualnetworkpeerings' - -on: - workflow_dispatch: - inputs: - removeDeployment: - description: 'Remove deployed module' - required: false - default: 'false' # Deployment does not support tags - versioningOption: - description: 'The mode to handle the version increments [major|minor|patch]' - required: false - default: 'patch' - customVersion: - description: 'Custom version to apply. Used only if higher than latest' - required: false - default: '0.0.1' - push: - branches: - - main - paths: - - '.github/actions/templates/**' - - '.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml' - - 'arm/Microsoft.Network/virtualNetworksResources/virtualNetworkPeerings/**' - - '!arm/Microsoft.Network/virtualNetworksResources/virtualNetworkPeerings/readme.md' - -env: - moduleName: 'virtualNetworkPeerings' - modulePath: 'arm/Microsoft.Network/virtualNetworksResources/virtualNetworkPeerings' - workflowPath: '.github/workflows/ms.network.virtualnetworks.virtualnetworkpeerings.yml' - AZURE_CREDENTIALS: ${{ secrets.AZURE_CREDENTIALS }} - ARM_SUBSCRIPTION_ID: ${{ secrets.ARM_SUBSCRIPTION_ID }} - ARM_MGMTGROUP_ID: ${{ secrets.ARM_MGMTGROUP_ID }} - -jobs: - ############################ - # SET INPUT PARAMETERS # - ############################ - job_set_workflow_param: - runs-on: ubuntu-20.04 - name: 'Set input parameters to output variables' - steps: - - name: 'Checkout' - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - name: 'Set input parameters' - id: get-workflow-param - uses: ./.github/actions/templates/getWorkflowInput - with: - workflowPath: '${{ env.workflowPath}}' - outputs: - removeDeployment: ${{ steps.get-workflow-param.outputs.removeDeployment }} - versioningOption: ${{ steps.get-workflow-param.outputs.versioningOption }} - customVersion: ${{ steps.get-workflow-param.outputs.customVersion }} - - ################## - # UNIT TESTS # - ################## - # Global tests - # ------------ - job_tests_module_global: - runs-on: ubuntu-20.04 - name: 'Run global module tests' - steps: - - name: 'Checkout' - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - name: 'Test module' - uses: ./.github/actions/templates/validateModuleGeneral - with: - modulePath: '${{ env.modulePath }}' - moduleName: '${{ env.moduleName}}' - - # Global API tests - # ---------------- - job_tests_module_global_api: - runs-on: ubuntu-20.04 - name: 'Run global API module tests' - steps: - - name: 'Checkout' - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - name: 'Test module' - uses: ./.github/actions/templates/validateModuleApis - with: - modulePath: '${{ env.modulePath }}' - moduleName: '${{ env.moduleName}}' - - # Validate deployment module tests - # -------------------------------- - job_tests_module_deploy_validate: - runs-on: ubuntu-20.04 - name: 'Run deployment validation module tests' - strategy: - fail-fast: false - matrix: - parameterFilePaths: ['parameters.json'] - steps: - - name: 'Checkout' - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - name: Set environment variables - uses: deep-mm/set-variables@v1.0 - with: - # Name of variable file - variableFileName: 'variables.module' # Don't write .json here - - name: 'Test module' - uses: ./.github/actions/templates/validateModuleDeploy - with: - templateFilePath: '${{ env.modulePath }}/deploy.bicep' - parameterFilePath: '${{ env.modulePath }}/.parameters/${{ matrix.parameterFilePaths }}' - location: '${{ env.defaultLocation }}' - resourceGroupName: '${{ env.resourceGroupName }}' - subscriptionId: '${{ secrets.ARM_SUBSCRIPTION_ID }}' - managementGroupId: '${{ secrets.ARM_MGMTGROUP_ID }}' - - #################### - # DEPLOY TESTS # - #################### - job_deploy_module: - runs-on: ubuntu-20.04 - name: 'Deploy module' - needs: - - job_set_workflow_param - - job_tests_module_global - - job_tests_module_global_api - - job_tests_module_deploy_validate - strategy: - fail-fast: false - matrix: - parameterFilePaths: ['parameters.json'] - steps: - - name: 'Checkout' - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - name: Set environment variables - uses: deep-mm/set-variables@v1.0 - with: - # Name of variable file - variableFileName: 'variables.module' # Don't write .json here - - name: 'Deploy module' - uses: ./.github/actions/templates/deployModule - with: - moduleName: '${{ env.moduleName }}' - templateFilePath: '${{ env.modulePath }}/deploy.bicep' - parameterFilePath: '${{ env.modulePath }}/.parameters/${{ matrix.parameterFilePaths }}' - location: '${{ env.defaultLocation }}' - resourceGroupName: '${{ env.resourceGroupName }}' - subscriptionId: '${{ secrets.ARM_SUBSCRIPTION_ID }}' - managementGroupId: '${{ secrets.ARM_MGMTGROUP_ID }}' - removeDeployment: '${{ needs.job_set_workflow_param.outputs.removeDeployment }}' - - ############### - # PUBLISH # - ############### - job_publish_module: - name: 'Publish module' - if: contains(fromJson('["refs/heads/main", "refs/heads/master"]'), github.ref) - runs-on: ubuntu-20.04 - needs: - - job_set_workflow_param - - job_deploy_module - steps: - - name: 'Checkout' - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - name: Set environment variables - uses: deep-mm/set-variables@v1.0 - with: - # Name of variable file - variableFileName: 'variables.module' # Don't write .json here - - name: 'Publish module' - uses: ./.github/actions/templates/publishModule - with: - templateFilePath: '${{ env.modulePath }}/deploy.bicep' - versioningOption: '${{ needs.job_set_workflow_param.outputs.versioningOption }}' - customVersion: '${{ needs.job_set_workflow_param.outputs.customVersion }}' - templateSpecsRGName: '${{ env.templateSpecsRGName }}' - templateSpecsRGLocation: '${{ env.templateSpecsRGLocation }}' - templateSpecsDescription: '${{ env.templateSpecsDescription }}' - templateSpecsDoPublish: '${{ env.templateSpecsDoPublish }}' - bicepRegistryName: '${{ env.bicepRegistryName }}' - bicepRegistryRGName: '${{ env.bicepRegistryRGName }}' - bicepRegistryDoPublish: '${{ env.bicepRegistryDoPublish }}' - - ############## - # REMOVE # - ############## - job_remove_module: - runs-on: ubuntu-20.04 - name: 'Remove module' - if: ${{ always() && !cancelled() && needs.job_set_workflow_param.outputs.removeDeployment == 'true' && (contains(needs.*.result, 'success') || contains(needs.*.result, 'failure')) }} - needs: - - job_deploy_module - steps: - - name: 'Checkout' - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - name: Set environment variables - uses: deep-mm/set-variables@v1.0 - with: - # Name of variable file - variableFileName: 'variables.module' # Don't write .json here - - name: 'Remove module' - uses: ./.github/actions/templates/removeModule - with: - moduleName: '${{ env.moduleName }}' - templateFilePath: '${{ env.modulePath }}/deploy.bicep' - resourceGroupName: '${{ env.resourceGroupName }}'