diff --git a/Terraform/backend.tf b/Terraform/backend.tf new file mode 100644 index 0000000..22ded48 --- /dev/null +++ b/Terraform/backend.tf @@ -0,0 +1,9 @@ +terraform { + cloud { + organization = "hieuchaya" + + workspaces { + name = "vti-demo-terraform" + } + } +} \ No newline at end of file diff --git a/Terraform/data.tf b/Terraform/data.tf new file mode 100644 index 0000000..e69de29 diff --git a/Terraform/keypair.tf b/Terraform/keypair.tf new file mode 100644 index 0000000..e69de29 diff --git a/Terraform/main.tf b/Terraform/main.tf new file mode 100644 index 0000000..e88d6a2 --- /dev/null +++ b/Terraform/main.tf @@ -0,0 +1,9 @@ +resource "aws_instance" "this" { + ami = "ami-091a58610910a87a9" + instance_type = var.instance_type + availability_zone = var.az + associate_public_ip_address = var.associate_public_ip_address + subnet_id = "subnet-0987e4da014f80b75" + security_groups = ["sg-0b85f388c1731fb0e"] + tags = var.default_tags +} \ No newline at end of file diff --git a/Terraform/provider.tf b/Terraform/provider.tf new file mode 100644 index 0000000..e3d59a2 --- /dev/null +++ b/Terraform/provider.tf @@ -0,0 +1,16 @@ +provider "aws" { + version = "~> 5.0" + region = "ap-southeast-1" + shared_credentials_files = ["C:/Users/Hieu/.aws/credentials"] + skip_region_validation = true +} + +terraform { + required_version = ">= 1.4.0" + required_providers { + aws = { + source = "hashicorp/aws" + version = "~> 5.0" + } + } +} \ No newline at end of file diff --git a/Terraform/variables.tf b/Terraform/variables.tf new file mode 100644 index 0000000..ab90581 --- /dev/null +++ b/Terraform/variables.tf @@ -0,0 +1,22 @@ +variable "az" { + default = "ap-southeast-1b" + type = string +} + +variable "associate_public_ip_address" { + default = false + type = bool +} + +variable "instance_type" { + default = "t2.micro" + type = string + +} + +variable "default_tags" { + default = { + "Owner" = "Hieu" + } + type = map(string) +} \ No newline at end of file