From 826251c39cf9497db8e619f56cbce23631336663 Mon Sep 17 00:00:00 2001 From: xpk Date: Mon, 10 Aug 2020 15:17:23 +0800 Subject: [PATCH] NEW: setup remote state and lock --- 000-state-setup/s3-state.tf | 45 +++++++++++++++++++++++++++++++++++++ 000-state-setup/var-def.tf | 15 +++++++++++++ 2 files changed, 60 insertions(+) create mode 100644 000-state-setup/s3-state.tf create mode 100644 000-state-setup/var-def.tf diff --git a/000-state-setup/s3-state.tf b/000-state-setup/s3-state.tf new file mode 100644 index 0000000..1e35b91 --- /dev/null +++ b/000-state-setup/s3-state.tf @@ -0,0 +1,45 @@ +resource "random_integer" "suffix" { + min = 1000 + max = 9999 +} + +resource "aws_s3_bucket" "state" { + bucket = "tfstate-sandbox-hkex-${random_integer.suffix.result}" + force_destroy = true + + tags = var.default-tags + + versioning { + enabled = true + } + + server_side_encryption_configuration { + rule { + apply_server_side_encryption_by_default { + sse_algorithm = "AES256" + } + } + } +} + +resource "aws_dynamodb_table" "statelock-sandbox-HKEX" { + name = "statelock-sandbox-HKEX-${random_integer.suffix.result}" + read_capacity = 20 + write_capacity = 20 + hash_key = "LockId" + + attribute { + name = "LockId" + type = "S" + } + + tags = var.default-tags +} + +output "state_bucket" { + value = aws_s3_bucket.state.bucket +} + +output "lock_db" { + value = aws_dynamodb_table.statelock-sandbox-HKEX.name +} diff --git a/000-state-setup/var-def.tf b/000-state-setup/var-def.tf new file mode 100644 index 0000000..7fe1cc6 --- /dev/null +++ b/000-state-setup/var-def.tf @@ -0,0 +1,15 @@ +variable "aws_access_key" {} +variable "aws_secret_key" {} +variable "aws_region" {} + +provider "aws" { + access_key = var.aws_access_key + secret_key = var.aws_secret_key + region = var.aws_region + version = ">= 2.28.1" +} + +variable "default-tags" {} +variable "vpc-cidr" { + default = "172.16.0.0/16" +}