User Story 208753
This commit is contained in:
119
quickstart/101-app-service-backup/main.tf
Normal file
119
quickstart/101-app-service-backup/main.tf
Normal file
@ -0,0 +1,119 @@
|
||||
resource "random_pet" "rg_name" {
|
||||
prefix = var.resource_group_name_prefix
|
||||
}
|
||||
|
||||
resource "azurerm_resource_group" "rg" {
|
||||
location = var.resource_group_location
|
||||
name = random_pet.rg_name.id
|
||||
}
|
||||
|
||||
resource "random_string" "storage_account_name" {
|
||||
length = 8
|
||||
lower = true
|
||||
numeric = false
|
||||
special = false
|
||||
upper = false
|
||||
}
|
||||
|
||||
resource "azurerm_storage_account" "example" {
|
||||
name = random_string.storage_account_name.result
|
||||
resource_group_name = azurerm_resource_group.rg.name
|
||||
location = azurerm_resource_group.rg.location
|
||||
account_tier = "Standard"
|
||||
account_replication_type = "LRS"
|
||||
}
|
||||
|
||||
resource "random_string" "storage_container_name" {
|
||||
length = 8
|
||||
lower = true
|
||||
numeric = false
|
||||
special = false
|
||||
upper = false
|
||||
}
|
||||
|
||||
resource "azurerm_storage_container" "example" {
|
||||
name = random_string.storage_container_name.result
|
||||
storage_account_name = azurerm_storage_account.example.name
|
||||
container_access_type = "private"
|
||||
}
|
||||
|
||||
resource "random_string" "service_plan_name" {
|
||||
length = 8
|
||||
lower = true
|
||||
numeric = false
|
||||
special = false
|
||||
upper = false
|
||||
}
|
||||
|
||||
resource "azurerm_service_plan" "example" {
|
||||
name = random_string.service_plan_name.result
|
||||
location = azurerm_resource_group.rg.location
|
||||
resource_group_name = azurerm_resource_group.rg.name
|
||||
os_type = "Windows"
|
||||
sku_name = "S1"
|
||||
}
|
||||
|
||||
data "azurerm_storage_account_sas" "example" {
|
||||
connection_string = azurerm_storage_account.example.primary_connection_string
|
||||
https_only = true
|
||||
|
||||
resource_types {
|
||||
service = false
|
||||
container = false
|
||||
object = true
|
||||
}
|
||||
|
||||
services {
|
||||
blob = true
|
||||
queue = false
|
||||
table = false
|
||||
file = false
|
||||
}
|
||||
|
||||
start = "2024-01-01"
|
||||
expiry = "2024-12-31"
|
||||
|
||||
permissions {
|
||||
read = false
|
||||
write = true
|
||||
delete = false
|
||||
list = false
|
||||
add = false
|
||||
create = false
|
||||
update = false
|
||||
process = false
|
||||
tag = false
|
||||
filter = false
|
||||
}
|
||||
}
|
||||
|
||||
resource "random_string" "windows_web_app_name" {
|
||||
length = 8
|
||||
lower = true
|
||||
numeric = false
|
||||
special = false
|
||||
upper = false
|
||||
}
|
||||
|
||||
resource "azurerm_windows_web_app" "example" {
|
||||
name = random_string.windows_web_app_name.result
|
||||
location = azurerm_resource_group.rg.location
|
||||
resource_group_name = azurerm_resource_group.rg.name
|
||||
service_plan_id = azurerm_service_plan.example.id
|
||||
|
||||
backup {
|
||||
name = "Example"
|
||||
storage_account_url = "https://${azurerm_storage_account.example.name}.blob.core.windows.net/${azurerm_storage_container.example.name}${data.azurerm_storage_account_sas.example.sas}&sr=b"
|
||||
schedule {
|
||||
frequency_interval = 30
|
||||
frequency_unit = "Day"
|
||||
}
|
||||
}
|
||||
|
||||
site_config {
|
||||
application_stack {
|
||||
dotnet_version = "v6.0"
|
||||
current_stack = "dotnet"
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user