Create authjanitor.azuredeploy.json
This commit is contained in:
Родитель
81e4542068
Коммит
4eb37fb94e
|
@ -0,0 +1,174 @@
|
|||
{
|
||||
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
|
||||
"contentVersion": "1.0.0.0",
|
||||
"parameters": {
|
||||
"appName": {
|
||||
"type": "string",
|
||||
"defaultValue": "[concat('authjanitor-', uniqueString(resourceGroup().id))]",
|
||||
"metadata": {
|
||||
"description": "The name for the AuthJanitor application instance"
|
||||
}
|
||||
},
|
||||
"storageAccountType": {
|
||||
"type": "string",
|
||||
"defaultValue": "Standard_LRS",
|
||||
"allowedValues": [
|
||||
"Standard_LRS",
|
||||
"Standard_GRS",
|
||||
"Standard_RAGRS"
|
||||
],
|
||||
"metadata": {
|
||||
"description": "Storage Account type"
|
||||
}
|
||||
},
|
||||
"location": {
|
||||
"type": "string",
|
||||
"defaultValue": "[resourceGroup().location]",
|
||||
"metadata": {
|
||||
"description": "Location for all resources."
|
||||
}
|
||||
},
|
||||
"appInsightsLocation": {
|
||||
"type": "string",
|
||||
"defaultValue": "[resourceGroup().location]",
|
||||
"metadata": {
|
||||
"description": "Location for Application Insights"
|
||||
}
|
||||
},
|
||||
"clientid": {
|
||||
"type": "string",
|
||||
"metadata": {
|
||||
"description": "AuthJanitor AD App Client ID"
|
||||
}
|
||||
},
|
||||
"clientsecret": {
|
||||
"type": "string",
|
||||
"metadata": {
|
||||
"description": "AuthJanitor AD App Client Secret"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
"variables": {
|
||||
"functionAppName": "[parameters('appName')]",
|
||||
"hostingPlanName": "[parameters('appName')]",
|
||||
"applicationInsightsName": "[parameters('appName')]",
|
||||
"storageAccountName": "[concat(uniquestring(resourceGroup().id), 'authjanitor')]",
|
||||
"tenantId": "[subscription().tenantId]"
|
||||
},
|
||||
"resources": [
|
||||
{
|
||||
"type": "Microsoft.Storage/storageAccounts",
|
||||
"apiVersion": "2019-06-01",
|
||||
"name": "[variables('storageAccountName')]",
|
||||
"location": "[parameters('location')]",
|
||||
"sku": {
|
||||
"name": "[parameters('storageAccountType')]"
|
||||
},
|
||||
"kind": "StorageV2",
|
||||
"resources": [
|
||||
{
|
||||
"type": "blobServices/containers",
|
||||
"apiVersion": "2019-06-01",
|
||||
"name": "default/authjanitor",
|
||||
"dependsOn":[ "[variables('storageAccountName')]" ]
|
||||
},
|
||||
{
|
||||
"type": "blobServices/containers",
|
||||
"apiVersion": "2019-06-01",
|
||||
"name": "default/$web",
|
||||
"dependsOn":[ "[variables('storageAccountName')]" ]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "Microsoft.Web/serverfarms",
|
||||
"apiVersion": "2020-06-01",
|
||||
"name": "[variables('hostingPlanName')]",
|
||||
"location": "[parameters('location')]",
|
||||
"sku": {
|
||||
"name": "Y1",
|
||||
"tier": "Dynamic"
|
||||
},
|
||||
"properties": {
|
||||
"name": "[variables('hostingPlanName')]",
|
||||
"computeMode": "Dynamic"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "Microsoft.Web/sites",
|
||||
"apiVersion": "2020-06-01",
|
||||
"name": "[variables('functionAppName')]",
|
||||
"location": "[parameters('location')]",
|
||||
"kind": "functionapp",
|
||||
"dependsOn": [
|
||||
"[resourceId('Microsoft.Web/serverfarms', variables('hostingPlanName'))]",
|
||||
"[resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName'))]"
|
||||
],
|
||||
"properties": {
|
||||
"serverFarmId": "[resourceId('Microsoft.Web/serverfarms', variables('hostingPlanName'))]",
|
||||
"siteConfig": {
|
||||
"appSettings": [
|
||||
{
|
||||
"name": "AzureWebJobsStorage",
|
||||
"value": "[concat('DefaultEndpointsProtocol=https;AccountName=', variables('storageAccountName'), ';EndpointSuffix=', environment().suffixes.storage, ';AccountKey=',listKeys(resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName')), '2019-06-01').keys[0].value)]"
|
||||
},
|
||||
{
|
||||
"name": "WEBSITE_CONTENTAZUREFILECONNECTIONSTRING",
|
||||
"value": "[concat('DefaultEndpointsProtocol=https;AccountName=', variables('storageAccountName'), ';EndpointSuffix=', environment().suffixes.storage, ';AccountKey=',listKeys(resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName')), '2019-06-01').keys[0].value)]"
|
||||
},
|
||||
{
|
||||
"name": "WEBSITE_CONTENTSHARE",
|
||||
"value": "[toLower(variables('functionAppName'))]"
|
||||
},
|
||||
{
|
||||
"name": "FUNCTIONS_EXTENSION_VERSION",
|
||||
"value": "~2"
|
||||
},
|
||||
{
|
||||
"name": "WEBSITE_NODE_DEFAULT_VERSION",
|
||||
"value": "~10"
|
||||
},
|
||||
{
|
||||
"name": "APPINSIGHTS_INSTRUMENTATIONKEY",
|
||||
"value": "[reference(resourceId('microsoft.insights/components', variables('applicationInsightsName')), '2020-02-02-preview').InstrumentationKey]"
|
||||
},
|
||||
{
|
||||
"name": "FUNCTIONS_WORKER_RUNTIME",
|
||||
"value": "dotnet"
|
||||
},
|
||||
{
|
||||
"name": "STORAGE_WEB_URL",
|
||||
"value": "[reference(variables('storageAccountName')).primaryEndpoints.web]"
|
||||
},
|
||||
{
|
||||
"name": "CLIENT_ID",
|
||||
"value": "[parameters('clientid')]"
|
||||
},
|
||||
{
|
||||
"name": "CLIENT_SECRET",
|
||||
"value": "[parameters('clientsecret')]"
|
||||
},
|
||||
{
|
||||
"name": "TENANT_ID",
|
||||
"value": "[variables('tenantid')]"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "microsoft.insights/components",
|
||||
"apiVersion": "2020-02-02-preview",
|
||||
"name": "[variables('applicationInsightsName')]",
|
||||
"location": "[parameters('appInsightsLocation')]",
|
||||
"tags": {
|
||||
"[concat('hidden-link:', resourceId('Microsoft.Web/sites', variables('applicationInsightsName')))]": "Resource"
|
||||
},
|
||||
"properties": {
|
||||
"ApplicationId": "[variables('applicationInsightsName')]",
|
||||
"Request_Source": "IbizaWebAppExtensionCreate"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
Загрузка…
Ссылка в новой задаче