### SET VARIABLES variable "project_name" { type = string default = "hideyoshi-portifolio" } variable "project_domain" { type = string } variable "k3s_token" { type = string } variable "number_of_workers" { type = number default = 2 } variable "aws_region" { type = string default = "sa-east-1" } variable "aws_access" { type = string } variable "aws_secret" { type = string } variable "godaddy_key" { type = string } variable "godaddy_secret" { type = string } variable "ssh_public_key_main" { type = string } variable "ssh_public_key_ci_cd" { type = string } ### PROVIDERS terraform { required_providers { godaddy = { source = "zaneatwork/godaddy" version = "1.9.10" } aws = { source = "hashicorp/aws" version = "5.17.0" } } } provider "aws" { region = var.aws_region access_key = var.aws_access secret_key = var.aws_secret } provider "godaddy" { key = var.godaddy_key secret = var.godaddy_secret } ### RESOURCES # S3 Bucket resource "aws_s3_bucket" "default" { bucket = "${var.project_name}-bucket" } resource "aws_s3_bucket_public_access_block" "bucket_public_disabled" { bucket = aws_s3_bucket.default.id block_public_acls = true block_public_policy = false ignore_public_acls = true restrict_public_buckets = true } resource "aws_s3_bucket_ownership_controls" "s3_bucket_acl_ownership" { bucket = aws_s3_bucket.default.id rule { object_ownership = "BucketOwnerPreferred" } depends_on = [aws_s3_bucket_public_access_block.bucket_public_disabled] } resource "aws_s3_bucket_acl" "default" { bucket = aws_s3_bucket.default.id acl = "private" depends_on = [aws_s3_bucket_ownership_controls.s3_bucket_acl_ownership] } resource "aws_s3_bucket_policy" "default" { bucket = aws_s3_bucket.default.id depends_on = [aws_s3_bucket_public_access_block.bucket_public_disabled] policy = <