diff --git a/.github/terraforms/main.tf b/.github/terraforms/main.tf index 168f9df..35a82d9 100644 --- a/.github/terraforms/main.tf +++ b/.github/terraforms/main.tf @@ -1,27 +1,3 @@ -terraform { - required_providers { - azurerm = { - source = "hashicorp/azurerm" - version = "3.53.0" - } - } - - backend "azurerm" { - resource_group_name = "YourTutorState" - storage_account_name = "yourtutorstateaccount" - container_name = "state" - key = "yourtutor.tfstate" - } - - required_version = "1.4.5" -} - -provider "azurerm" { - features { - - } -} - resource "azurerm_resource_group" "rg" { name = local.resource_group_name location = local.location @@ -43,38 +19,31 @@ resource "azurerm_mssql_firewall_rule" "firewall" { end_ip_address = "0.0.0.0" } -resource "azurerm_mssql_database" "sql_db" { - name = local.sql_db_name - server_id = azurerm_mssql_server.sql_server.id - max_size_gb = 40 - sku_name = "S0" - storage_account_type = "Local" +module "sql_db" { + source = "./modules/sql_database" + sql_db_name = local.sql_db_name + sql_server_id = azurerm_mssql_server.sql_server.id } -resource "azurerm_mssql_database" "sql_db_test" { - name = local.sql_db_test_name - server_id = azurerm_mssql_server.sql_server.id - max_size_gb = 40 - sku_name = "S0" - storage_account_type = "Local" +module "sql_db_test" { + source = "./modules/sql_database" + sql_db_name = local.sql_db_test_name + sql_server_id = azurerm_mssql_server.sql_server.id } -resource "azurerm_app_service_plan" "service_plan" { - name = local.app_service_name +resource "azurerm_service_plan" "service_plan" { + name = local.app_service_name resource_group_name = azurerm_resource_group.rg.name location = azurerm_resource_group.rg.location - kind = "Windows" - sku { - tier = "Shared" - size = "D1" - } + os_type = "Windows" + sku_name = "D1" } resource "azurerm_windows_web_app" "webapp" { name = local.web_app_name resource_group_name = azurerm_resource_group.rg.name location = azurerm_resource_group.rg.location - service_plan_id = azurerm_app_service_plan.service_plan.id + service_plan_id = azurerm_service_plan.service_plan.id site_config { always_on = false diff --git a/.github/terraforms/modules/sql_database/main.tf b/.github/terraforms/modules/sql_database/main.tf new file mode 100644 index 0000000..c2339b9 --- /dev/null +++ b/.github/terraforms/modules/sql_database/main.tf @@ -0,0 +1,7 @@ +resource "azurerm_mssql_database" "sql_db" { + name = var.sql_db_name + server_id = var.sql_server_id + max_size_gb = 40 + sku_name = "S0" + storage_account_type = "Local" +} \ No newline at end of file diff --git a/.github/terraforms/modules/sql_database/variables.tf b/.github/terraforms/modules/sql_database/variables.tf new file mode 100644 index 0000000..b95bd13 --- /dev/null +++ b/.github/terraforms/modules/sql_database/variables.tf @@ -0,0 +1,7 @@ +variable "sql_server_id" { + type = string +} + +variable "sql_db_name" { + type = string +} \ No newline at end of file diff --git a/.github/terraforms/setup.tf b/.github/terraforms/setup.tf new file mode 100644 index 0000000..2d81b83 --- /dev/null +++ b/.github/terraforms/setup.tf @@ -0,0 +1,23 @@ +terraform { + required_providers { + azurerm = { + source = "hashicorp/azurerm" + version = "3.53.0" + } + } + + backend "azurerm" { + resource_group_name = "YourTutorState" + storage_account_name = "yourtutorstateaccount" + container_name = "state" + key = "yourtutor.tfstate" + } + + required_version = "~>1.4.5" +} + +provider "azurerm" { + features { + + } +} diff --git a/.github/terraforms/vars.tf b/.github/terraforms/variables.tf similarity index 100% rename from .github/terraforms/vars.tf rename to .github/terraforms/variables.tf diff --git a/.gitignore b/.gitignore index e05497b..6a1ef17 100644 --- a/.gitignore +++ b/.gitignore @@ -397,4 +397,5 @@ override.tf.json # Ignore CLI configuration files .terraformrc -terraform.rc \ No newline at end of file +terraform.rc +.github/terraforms/.terraform.lock.hcl \ No newline at end of file