62 lines
1.9 KiB
Terraform
62 lines
1.9 KiB
Terraform
terraform {
|
|
required_version = ">= 1.5"
|
|
|
|
required_providers {
|
|
azurerm = {
|
|
source = "hashicorp/azurerm"
|
|
version = "~> 4.0"
|
|
}
|
|
}
|
|
}
|
|
|
|
provider "azurerm" {
|
|
features {}
|
|
}
|
|
|
|
resource "azurerm_resource_group" "mission_control" {
|
|
name = "rg-mission-control-${var.environment}"
|
|
location = var.location
|
|
}
|
|
|
|
resource "azurerm_service_plan" "mission_control" {
|
|
name = "asp-mission-control-${var.environment}"
|
|
resource_group_name = azurerm_resource_group.mission_control.name
|
|
location = azurerm_resource_group.mission_control.location
|
|
os_type = "Linux"
|
|
sku_name = "B1"
|
|
}
|
|
|
|
resource "azurerm_linux_web_app" "mission_control" {
|
|
name = "app-mission-control-${var.environment}"
|
|
resource_group_name = azurerm_resource_group.mission_control.name
|
|
location = azurerm_resource_group.mission_control.location
|
|
service_plan_id = azurerm_service_plan.mission_control.id
|
|
|
|
site_config {
|
|
application_stack {
|
|
dotnet_version = "10.0"
|
|
}
|
|
}
|
|
|
|
connection_string {
|
|
name = "MissionControl"
|
|
type = "SQLAzure"
|
|
value = "Server=tcp:${azurerm_mssql_server.mission_control.fully_qualified_domain_name},1433;Database=${azurerm_mssql_database.mission_control.name};User ID=${var.sql_admin_login};Password=${var.sql_admin_password};Encrypt=True;"
|
|
}
|
|
}
|
|
|
|
resource "azurerm_mssql_server" "mission_control" {
|
|
name = "sql-mission-control-${var.environment}"
|
|
resource_group_name = azurerm_resource_group.mission_control.name
|
|
location = azurerm_resource_group.mission_control.location
|
|
version = "12.0"
|
|
administrator_login = var.sql_admin_login
|
|
administrator_login_password = var.sql_admin_password
|
|
}
|
|
|
|
resource "azurerm_mssql_database" "mission_control" {
|
|
name = "sqldb-mission-control"
|
|
server_id = azurerm_mssql_server.mission_control.id
|
|
sku_name = "Basic"
|
|
}
|