From 71d519989026e17aa2e2a9b90cbcdeb504f31a5f Mon Sep 17 00:00:00 2001 From: goo314 Date: Mon, 27 May 2024 10:26:45 +0000 Subject: [PATCH 1/7] refactor(infra): move codedang-tf-backend module to project --- .../terraform-configuration/README.md | 37 +++++++++++++++++++ .../terraform-configuration}/backend.tf | 2 - .../projects/terraform-configuration/main.tf | 12 ++++++ .../terraform-configuration/variables.tf | 5 +++ 4 files changed, 54 insertions(+), 2 deletions(-) create mode 100644 apps/infra/projects/terraform-configuration/README.md rename apps/infra/{modules/codedang-tf-backend => projects/terraform-configuration}/backend.tf (85%) create mode 100644 apps/infra/projects/terraform-configuration/main.tf create mode 100644 apps/infra/projects/terraform-configuration/variables.tf diff --git a/apps/infra/projects/terraform-configuration/README.md b/apps/infra/projects/terraform-configuration/README.md new file mode 100644 index 0000000000..7bb33ae2d8 --- /dev/null +++ b/apps/infra/projects/terraform-configuration/README.md @@ -0,0 +1,37 @@ +# Terraform Backend configuration + +Project for Terraform Backend Configuration about where Terraform stores its state data files. + +## Requirements + +| Name | Version | +|------|---------| +| [aws](#requirement\_aws) | ~>5.0 | + +## Providers + +| Name | Version | +|------|---------| +| [aws](#provider\_aws) | ~>5.0 | + +## Modules + +No modules. + +## Resources + +| Name | Type | +|------|------| +| [aws_dynamodb_table.tfstate](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/dynamodb_table) | resource | +| [aws_s3_bucket.tfstate](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/s3_bucket) | resource | +| [aws_s3_bucket_versioning.tfstate](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/s3_bucket_versioning) | resource | + +## Inputs + +| Name | Description | Type | Default | Required | +|------|-------------|------|---------|:--------:| +| [region](#input\_region) | The region for provider | `string` | `"ap-northeast-2"` | no | + +## Outputs + +No outputs. diff --git a/apps/infra/modules/codedang-tf-backend/backend.tf b/apps/infra/projects/terraform-configuration/backend.tf similarity index 85% rename from apps/infra/modules/codedang-tf-backend/backend.tf rename to apps/infra/projects/terraform-configuration/backend.tf index 18ccaf757c..f932b90387 100644 --- a/apps/infra/modules/codedang-tf-backend/backend.tf +++ b/apps/infra/projects/terraform-configuration/backend.tf @@ -1,4 +1,3 @@ -# S3 bucket for Terraform Backend resource "aws_s3_bucket" "tfstate" { bucket = "codedang-tf-state" } @@ -10,7 +9,6 @@ resource "aws_s3_bucket_versioning" "tfstate" { } } -# # DynamoDB for Terraform State lock resource "aws_dynamodb_table" "tfstate" { name = "terraform-state-lock" billing_mode = "PAY_PER_REQUEST" diff --git a/apps/infra/projects/terraform-configuration/main.tf b/apps/infra/projects/terraform-configuration/main.tf new file mode 100644 index 0000000000..0998b14ab9 --- /dev/null +++ b/apps/infra/projects/terraform-configuration/main.tf @@ -0,0 +1,12 @@ +terraform { + required_providers { + aws = { + source = "hashicorp/aws" + version = "~>5.0" + } + } +} + +provider "aws" { + region = var.region +} diff --git a/apps/infra/projects/terraform-configuration/variables.tf b/apps/infra/projects/terraform-configuration/variables.tf new file mode 100644 index 0000000000..5f8881bb65 --- /dev/null +++ b/apps/infra/projects/terraform-configuration/variables.tf @@ -0,0 +1,5 @@ +variable "region" { + type = string + description = "The region for provider" + default = "ap-northeast-2" +} From ed3784ce2b7fc181dba9a6ce4d8e8aced8703c23 Mon Sep 17 00:00:00 2001 From: goo314 Date: Mon, 27 May 2024 10:29:27 +0000 Subject: [PATCH 2/7] refactor(infra): delete unused terraform project --- apps/infra/local/.terraform.lock.hcl | 82 ---------------------------- apps/infra/local/main.tf | 28 ---------- apps/infra/local/provider.tf | 4 -- apps/infra/local/variable.tf | 21 ------- 4 files changed, 135 deletions(-) delete mode 100644 apps/infra/local/.terraform.lock.hcl delete mode 100644 apps/infra/local/main.tf delete mode 100644 apps/infra/local/provider.tf delete mode 100644 apps/infra/local/variable.tf diff --git a/apps/infra/local/.terraform.lock.hcl b/apps/infra/local/.terraform.lock.hcl deleted file mode 100644 index 4871968cc8..0000000000 --- a/apps/infra/local/.terraform.lock.hcl +++ /dev/null @@ -1,82 +0,0 @@ -# This file is maintained automatically by "terraform init". -# Manual edits may be lost in future updates. - -provider "registry.terraform.io/cyrilgdn/rabbitmq" { - version = "1.8.0" - constraints = "1.8.0" - hashes = [ - "h1:PZrZsZvFQJd3hwfv7j/drVvQEL42n6yxV9zhXWjfDwA=", - "h1:hbzoPpKDY/ePtDcvdZPiq8RRQPgze265t2wWHPecpJo=", - "h1:neLQrdEL+Hh/ulJzaptij9YBiFVKdskHHwOUPKk6Htk=", - "zh:0a8bd3de84ccd39b55057403fd9d1adbb024caccfcffb879ac894858ba9f06a0", - "zh:16f80a580d481970bbedf86e8e5da07078f0d7f1a8a86392e8ef6e1b9f4ca1d9", - "zh:1b143c6ca964da5da0e0f94866ade50dedc8f4a7397b1c033ffd267e1db4c6e7", - "zh:36b600a063e20855da864bc01ece5e5cec7501d48afeb3dae723921845110daa", - "zh:6cb23dd9444dcfa560bde1bc5a9c7beb41449796573a8ff03bebe31f2d2afccb", - "zh:744ff00cb46a989b4326195b911b2a6210d0ee217b59c565d70cb27cb05f12d1", - "zh:a32e346142598a0a6e28ee56c3c4d92a62fd32dd646f72a5458c81c91ec0bed2", - "zh:a8a9d7f5956f50ea2a6b445372b5eec1361d13833795a4a9f511ed0d12ef8c09", - "zh:b2a1e820efb46ac7a811c9171e2b401c7a17a1e8b1af3ea10da65e157ec4163f", - "zh:bf6dfd3dfc95a88007b86a895c0b1d2a9e97727daed84f3a8bd94fbd839f5faf", - "zh:c62c848d9adac85388a49b9fd92e365f69edc6a269252af6e91c83a5178d888b", - "zh:cca4abc203005c79e98be13f7332af79f97f4119da53daa0ea3e748eb37a7e5d", - "zh:dea734c047c9ee76133cc58b2c7235b6a6cf5d739c2249573a5ca83799307eca", - "zh:e468d5cd8b48704b3b5a5081d11f25486a979a749efbf07b5f1d6567b1cf5e3f", - ] -} - -provider "registry.terraform.io/hashicorp/aws" { - version = "5.48.0" - constraints = "5.48.0" - hashes = [ - "h1:+JXJA9o1r4i9XKQW9T+VldstdAHOngaFxpH5gOSwig0=", - "h1:/iVSXwQQ1wwzCv0YWToDtBovXX69JYYU5ihcNgQqmmc=", - "h1:5ARkW1jRFkiUs5uluggvF8vm9t3VVVU6tbS1NrNLv5o=", - "h1:8K42AueeXUezJjaMUjY752g48wudNXh6H09Eu6XBuRE=", - "h1:EZR1Shsb6kr4hrAXjvr5br8neWNuJFNvN0XFxAxTmKI=", - "h1:IiJ4muAyJ0GEiCYlW5dJDjG0VFlOvQ8eunjj7o9BqIU=", - "h1:PPyDA1s1IY1nCnJBy81mQZtWKSVv74wIq3lkNDMfvIc=", - "h1:SaoGoyfivuc25ajqFLlRTMFnJss7i4WoRlI21wHGeS0=", - "h1:WjAI+1dpL+pBgfVNJckY4yJvsHPquPb5v67bwCmQsEU=", - "h1:ZCus5udkkFdYzAqqPpFp1oHkzsnlDUNXRiyt/2HEcBY=", - "h1:oYwnrdqLKAPL6R3QFuPpI/6HsI29x1fBvs6zjewtTOU=", - "h1:rMyeKizkPgNuYQ1UQpWGDvGdJQs5vDPDlYtS4jVxxcI=", - "h1:sdlIu2yp0/x9nyEgJcKOYDE95hMd6SFvcO8aWzJFAqE=", - "h1:t4xjxXM4DJtUQDCipFyBcjNgFjDZrHIdduXYGl4qU4E=", - "zh:0876d94be46be905d1f6c149461979cd6e9bec80d5ffad43fd6267fe7c3a924d", - "zh:3a853f887e6f61c2ba383c46e71bcec97ecd31d25a78dab08958f43bbbaecb86", - "zh:43235595e26dd131f00704b5b64a65c4e7c4984a559b30d4272170e1b78e99b7", - "zh:6866f7535ec2ef8fe6ed16eecee2e31418a2bd86cec73e1d18e47bd3bb87f68e", - "zh:756a4ed97f30ea6e8871c16446b24ce55601143a715e067b7f9ebdae8349da34", - "zh:793e8414962934be9805186874f207ca1dc8d162b6665e4938893ad827a545c6", - "zh:79b2f886507f21ff1b752ff140ed95ed551f389abf0c8177c7b5f5bbbd95da8e", - "zh:8653b1bc6f7e62404e02f940d962d0c2ba0c4dd4c28bd595945454cf348c2697", - "zh:9b12af85486a96aedd8d7984b0ff811a4b42e3d88dad1a3fb4c0b580d04fa425", - "zh:9bd612f013c075685c129e5d0ec9243572cd51359599b7218459babe0e9b6ac7", - "zh:aabafe758ee8392f56d2c894017203de4dae38c1e3e0d274c54e194b9b8fccff", - "zh:aded7d6034115ca512b79ca17da65ebb8906e3b8def78dcbc0640142b0c05ca0", - "zh:ce383ee19b37666aba60db6b01cbe7a1fcbb40c6dd54d0cb36b2ba114ee5ae62", - "zh:ceaf1b998b9ced4b63f35da386358e4c7ad6def582438987c91bceffefb9e258", - "zh:d79225a9ae6a7391c33aa2d794bf9b167db66398c4f054f94d557615b051a40d", - ] -} - -provider "registry.terraform.io/hashicorp/random" { - version = "3.6.0" - constraints = "3.6.0" - hashes = [ - "h1:I8MBeauYA8J8yheLJ8oSMWqB0kovn16dF/wKZ1QTdkk=", - "zh:03360ed3ecd31e8c5dac9c95fe0858be50f3e9a0d0c654b5e504109c2159287d", - "zh:1c67ac51254ba2a2bb53a25e8ae7e4d076103483f55f39b426ec55e47d1fe211", - "zh:24a17bba7f6d679538ff51b3a2f378cedadede97af8a1db7dad4fd8d6d50f829", - "zh:30ffb297ffd1633175d6545d37c2217e2cef9545a6e03946e514c59c0859b77d", - "zh:454ce4b3dbc73e6775f2f6605d45cee6e16c3872a2e66a2c97993d6e5cbd7055", - "zh:78d5eefdd9e494defcb3c68d282b8f96630502cac21d1ea161f53cfe9bb483b3", - "zh:91df0a9fab329aff2ff4cf26797592eb7a3a90b4a0c04d64ce186654e0cc6e17", - "zh:aa57384b85622a9f7bfb5d4512ca88e61f22a9cea9f30febaa4c98c68ff0dc21", - "zh:c4a3e329ba786ffb6f2b694e1fd41d413a7010f3a53c20b432325a94fa71e839", - "zh:e2699bc9116447f96c53d55f2a00570f982e6f9935038c3810603572693712d0", - "zh:e747c0fd5d7684e5bfad8aa0ca441903f15ae7a98a737ff6aca24ba223207e2c", - "zh:f1ca75f417ce490368f047b63ec09fd003711ae48487fba90b4aba2ccf71920e", - ] -} diff --git a/apps/infra/local/main.tf b/apps/infra/local/main.tf deleted file mode 100644 index eb4473362d..0000000000 --- a/apps/infra/local/main.tf +++ /dev/null @@ -1,28 +0,0 @@ -terraform { - required_providers { - aws = { - source = "hashicorp/aws" - version = "5.48.0" - } - } -} - -module "codedang-infra" { - source = "../modules/codedang-infra" - region = var.region - postgres_username = var.postgres_username - postgres_port = var.postgres_port - redis_port = var.redis_port - rabbitmq_username = var.rabbitmq_username - rabbitmq_port = var.rabbitmq_port - github_client_id = var.github_client_id - github_client_secret = var.github_client_secret - kakao_client_id = var.kakao_client_id - kakao_client_secret = var.kakao_client_secret - otel_url = var.otel_url - otel_port = var.otel_port -} - -module "codedang-tf-backend" { - source = "../modules/codedang-tf-backend" -} diff --git a/apps/infra/local/provider.tf b/apps/infra/local/provider.tf deleted file mode 100644 index f6f28cca8e..0000000000 --- a/apps/infra/local/provider.tf +++ /dev/null @@ -1,4 +0,0 @@ -provider "aws" { - region = var.region - profile = var.profile -} diff --git a/apps/infra/local/variable.tf b/apps/infra/local/variable.tf deleted file mode 100644 index bb1c89f5c6..0000000000 --- a/apps/infra/local/variable.tf +++ /dev/null @@ -1,21 +0,0 @@ -variable "profile" { - type = string - default = "default" -} - -variable "region" { - type = string - default = "ap-northeast-2" -} - -variable "postgres_username" {} -variable "postgres_port" {} -variable "redis_port" {} -variable "rabbitmq_username" {} -variable "rabbitmq_port" {} -variable "github_client_id" {} -variable "github_client_secret" {} -variable "kakao_client_id" {} -variable "kakao_client_secret" {} -variable "otel_url" {} -variable "otel_port" {} From 94dd7bc0ad66c51757f9ac82602585c164701335 Mon Sep 17 00:00:00 2001 From: goo314 Date: Mon, 27 May 2024 10:30:16 +0000 Subject: [PATCH 3/7] chore(infra): prepare refactoring codedang project --- apps/infra/deploy/main.tf | 4 ---- apps/infra/projects/codedang/README.md | 3 +++ apps/infra/projects/codedang/main.tf | 20 ++++++++++++++++++++ apps/infra/projects/codedang/variables.tf | 5 +++++ 4 files changed, 28 insertions(+), 4 deletions(-) create mode 100644 apps/infra/projects/codedang/README.md create mode 100644 apps/infra/projects/codedang/main.tf create mode 100644 apps/infra/projects/codedang/variables.tf diff --git a/apps/infra/deploy/main.tf b/apps/infra/deploy/main.tf index 8dbc159c1a..227c83f4f0 100644 --- a/apps/infra/deploy/main.tf +++ b/apps/infra/deploy/main.tf @@ -33,7 +33,3 @@ module "codedang-infra" { otel_port = var.otel_port } - -# module "codedang-tf-backend" { -# source = "../modules/codedang-tf-backend" -# } diff --git a/apps/infra/projects/codedang/README.md b/apps/infra/projects/codedang/README.md new file mode 100644 index 0000000000..57ccaa5f4d --- /dev/null +++ b/apps/infra/projects/codedang/README.md @@ -0,0 +1,3 @@ +# Codedang + +Project for Codedang diff --git a/apps/infra/projects/codedang/main.tf b/apps/infra/projects/codedang/main.tf new file mode 100644 index 0000000000..fc22f259c1 --- /dev/null +++ b/apps/infra/projects/codedang/main.tf @@ -0,0 +1,20 @@ +terraform { + required_providers { + aws = { + source = "hashicorp/aws" + version = "~>5.0" + } + } + + backend "s3" { + bucket = "codedang-tf-state" + key = "terraform/terraform.tfstate" + region = var.region + encrypt = true + dynamodb_table = "terraform-state-lock" + } +} + +provider "aws" { + region = var.region +} diff --git a/apps/infra/projects/codedang/variables.tf b/apps/infra/projects/codedang/variables.tf new file mode 100644 index 0000000000..5f8881bb65 --- /dev/null +++ b/apps/infra/projects/codedang/variables.tf @@ -0,0 +1,5 @@ +variable "region" { + type = string + description = "The region for provider" + default = "ap-northeast-2" +} From cef94867ed458d80aa3e4155efbbd95dc3fc4733 Mon Sep 17 00:00:00 2001 From: goo314 Date: Mon, 27 May 2024 10:46:54 +0000 Subject: [PATCH 4/7] chore(infra): change tfstate file name --- apps/infra/projects/codedang/main.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/infra/projects/codedang/main.tf b/apps/infra/projects/codedang/main.tf index fc22f259c1..4ff26a2bbc 100644 --- a/apps/infra/projects/codedang/main.tf +++ b/apps/infra/projects/codedang/main.tf @@ -8,7 +8,7 @@ terraform { backend "s3" { bucket = "codedang-tf-state" - key = "terraform/terraform.tfstate" + key = "terraform/codedang.tfstate" region = var.region encrypt = true dynamodb_table = "terraform-state-lock" From a44e66f71000df49d3d05d655d9de43d8caef46b Mon Sep 17 00:00:00 2001 From: goo314 Date: Mon, 27 May 2024 11:05:01 +0000 Subject: [PATCH 5/7] feat(infra): add terraform format in lefthook --- lefthook.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lefthook.yml b/lefthook.yml index 9d0fb67ae3..7c9a67364a 100644 --- a/lefthook.yml +++ b/lefthook.yml @@ -11,6 +11,9 @@ pre-commit: glob: '*.go' run: go fmt -n ./... root: iris + terraformfmt: + glob: '*.tf' + run: terraform fmt {staged_files} commit-msg: commands: From 7248fd7999e5be8ed83d761442aa360a1c24c86e Mon Sep 17 00:00:00 2001 From: goo314 Date: Mon, 27 May 2024 15:20:46 +0000 Subject: [PATCH 6/7] refactor(infra): add projects network and storage --- apps/infra/projects/codedang/main.tf | 2 +- apps/infra/projects/network/README.md | 3 +++ apps/infra/projects/network/main.tf | 20 ++++++++++++++++++++ apps/infra/projects/network/variables.tf | 5 +++++ apps/infra/projects/storage/README.md | 3 +++ apps/infra/projects/storage/main.tf | 20 ++++++++++++++++++++ apps/infra/projects/storage/variables.tf | 5 +++++ 7 files changed, 57 insertions(+), 1 deletion(-) create mode 100644 apps/infra/projects/network/README.md create mode 100644 apps/infra/projects/network/main.tf create mode 100644 apps/infra/projects/network/variables.tf create mode 100644 apps/infra/projects/storage/README.md create mode 100644 apps/infra/projects/storage/main.tf create mode 100644 apps/infra/projects/storage/variables.tf diff --git a/apps/infra/projects/codedang/main.tf b/apps/infra/projects/codedang/main.tf index 4ff26a2bbc..eab6772ec8 100644 --- a/apps/infra/projects/codedang/main.tf +++ b/apps/infra/projects/codedang/main.tf @@ -9,7 +9,7 @@ terraform { backend "s3" { bucket = "codedang-tf-state" key = "terraform/codedang.tfstate" - region = var.region + region = "ap-northeast-2" encrypt = true dynamodb_table = "terraform-state-lock" } diff --git a/apps/infra/projects/network/README.md b/apps/infra/projects/network/README.md new file mode 100644 index 0000000000..52f40a990b --- /dev/null +++ b/apps/infra/projects/network/README.md @@ -0,0 +1,3 @@ +# Network + +Project for Network diff --git a/apps/infra/projects/network/main.tf b/apps/infra/projects/network/main.tf new file mode 100644 index 0000000000..aaf87f1467 --- /dev/null +++ b/apps/infra/projects/network/main.tf @@ -0,0 +1,20 @@ +terraform { + required_providers { + aws = { + source = "hashicorp/aws" + version = "~>5.0" + } + } + + backend "s3" { + bucket = "codedang-tf-state" + key = "terraform/network.tfstate" + region = "ap-northeast-2" + encrypt = true + dynamodb_table = "terraform-state-lock" + } +} + +provider "aws" { + region = var.region +} diff --git a/apps/infra/projects/network/variables.tf b/apps/infra/projects/network/variables.tf new file mode 100644 index 0000000000..5f8881bb65 --- /dev/null +++ b/apps/infra/projects/network/variables.tf @@ -0,0 +1,5 @@ +variable "region" { + type = string + description = "The region for provider" + default = "ap-northeast-2" +} diff --git a/apps/infra/projects/storage/README.md b/apps/infra/projects/storage/README.md new file mode 100644 index 0000000000..b594fb6115 --- /dev/null +++ b/apps/infra/projects/storage/README.md @@ -0,0 +1,3 @@ +# Storage + +Project for Storage diff --git a/apps/infra/projects/storage/main.tf b/apps/infra/projects/storage/main.tf new file mode 100644 index 0000000000..512bc10022 --- /dev/null +++ b/apps/infra/projects/storage/main.tf @@ -0,0 +1,20 @@ +terraform { + required_providers { + aws = { + source = "hashicorp/aws" + version = "~>5.0" + } + } + + backend "s3" { + bucket = "codedang-tf-state" + key = "terraform/storage.tfstate" + region = "ap-northeast-2" + encrypt = true + dynamodb_table = "terraform-state-lock" + } +} + +provider "aws" { + region = var.region +} diff --git a/apps/infra/projects/storage/variables.tf b/apps/infra/projects/storage/variables.tf new file mode 100644 index 0000000000..5f8881bb65 --- /dev/null +++ b/apps/infra/projects/storage/variables.tf @@ -0,0 +1,5 @@ +variable "region" { + type = string + description = "The region for provider" + default = "ap-northeast-2" +} From 77f88ef311c0481440e09967fd2d5d39bcd2b7f2 Mon Sep 17 00:00:00 2001 From: goo314 Date: Thu, 30 May 2024 05:07:30 +0000 Subject: [PATCH 7/7] chore(infra): change dir name from projects to production --- apps/infra/{projects => production}/codedang/README.md | 0 apps/infra/{projects => production}/codedang/main.tf | 0 apps/infra/{projects => production}/codedang/variables.tf | 0 apps/infra/{projects => production}/network/README.md | 0 apps/infra/{projects => production}/network/main.tf | 0 apps/infra/{projects => production}/network/variables.tf | 0 apps/infra/{projects => production}/storage/README.md | 0 apps/infra/{projects => production}/storage/main.tf | 0 apps/infra/{projects => production}/storage/variables.tf | 0 .../{projects => production}/terraform-configuration/README.md | 0 .../{projects => production}/terraform-configuration/backend.tf | 0 .../{projects => production}/terraform-configuration/main.tf | 0 .../{projects => production}/terraform-configuration/variables.tf | 0 13 files changed, 0 insertions(+), 0 deletions(-) rename apps/infra/{projects => production}/codedang/README.md (100%) rename apps/infra/{projects => production}/codedang/main.tf (100%) rename apps/infra/{projects => production}/codedang/variables.tf (100%) rename apps/infra/{projects => production}/network/README.md (100%) rename apps/infra/{projects => production}/network/main.tf (100%) rename apps/infra/{projects => production}/network/variables.tf (100%) rename apps/infra/{projects => production}/storage/README.md (100%) rename apps/infra/{projects => production}/storage/main.tf (100%) rename apps/infra/{projects => production}/storage/variables.tf (100%) rename apps/infra/{projects => production}/terraform-configuration/README.md (100%) rename apps/infra/{projects => production}/terraform-configuration/backend.tf (100%) rename apps/infra/{projects => production}/terraform-configuration/main.tf (100%) rename apps/infra/{projects => production}/terraform-configuration/variables.tf (100%) diff --git a/apps/infra/projects/codedang/README.md b/apps/infra/production/codedang/README.md similarity index 100% rename from apps/infra/projects/codedang/README.md rename to apps/infra/production/codedang/README.md diff --git a/apps/infra/projects/codedang/main.tf b/apps/infra/production/codedang/main.tf similarity index 100% rename from apps/infra/projects/codedang/main.tf rename to apps/infra/production/codedang/main.tf diff --git a/apps/infra/projects/codedang/variables.tf b/apps/infra/production/codedang/variables.tf similarity index 100% rename from apps/infra/projects/codedang/variables.tf rename to apps/infra/production/codedang/variables.tf diff --git a/apps/infra/projects/network/README.md b/apps/infra/production/network/README.md similarity index 100% rename from apps/infra/projects/network/README.md rename to apps/infra/production/network/README.md diff --git a/apps/infra/projects/network/main.tf b/apps/infra/production/network/main.tf similarity index 100% rename from apps/infra/projects/network/main.tf rename to apps/infra/production/network/main.tf diff --git a/apps/infra/projects/network/variables.tf b/apps/infra/production/network/variables.tf similarity index 100% rename from apps/infra/projects/network/variables.tf rename to apps/infra/production/network/variables.tf diff --git a/apps/infra/projects/storage/README.md b/apps/infra/production/storage/README.md similarity index 100% rename from apps/infra/projects/storage/README.md rename to apps/infra/production/storage/README.md diff --git a/apps/infra/projects/storage/main.tf b/apps/infra/production/storage/main.tf similarity index 100% rename from apps/infra/projects/storage/main.tf rename to apps/infra/production/storage/main.tf diff --git a/apps/infra/projects/storage/variables.tf b/apps/infra/production/storage/variables.tf similarity index 100% rename from apps/infra/projects/storage/variables.tf rename to apps/infra/production/storage/variables.tf diff --git a/apps/infra/projects/terraform-configuration/README.md b/apps/infra/production/terraform-configuration/README.md similarity index 100% rename from apps/infra/projects/terraform-configuration/README.md rename to apps/infra/production/terraform-configuration/README.md diff --git a/apps/infra/projects/terraform-configuration/backend.tf b/apps/infra/production/terraform-configuration/backend.tf similarity index 100% rename from apps/infra/projects/terraform-configuration/backend.tf rename to apps/infra/production/terraform-configuration/backend.tf diff --git a/apps/infra/projects/terraform-configuration/main.tf b/apps/infra/production/terraform-configuration/main.tf similarity index 100% rename from apps/infra/projects/terraform-configuration/main.tf rename to apps/infra/production/terraform-configuration/main.tf diff --git a/apps/infra/projects/terraform-configuration/variables.tf b/apps/infra/production/terraform-configuration/variables.tf similarity index 100% rename from apps/infra/projects/terraform-configuration/variables.tf rename to apps/infra/production/terraform-configuration/variables.tf