init
This commit is contained in:
58
.bicep/main.bicep
Normal file
58
.bicep/main.bicep
Normal file
@@ -0,0 +1,58 @@
|
||||
targetScope = 'subscription'
|
||||
|
||||
@description('The name of the resource group')
|
||||
param resourceGroupName string = 'rg-blazor-grafana'
|
||||
|
||||
@description('The location for all resources')
|
||||
param location string = 'eastus'
|
||||
|
||||
@description('The name of the App Service Plan')
|
||||
param appServicePlanName string = 'asp-blazor-app'
|
||||
|
||||
@description('The name of the Web App')
|
||||
param webAppName string = 'webapp-blazor-${uniqueString(resourceGroupName)}'
|
||||
|
||||
@description('The name of the Application Insights instance')
|
||||
param appInsightsName string = 'ai-blazor-app'
|
||||
|
||||
@description('The name of the Log Analytics Workspace')
|
||||
param logAnalyticsWorkspaceName string = 'law-blazor-app'
|
||||
|
||||
// Create the resource group
|
||||
resource resourceGroup 'Microsoft.Resources/resourceGroups@2021-04-01' = {
|
||||
name: resourceGroupName
|
||||
location: location
|
||||
}
|
||||
|
||||
// Deploy the logging and monitoring infrastructure
|
||||
module monitoring 'modules/monitoring.bicep' = {
|
||||
scope: resourceGroup
|
||||
name: 'monitoring-deployment'
|
||||
params: {
|
||||
location: location
|
||||
appInsightsName: appInsightsName
|
||||
logAnalyticsWorkspaceName: logAnalyticsWorkspaceName
|
||||
}
|
||||
}
|
||||
|
||||
// Deploy the App Service infrastructure
|
||||
module appService 'modules/appService.bicep' = {
|
||||
scope: resourceGroup
|
||||
name: 'appservice-deployment'
|
||||
params: {
|
||||
location: location
|
||||
appServicePlanName: appServicePlanName
|
||||
webAppName: webAppName
|
||||
appInsightsInstrumentationKey: monitoring.outputs.instrumentationKey
|
||||
appInsightsConnectionString: monitoring.outputs.connectionString
|
||||
}
|
||||
}
|
||||
|
||||
// Outputs
|
||||
output resourceGroupName string = resourceGroup.name
|
||||
output webAppName string = appService.outputs.webAppName
|
||||
output webAppUrl string = appService.outputs.webAppUrl
|
||||
output appInsightsName string = monitoring.outputs.appInsightsName
|
||||
output logAnalyticsWorkspaceId string = monitoring.outputs.workspaceId
|
||||
output grafanaName string = monitoring.outputs.grafanaName
|
||||
output grafanaEndpoint string = monitoring.outputs.grafanaEndpoint
|
||||
Reference in New Issue
Block a user