new pr bicep demo
هذا الالتزام موجود في:
72
bicep/main.bicep
Normal file
72
bicep/main.bicep
Normal file
@@ -0,0 +1,72 @@
|
||||
@description('The location into which your Azure resources should be deployed.')
|
||||
param location string = resourceGroup().location
|
||||
|
||||
@description('Select the type of environment you want to provision. Allowed values are Production and Test.')
|
||||
@allowed([
|
||||
'Production'
|
||||
'Test'
|
||||
])
|
||||
param environmentType string
|
||||
|
||||
@description('A unique suffix to add to resource names that need to be globally unique.')
|
||||
@maxLength(13)
|
||||
param resourceNameSuffix string = uniqueString(resourceGroup().id)
|
||||
|
||||
// Define the names for resources.
|
||||
var appServiceAppName = 'toy-website-${resourceNameSuffix}'
|
||||
var appServicePlanName = 'toy-website'
|
||||
var storageAccountName = 'mystorage${resourceNameSuffix}'
|
||||
|
||||
// Define the SKUs for each component based on the environment type.
|
||||
var environmentConfigurationMap = {
|
||||
Production: {
|
||||
appServicePlan: {
|
||||
sku: {
|
||||
name: 'S1'
|
||||
capacity: 1
|
||||
}
|
||||
}
|
||||
storageAccount: {
|
||||
sku: {
|
||||
name: 'Standard_LRS'
|
||||
}
|
||||
}
|
||||
}
|
||||
Test: {
|
||||
appServicePlan: {
|
||||
sku: {
|
||||
name: 'B1'
|
||||
}
|
||||
}
|
||||
storageAccount: {
|
||||
sku: {
|
||||
name: 'Standard_GRS'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
resource appServicePlan 'Microsoft.Web/serverfarms@2021-01-15' = {
|
||||
name: appServicePlanName
|
||||
location: location
|
||||
sku: environmentConfigurationMap[environmentType].appServicePlan.sku
|
||||
}
|
||||
|
||||
resource appServiceApp 'Microsoft.Web/sites@2021-01-15' = {
|
||||
name: appServiceAppName
|
||||
location: location
|
||||
properties: {
|
||||
serverFarmId: appServicePlan.id
|
||||
httpsOnly: true
|
||||
}
|
||||
}
|
||||
|
||||
resource storageAccount 'Microsoft.Storage/storageAccounts@2021-04-01' = {
|
||||
name: storageAccountName
|
||||
location: location
|
||||
kind: 'StorageV2'
|
||||
sku: environmentConfigurationMap[environmentType].storageAccount.sku
|
||||
}
|
||||
|
||||
output appServiceAppName string = appServiceApp.name
|
||||
output appServiceAppHostName string = appServiceApp.properties.defaultHostName
|
المرجع في مشكلة جديدة
حظر مستخدم