From 8ce2ccd056825ed43a1dfea43c97d4723373a2d4 Mon Sep 17 00:00:00 2001 From: Kenneth <kenneth.tanfa@polytech-lille.net> Date: Thu, 30 Jan 2025 17:27:58 +0100 Subject: [PATCH] WOrking terraform --- terraform_VPC/Kenneth_Hugo.tfplan | Bin 19683 -> 9590 bytes terraform_VPC/main.tf | 53 +- .../terraform.tfstate.d/DEV/terraform.tfstate | 234 ++-- .../DEV/terraform.tfstate.backup | 1109 +---------------- 4 files changed, 111 insertions(+), 1285 deletions(-) diff --git a/terraform_VPC/Kenneth_Hugo.tfplan b/terraform_VPC/Kenneth_Hugo.tfplan index 1f8daf206e001cee7d8cbdf2f8e61d9acc184579..5f7e74735f71f4d8b0b19f6e870d59e6397ca3ca 100644 GIT binary patch delta 8465 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 delta 18652 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 YSlK{9!^XhIFprUeLEoE!nSp@;0C3UtZvX%Q diff --git a/terraform_VPC/main.tf b/terraform_VPC/main.tf index e3912a0..3cb4779 100644 --- a/terraform_VPC/main.tf +++ b/terraform_VPC/main.tf @@ -107,27 +107,7 @@ resource "aws_security_group_rule" "ssh_api_from_bastion" { #################################### # Subnets (A et B) - 2 AZ différentes #################################### -resource "aws_subnet" "private_subnet_a" { - vpc_id = data.aws_vpc.this.id - cidr_block = "10.0.35.0/24" # 1er bloc - availability_zone = data.aws_availability_zones.available.names[0] - map_public_ip_on_launch = false - tags = { - Name = upper("${var.identifiant}_${terraform.workspace}_PRIVATE_SUBNET_A") - } -} - -resource "aws_subnet" "private_subnet_b" { - vpc_id = data.aws_vpc.this.id - cidr_block = "10.0.36.0/24" # 2e bloc - availability_zone = data.aws_availability_zones.available.names[1] - map_public_ip_on_launch = true - - tags = { - Name = upper("${var.identifiant}_${terraform.workspace}_PRIVATE_SUBNET_B") - } -} #################################### # Security Groups @@ -175,14 +155,33 @@ resource "aws_security_group" "sg_api" { # ON autorise la connexion vers le RDS egress { description = "Allow traffic to RDS (5432)" - from_port = 5432 - to_port = 5432 - protocol = "tcp" + from_port = 5432 # 0 + to_port = 5432 #0 + protocol = "tcp" #-1 + cidr_blocks = [data.aws_subnet.private-a.cidr_block] + + /*data.aws.subnet.private_subnet_a.cidr_blocks*/ + } + egress { + description = "Allow traffic to RDS (5432)" + from_port = 80 # 0 + to_port = 80 #0 + protocol = "tcp" #-1 + cidr_blocks = ["0.0.0.0/0"] + + /*data.aws.subnet.private_subnet_a.cidr_blocks*/ + } + egress { + description = "Allow traffic to RDS (5432)" + from_port = 443 # 0 + to_port = 443 #0 + protocol = "tcp" #-1 cidr_blocks = ["0.0.0.0/0"] /*data.aws.subnet.private_subnet_a.cidr_blocks*/ } + tags = { Name = upper("${var.identifiant}_${terraform.workspace}_SG_API") } @@ -246,7 +245,7 @@ resource "aws_instance" "client" { key_name = aws_key_pair.ec2.id # On la met, par exemple, dans le subnet A - subnet_id = aws_subnet.private_subnet_a.id + subnet_id = data.aws_subnet.private-a.id vpc_security_group_ids = [aws_security_group.sg_client.id] tags = { @@ -261,7 +260,7 @@ resource "aws_instance" "api" { key_name = aws_key_pair.ec2.id # On peut la mettre aussi dans le subnet A (ou B, au choix) - subnet_id = aws_subnet.private_subnet_a.id + subnet_id = data.aws_subnet.private-a.id vpc_security_group_ids = [aws_security_group.sg_api.id] tags = { @@ -277,8 +276,8 @@ resource "aws_db_subnet_group" "this" { name = lower("${var.identifiant}_${terraform.workspace}_rds_subnet_group") # RDS exige au moins 2 subnets dans 2 AZ différentes subnet_ids = [ - aws_subnet.private_subnet_a.id, - aws_subnet.private_subnet_b.id + data.aws_subnet.private-a.id, + data.aws_subnet.private-b.id ] tags = { diff --git a/terraform_VPC/terraform.tfstate.d/DEV/terraform.tfstate b/terraform_VPC/terraform.tfstate.d/DEV/terraform.tfstate index f137cc1..6fd285b 100644 --- a/terraform_VPC/terraform.tfstate.d/DEV/terraform.tfstate +++ b/terraform_VPC/terraform.tfstate.d/DEV/terraform.tfstate @@ -1,7 +1,7 @@ { "version": 4, "terraform_version": "1.10.5", - "serial": 113, + "serial": 240, "lineage": "eded4345-a67f-9a4a-9ad8-c68c205f47c2", "outputs": {}, "resources": [ @@ -169,7 +169,7 @@ "assign_ipv6_address_on_creation": false, "availability_zone": "eu-west-3a", "availability_zone_id": "euw3-az1", - "available_ip_address_count": 240, + "available_ip_address_count": 241, "cidr_block": "10.0.1.0/24", "customer_owned_ipv4_pool": "", "default_for_az": false, @@ -219,7 +219,7 @@ "assign_ipv6_address_on_creation": false, "availability_zone": "eu-west-3b", "availability_zone_id": "euw3-az2", - "available_ip_address_count": 245, + "available_ip_address_count": 246, "cidr_block": "10.0.2.0/24", "customer_owned_ipv4_pool": "", "default_for_az": false, @@ -269,7 +269,7 @@ "assign_ipv6_address_on_creation": false, "availability_zone": "eu-west-3a", "availability_zone_id": "euw3-az1", - "available_ip_address_count": 248, + "available_ip_address_count": 247, "cidr_block": "10.0.0.0/24", "customer_owned_ipv4_pool": "", "default_for_az": false, @@ -418,7 +418,7 @@ "availability_zone": "eu-west-3a", "backup_retention_period": 0, "backup_target": "region", - "backup_window": "08:12-08:42", + "backup_window": "13:47-14:17", "blue_green_update": [], "ca_cert_identifier": "rds-ca-rsa2048-g1", "character_set_name": "", @@ -432,11 +432,11 @@ "deletion_protection": false, "domain": "", "domain_auth_secret_arn": "", - "domain_dns_ips": [], + "domain_dns_ips": null, "domain_fqdn": "", "domain_iam_role_name": "", "domain_ou": "", - "enabled_cloudwatch_logs_exports": [], + "enabled_cloudwatch_logs_exports": null, "endpoint": "kennethhugo-dev-rds-instance.cx4q20s8stp5.eu-west-3.rds.amazonaws.com:5432", "engine": "postgres", "engine_lifecycle_support": "open-source-rds-extended-support", @@ -445,7 +445,7 @@ "final_snapshot_identifier": null, "hosted_zone_id": "ZMESEXB7ZGGQ3", "iam_database_authentication_enabled": false, - "id": "db-OVJD44ND4UJCBJPN7LPVEZT6CE", + "id": "db-BLJUB6CY35LFI47TPFTUAAPAEM", "identifier": "kennethhugo-dev-rds-instance", "identifier_prefix": "", "instance_class": "db.t3.micro", @@ -454,7 +454,7 @@ "latest_restorable_time": "", "license_model": "postgresql-license", "listener_endpoint": [], - "maintenance_window": "sun:05:13-sun:05:43", + "maintenance_window": "fri:01:14-fri:01:44", "manage_master_user_password": null, "master_user_secret": [], "master_user_secret_kms_key_id": null, @@ -475,7 +475,7 @@ "replica_mode": "", "replicas": [], "replicate_source_db": "", - "resource_id": "db-OVJD44ND4UJCBJPN7LPVEZT6CE", + "resource_id": "db-BLJUB6CY35LFI47TPFTUAAPAEM", "restore_to_point_in_time": [], "s3_import": [], "skip_final_snapshot": true, @@ -495,7 +495,7 @@ "upgrade_storage_config": null, "username": "postgres", "vpc_security_group_ids": [ - "sg-0501c21c134e1b1e5" + "sg-024d12e63d1848aa9" ] }, "sensitive_attributes": [ @@ -512,10 +512,9 @@ "aws_security_group.sg_api", "aws_security_group.sg_client", "aws_security_group.sg_rds", - "aws_subnet.private_subnet_a", - "aws_subnet.private_subnet_b", - "data.aws_availability_zones.available", "data.aws_security_group.bastion", + "data.aws_subnet.private-a", + "data.aws_subnet.private-b", "data.aws_vpc.this" ] } @@ -536,8 +535,8 @@ "name": "kennethhugo_dev_rds_subnet_group", "name_prefix": "", "subnet_ids": [ - "subnet-0052f34d50c7c6db5", - "subnet-063715ef5e9c6cb64" + "subnet-002aaa6589cef6028", + "subnet-0fc06a60f4305264c" ], "supported_network_types": [ "IPV4" @@ -553,10 +552,8 @@ "sensitive_attributes": [], "private": "bnVsbA==", "dependencies": [ - "aws_subnet.private_subnet_a", - "aws_subnet.private_subnet_b", - "data.aws_availability_zones.available", - "data.aws_vpc.this" + "data.aws_subnet.private-a", + "data.aws_subnet.private-b" ] } ] @@ -571,7 +568,7 @@ "schema_version": 1, "attributes": { "ami": "ami-03f3bb80e24b71cd8", - "arn": "arn:aws:ec2:eu-west-3:920373009484:instance/i-04e9a490e913eb4aa", + "arn": "arn:aws:ec2:eu-west-3:920373009484:instance/i-02e89522bfb642607", "associate_public_ip_address": false, "availability_zone": "eu-west-3a", "capacity_reservation_specification": [ @@ -610,7 +607,7 @@ "host_id": "", "host_resource_group_arn": null, "iam_instance_profile": "", - "id": "i-04e9a490e913eb4aa", + "id": "i-02e89522bfb642607", "instance_initiated_shutdown_behavior": "stop", "instance_lifecycle": "", "instance_market_options": [], @@ -640,8 +637,8 @@ "password_data": "", "placement_group": "", "placement_partition_number": 0, - "primary_network_interface_id": "eni-043877caa26c09fd3", - "private_dns": "ip-10-0-35-75.eu-west-3.compute.internal", + "primary_network_interface_id": "eni-0a1ab6f36a391ccd9", + "private_dns": "ip-10-0-1-93.eu-west-3.compute.internal", "private_dns_name_options": [ { "enable_resource_name_dns_a_record": false, @@ -649,7 +646,7 @@ "hostname_type": "ip-name" } ], - "private_ip": "10.0.35.75", + "private_ip": "10.0.1.93", "public_dns": "", "public_ip": "", "root_block_device": [ @@ -662,7 +659,7 @@ "tags": {}, "tags_all": {}, "throughput": 0, - "volume_id": "vol-0018f0ca34c3fd476", + "volume_id": "vol-04ebf95bebb7bd2e6", "volume_size": 8, "volume_type": "gp2" } @@ -671,7 +668,7 @@ "security_groups": [], "source_dest_check": true, "spot_instance_request_id": "", - "subnet_id": "subnet-063715ef5e9c6cb64", + "subnet_id": "subnet-002aaa6589cef6028", "tags": { "Name": "KENNETHHUGO_DEV_API_VM" }, @@ -685,7 +682,7 @@ "user_data_replace_on_change": false, "volume_tags": null, "vpc_security_group_ids": [ - "sg-08abb0531ca48d02b" + "sg-01d8d54afaa2f5990" ] }, "sensitive_attributes": [], @@ -694,10 +691,9 @@ "aws_key_pair.ec2", "aws_security_group.sg_api", "aws_security_group.sg_client", - "aws_subnet.private_subnet_a", "data.aws_ami.amazon_linux_2", - "data.aws_availability_zones.available", "data.aws_security_group.bastion", + "data.aws_subnet.private-a", "data.aws_vpc.this" ] } @@ -713,7 +709,7 @@ "schema_version": 1, "attributes": { "ami": "ami-03f3bb80e24b71cd8", - "arn": "arn:aws:ec2:eu-west-3:920373009484:instance/i-02e813c204183c9ab", + "arn": "arn:aws:ec2:eu-west-3:920373009484:instance/i-0d38a82ef96bf25c8", "associate_public_ip_address": false, "availability_zone": "eu-west-3a", "capacity_reservation_specification": [ @@ -752,7 +748,7 @@ "host_id": "", "host_resource_group_arn": null, "iam_instance_profile": "", - "id": "i-02e813c204183c9ab", + "id": "i-0d38a82ef96bf25c8", "instance_initiated_shutdown_behavior": "stop", "instance_lifecycle": "", "instance_market_options": [], @@ -782,8 +778,8 @@ "password_data": "", "placement_group": "", "placement_partition_number": 0, - "primary_network_interface_id": "eni-0ac8c529a1deb3ebb", - "private_dns": "ip-10-0-35-59.eu-west-3.compute.internal", + "primary_network_interface_id": "eni-048525466703b6e30", + "private_dns": "ip-10-0-1-17.eu-west-3.compute.internal", "private_dns_name_options": [ { "enable_resource_name_dns_a_record": false, @@ -791,7 +787,7 @@ "hostname_type": "ip-name" } ], - "private_ip": "10.0.35.59", + "private_ip": "10.0.1.17", "public_dns": "", "public_ip": "", "root_block_device": [ @@ -804,7 +800,7 @@ "tags": {}, "tags_all": {}, "throughput": 0, - "volume_id": "vol-0ef9ef21efc35bacc", + "volume_id": "vol-0fe139030c8af9988", "volume_size": 8, "volume_type": "gp2" } @@ -813,7 +809,7 @@ "security_groups": [], "source_dest_check": true, "spot_instance_request_id": "", - "subnet_id": "subnet-063715ef5e9c6cb64", + "subnet_id": "subnet-002aaa6589cef6028", "tags": { "Name": "KENNETHHUGO_DEV_CLIENT_VM" }, @@ -827,7 +823,7 @@ "user_data_replace_on_change": false, "volume_tags": null, "vpc_security_group_ids": [ - "sg-046489925f564ec8c" + "sg-0d8ac4e5a30387e18" ] }, "sensitive_attributes": [], @@ -835,10 +831,9 @@ "dependencies": [ "aws_key_pair.ec2", "aws_security_group.sg_client", - "aws_subnet.private_subnet_a", "data.aws_ami.amazon_linux_2", - "data.aws_availability_zones.available", "data.aws_security_group.bastion", + "data.aws_subnet.private-a", "data.aws_vpc.this" ] } @@ -858,10 +853,10 @@ "id": "kennethhugo_key", "key_name": "kennethhugo_key", "key_name_prefix": "", - "key_pair_id": "key-04e026cd6bf95d78f", + "key_pair_id": "key-0dc72c68c6af39fbb", "key_type": "rsa", "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCdgUoVRIPCQHlBoaz6UfrvQ4gw2sxeV3PIgCmCSXUW+I9beSfrBs4ELbiuUsV33Y8rKRNQBxa60+J0bEwNtIXRARN7bfdVmukoIJ/LBPcj1XzjmcVE4RJCxSRQbiMYnbUG6Ps5m1sMXsGf0WoPuXIsYoRKHa4QtcqSqqm/G/BW4a0Kvwdfww2dYCKhNoniSPAnDGPowQpGzTc3nvO/ED7polY9T1b6kqaw5WSCWic/qUfgJ2Lxn+bus72vgelhqZhFSqJgTL2e3xPmqtmrUO/4U2kjF3YH120syEfvQFIg/PozQqfkupbDPB1Cx7/1ThZLpJT5Dv1I/kCuZQuNNZj7", - "tags": {}, + "tags": null, "tags_all": {} }, "sensitive_attributes": [], @@ -878,10 +873,10 @@ { "schema_version": 1, "attributes": { - "arn": "arn:aws:ec2:eu-west-3:920373009484:security-group/sg-021210d8e4366b0bd", + "arn": "arn:aws:ec2:eu-west-3:920373009484:security-group/sg-0c5ea597dc0f43e11", "description": "ec2 Security Group", "egress": [], - "id": "sg-021210d8e4366b0bd", + "id": "sg-0c5ea597dc0f43e11", "ingress": [], "name": "KENNETHHUGO_SG_EC2", "name_prefix": "", @@ -914,7 +909,7 @@ { "schema_version": 1, "attributes": { - "arn": "arn:aws:ec2:eu-west-3:920373009484:security-group/sg-08abb0531ca48d02b", + "arn": "arn:aws:ec2:eu-west-3:920373009484:security-group/sg-01d8d54afaa2f5990", "description": "Managed by Terraform", "egress": [ { @@ -922,6 +917,32 @@ "0.0.0.0/0" ], "description": "Allow traffic to RDS (5432)", + "from_port": 443, + "ipv6_cidr_blocks": [], + "prefix_list_ids": [], + "protocol": "tcp", + "security_groups": [], + "self": false, + "to_port": 443 + }, + { + "cidr_blocks": [ + "0.0.0.0/0" + ], + "description": "Allow traffic to RDS (5432)", + "from_port": 80, + "ipv6_cidr_blocks": [], + "prefix_list_ids": [], + "protocol": "tcp", + "security_groups": [], + "self": false, + "to_port": 80 + }, + { + "cidr_blocks": [ + "10.0.1.0/24" + ], + "description": "Allow traffic to RDS (5432)", "from_port": 5432, "ipv6_cidr_blocks": [], "prefix_list_ids": [], @@ -931,7 +952,7 @@ "to_port": 5432 } ], - "id": "sg-08abb0531ca48d02b", + "id": "sg-01d8d54afaa2f5990", "ingress": [ { "cidr_blocks": [], @@ -941,8 +962,8 @@ "prefix_list_ids": [], "protocol": "tcp", "security_groups": [ - "sg-046489925f564ec8c", - "sg-0a7ccf14d1b6468fa" + "sg-0a7ccf14d1b6468fa", + "sg-0d8ac4e5a30387e18" ], "self": false, "to_port": 5000 @@ -966,6 +987,7 @@ "dependencies": [ "aws_security_group.sg_client", "data.aws_security_group.bastion", + "data.aws_subnet.private-a", "data.aws_vpc.this" ] } @@ -980,7 +1002,7 @@ { "schema_version": 1, "attributes": { - "arn": "arn:aws:ec2:eu-west-3:920373009484:security-group/sg-046489925f564ec8c", + "arn": "arn:aws:ec2:eu-west-3:920373009484:security-group/sg-0d8ac4e5a30387e18", "description": "Managed by Terraform", "egress": [ { @@ -995,7 +1017,7 @@ "to_port": 80 } ], - "id": "sg-046489925f564ec8c", + "id": "sg-0d8ac4e5a30387e18", "ingress": [ { "cidr_blocks": [], @@ -1042,7 +1064,7 @@ { "schema_version": 1, "attributes": { - "arn": "arn:aws:ec2:eu-west-3:920373009484:security-group/sg-0501c21c134e1b1e5", + "arn": "arn:aws:ec2:eu-west-3:920373009484:security-group/sg-024d12e63d1848aa9", "description": "Managed by Terraform", "egress": [ { @@ -1059,7 +1081,7 @@ "to_port": 0 } ], - "id": "sg-0501c21c134e1b1e5", + "id": "sg-024d12e63d1848aa9", "ingress": [ { "cidr_blocks": [], @@ -1069,7 +1091,7 @@ "prefix_list_ids": [], "protocol": "tcp", "security_groups": [ - "sg-08abb0531ca48d02b", + "sg-01d8d54afaa2f5990", "sg-0a7ccf14d1b6468fa" ], "self": false, @@ -1095,6 +1117,7 @@ "aws_security_group.sg_api", "aws_security_group.sg_client", "data.aws_security_group.bastion", + "data.aws_subnet.private-a", "data.aws_vpc.this" ] } @@ -1112,12 +1135,12 @@ "cidr_blocks": null, "description": null, "from_port": 22, - "id": "sgrule-2888270446", + "id": "sgrule-3761056161", "ipv6_cidr_blocks": null, "prefix_list_ids": null, "protocol": "tcp", - "security_group_id": "sg-021210d8e4366b0bd", - "security_group_rule_id": "sgr-0bd2166515e8bdb08", + "security_group_id": "sg-0c5ea597dc0f43e11", + "security_group_rule_id": "sgr-0b47fae14beb384ea", "self": false, "source_security_group_id": "sg-0a7ccf14d1b6468fa", "timeouts": null, @@ -1146,12 +1169,12 @@ "cidr_blocks": null, "description": "SSH from Bastion to API", "from_port": 22, - "id": "sgrule-922087700", + "id": "sgrule-3893508927", "ipv6_cidr_blocks": null, "prefix_list_ids": null, "protocol": "tcp", - "security_group_id": "sg-08abb0531ca48d02b", - "security_group_rule_id": "sgr-021ea52c24d07985f", + "security_group_id": "sg-01d8d54afaa2f5990", + "security_group_rule_id": "sgr-09515b862f42d0f70", "self": false, "source_security_group_id": "sg-0a7ccf14d1b6468fa", "timeouts": null, @@ -1164,98 +1187,7 @@ "aws_security_group.sg_api", "aws_security_group.sg_client", "data.aws_security_group.bastion", - "data.aws_vpc.this" - ] - } - ] - }, - { - "mode": "managed", - "type": "aws_subnet", - "name": "private_subnet_a", - "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", - "instances": [ - { - "schema_version": 1, - "attributes": { - "arn": "arn:aws:ec2:eu-west-3:920373009484:subnet/subnet-063715ef5e9c6cb64", - "assign_ipv6_address_on_creation": false, - "availability_zone": "eu-west-3a", - "availability_zone_id": "euw3-az1", - "cidr_block": "10.0.35.0/24", - "customer_owned_ipv4_pool": "", - "enable_dns64": false, - "enable_lni_at_device_index": 0, - "enable_resource_name_dns_a_record_on_launch": false, - "enable_resource_name_dns_aaaa_record_on_launch": false, - "id": "subnet-063715ef5e9c6cb64", - "ipv6_cidr_block": "", - "ipv6_cidr_block_association_id": "", - "ipv6_native": false, - "map_customer_owned_ip_on_launch": false, - "map_public_ip_on_launch": false, - "outpost_arn": "", - "owner_id": "920373009484", - "private_dns_hostname_type_on_launch": "ip-name", - "tags": { - "Name": "KENNETHHUGO_DEV_PRIVATE_SUBNET_A" - }, - "tags_all": { - "Name": "KENNETHHUGO_DEV_PRIVATE_SUBNET_A" - }, - "timeouts": null, - "vpc_id": "vpc-08da87242304c9723" - }, - "sensitive_attributes": [], - "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6MTIwMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMSJ9", - "dependencies": [ - "data.aws_availability_zones.available", - "data.aws_vpc.this" - ] - } - ] - }, - { - "mode": "managed", - "type": "aws_subnet", - "name": "private_subnet_b", - "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", - "instances": [ - { - "schema_version": 1, - "attributes": { - "arn": "arn:aws:ec2:eu-west-3:920373009484:subnet/subnet-0052f34d50c7c6db5", - "assign_ipv6_address_on_creation": false, - "availability_zone": "eu-west-3b", - "availability_zone_id": "euw3-az2", - "cidr_block": "10.0.36.0/24", - "customer_owned_ipv4_pool": "", - "enable_dns64": false, - "enable_lni_at_device_index": 0, - "enable_resource_name_dns_a_record_on_launch": false, - "enable_resource_name_dns_aaaa_record_on_launch": false, - "id": "subnet-0052f34d50c7c6db5", - "ipv6_cidr_block": "", - "ipv6_cidr_block_association_id": "", - "ipv6_native": false, - "map_customer_owned_ip_on_launch": false, - "map_public_ip_on_launch": true, - "outpost_arn": "", - "owner_id": "920373009484", - "private_dns_hostname_type_on_launch": "ip-name", - "tags": { - "Name": "KENNETHHUGO_DEV_PRIVATE_SUBNET_B" - }, - "tags_all": { - "Name": "KENNETHHUGO_DEV_PRIVATE_SUBNET_B" - }, - "timeouts": null, - "vpc_id": "vpc-08da87242304c9723" - }, - "sensitive_attributes": [], - "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6MTIwMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMSJ9", - "dependencies": [ - "data.aws_availability_zones.available", + "data.aws_subnet.private-a", "data.aws_vpc.this" ] } diff --git a/terraform_VPC/terraform.tfstate.d/DEV/terraform.tfstate.backup b/terraform_VPC/terraform.tfstate.d/DEV/terraform.tfstate.backup index efea968..53997bd 100644 --- a/terraform_VPC/terraform.tfstate.d/DEV/terraform.tfstate.backup +++ b/terraform_VPC/terraform.tfstate.d/DEV/terraform.tfstate.backup @@ -1,1114 +1,9 @@ { "version": 4, "terraform_version": "1.10.5", - "serial": 108, + "serial": 228, "lineage": "eded4345-a67f-9a4a-9ad8-c68c205f47c2", "outputs": {}, - "resources": [ - { - "mode": "data", - "type": "aws_ami", - "name": "amazon_linux_2", - "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", - "instances": [ - { - "schema_version": 0, - "attributes": { - "architecture": "x86_64", - "arn": "arn:aws:ec2:eu-west-3::image/ami-03f3bb80e24b71cd8", - "block_device_mappings": [ - { - "device_name": "/dev/xvda", - "ebs": { - "delete_on_termination": "true", - "encrypted": "false", - "iops": "0", - "snapshot_id": "snap-07655f7a65903bcc5", - "throughput": "0", - "volume_size": "8", - "volume_type": "gp2" - }, - "no_device": "", - "virtual_name": "" - } - ], - "boot_mode": "", - "creation_date": "2025-01-23T03:26:36.000Z", - "deprecation_time": "2025-07-01T00:00:00.000Z", - "description": "Amazon Linux 2 AMI 2.0.20250123.4 x86_64 HVM gp2", - "ena_support": true, - "executable_users": null, - "filter": [ - { - "name": "name", - "values": [ - "amzn2-ami-hvm*" - ] - }, - { - "name": "owner-alias", - "values": [ - "amazon" - ] - } - ], - "hypervisor": "xen", - "id": "ami-03f3bb80e24b71cd8", - "image_id": "ami-03f3bb80e24b71cd8", - "image_location": "amazon/amzn2-ami-hvm-2.0.20250123.4-x86_64-gp2", - "image_owner_alias": "amazon", - "image_type": "machine", - "imds_support": "", - "include_deprecated": false, - "kernel_id": "", - "most_recent": true, - "name": "amzn2-ami-hvm-2.0.20250123.4-x86_64-gp2", - "name_regex": null, - "owner_id": "137112412989", - "owners": null, - "platform": "", - "platform_details": "Linux/UNIX", - "product_codes": [], - "public": true, - "ramdisk_id": "", - "root_device_name": "/dev/xvda", - "root_device_type": "ebs", - "root_snapshot_id": "snap-07655f7a65903bcc5", - "sriov_net_support": "simple", - "state": "available", - "state_reason": { - "code": "UNSET", - "message": "UNSET" - }, - "tags": {}, - "timeouts": null, - "tpm_support": "", - "uefi_data": null, - "usage_operation": "RunInstances", - "virtualization_type": "hvm" - }, - "sensitive_attributes": [] - } - ] - }, - { - "mode": "data", - "type": "aws_availability_zones", - "name": "available", - "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", - "instances": [ - { - "schema_version": 0, - "attributes": { - "all_availability_zones": null, - "exclude_names": null, - "exclude_zone_ids": null, - "filter": null, - "group_names": [ - "eu-west-3-zg-1" - ], - "id": "eu-west-3", - "names": [ - "eu-west-3a", - "eu-west-3b", - "eu-west-3c" - ], - "state": "available", - "timeouts": null, - "zone_ids": [ - "euw3-az1", - "euw3-az2", - "euw3-az3" - ] - }, - "sensitive_attributes": [] - } - ] - }, - { - "mode": "data", - "type": "aws_security_group", - "name": "bastion", - "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", - "instances": [ - { - "schema_version": 0, - "attributes": { - "arn": "arn:aws:ec2:eu-west-3:920373009484:security-group/sg-0a7ccf14d1b6468fa", - "description": "ec2 Security Group", - "filter": [ - { - "name": "tag:Name", - "values": [ - "SG_BASTION_EC2" - ] - } - ], - "id": "sg-0a7ccf14d1b6468fa", - "name": "SG_BASTION_EC2", - "tags": { - "Name": "SG_BASTION_EC2" - }, - "timeouts": null, - "vpc_id": "vpc-08da87242304c9723" - }, - "sensitive_attributes": [] - } - ] - }, - { - "mode": "data", - "type": "aws_subnet", - "name": "private-a", - "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", - "instances": [ - { - "schema_version": 0, - "attributes": { - "arn": "arn:aws:ec2:eu-west-3:920373009484:subnet/subnet-002aaa6589cef6028", - "assign_ipv6_address_on_creation": false, - "availability_zone": "eu-west-3a", - "availability_zone_id": "euw3-az1", - "available_ip_address_count": 241, - "cidr_block": "10.0.1.0/24", - "customer_owned_ipv4_pool": "", - "default_for_az": false, - "enable_dns64": false, - "enable_lni_at_device_index": 0, - "enable_resource_name_dns_a_record_on_launch": false, - "enable_resource_name_dns_aaaa_record_on_launch": false, - "filter": [ - { - "name": "tag:Name", - "values": [ - "PRIVATE_SUBNET_A" - ] - } - ], - "id": "subnet-002aaa6589cef6028", - "ipv6_cidr_block": "", - "ipv6_cidr_block_association_id": "", - "ipv6_native": false, - "map_customer_owned_ip_on_launch": false, - "map_public_ip_on_launch": false, - "outpost_arn": "", - "owner_id": "920373009484", - "private_dns_hostname_type_on_launch": "ip-name", - "state": "available", - "tags": { - "Name": "PRIVATE_SUBNET_A", - "Private": "yes" - }, - "timeouts": null, - "vpc_id": "vpc-08da87242304c9723" - }, - "sensitive_attributes": [] - } - ] - }, - { - "mode": "data", - "type": "aws_subnet", - "name": "private-b", - "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", - "instances": [ - { - "schema_version": 0, - "attributes": { - "arn": "arn:aws:ec2:eu-west-3:920373009484:subnet/subnet-0fc06a60f4305264c", - "assign_ipv6_address_on_creation": false, - "availability_zone": "eu-west-3b", - "availability_zone_id": "euw3-az2", - "available_ip_address_count": 246, - "cidr_block": "10.0.2.0/24", - "customer_owned_ipv4_pool": "", - "default_for_az": false, - "enable_dns64": false, - "enable_lni_at_device_index": 0, - "enable_resource_name_dns_a_record_on_launch": false, - "enable_resource_name_dns_aaaa_record_on_launch": false, - "filter": [ - { - "name": "tag:Name", - "values": [ - "PRIVATE_SUBNET_B" - ] - } - ], - "id": "subnet-0fc06a60f4305264c", - "ipv6_cidr_block": "", - "ipv6_cidr_block_association_id": "", - "ipv6_native": false, - "map_customer_owned_ip_on_launch": false, - "map_public_ip_on_launch": false, - "outpost_arn": "", - "owner_id": "920373009484", - "private_dns_hostname_type_on_launch": "ip-name", - "state": "available", - "tags": { - "Name": "PRIVATE_SUBNET_B", - "Private": "yes" - }, - "timeouts": null, - "vpc_id": "vpc-08da87242304c9723" - }, - "sensitive_attributes": [] - } - ] - }, - { - "mode": "data", - "type": "aws_subnet", - "name": "public", - "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", - "instances": [ - { - "schema_version": 0, - "attributes": { - "arn": "arn:aws:ec2:eu-west-3:920373009484:subnet/subnet-0d9d21b769bca92d7", - "assign_ipv6_address_on_creation": false, - "availability_zone": "eu-west-3a", - "availability_zone_id": "euw3-az1", - "available_ip_address_count": 248, - "cidr_block": "10.0.0.0/24", - "customer_owned_ipv4_pool": "", - "default_for_az": false, - "enable_dns64": false, - "enable_lni_at_device_index": 0, - "enable_resource_name_dns_a_record_on_launch": false, - "enable_resource_name_dns_aaaa_record_on_launch": false, - "filter": [ - { - "name": "tag:Name", - "values": [ - "PUBLIC_SUBNET" - ] - } - ], - "id": "subnet-0d9d21b769bca92d7", - "ipv6_cidr_block": "", - "ipv6_cidr_block_association_id": "", - "ipv6_native": false, - "map_customer_owned_ip_on_launch": false, - "map_public_ip_on_launch": false, - "outpost_arn": "", - "owner_id": "920373009484", - "private_dns_hostname_type_on_launch": "ip-name", - "state": "available", - "tags": { - "Name": "PUBLIC_SUBNET", - "Private": "no" - }, - "timeouts": null, - "vpc_id": "vpc-08da87242304c9723" - }, - "sensitive_attributes": [] - } - ] - }, - { - "mode": "data", - "type": "aws_vpc", - "name": "this", - "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", - "instances": [ - { - "schema_version": 0, - "attributes": { - "arn": "arn:aws:ec2:eu-west-3:920373009484:vpc/vpc-08da87242304c9723", - "cidr_block": "10.0.0.0/16", - "cidr_block_associations": [ - { - "association_id": "vpc-cidr-assoc-0fd519069ef9f4ba9", - "cidr_block": "10.0.0.0/16", - "state": "associated" - } - ], - "default": false, - "dhcp_options_id": "dopt-06fac3b0fae017c99", - "enable_dns_hostnames": false, - "enable_dns_support": true, - "enable_network_address_usage_metrics": false, - "filter": [ - { - "name": "tag:Name", - "values": [ - "VPC" - ] - } - ], - "id": "vpc-08da87242304c9723", - "instance_tenancy": "default", - "ipv6_association_id": "", - "ipv6_cidr_block": "", - "main_route_table_id": "rtb-06b8cc99d46258d59", - "owner_id": "920373009484", - "state": null, - "tags": { - "Name": "VPC" - }, - "timeouts": null - }, - "sensitive_attributes": [] - } - ] - }, - { - "mode": "managed", - "type": "aws_db_instance", - "name": "mydb", - "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", - "instances": [ - { - "schema_version": 2, - "attributes": { - "address": "kennethhugo-dev-rds-instance.cx4q20s8stp5.eu-west-3.rds.amazonaws.com", - "allocated_storage": 5, - "allow_major_version_upgrade": null, - "apply_immediately": false, - "arn": "arn:aws:rds:eu-west-3:920373009484:db:kennethhugo-dev-rds-instance", - "auto_minor_version_upgrade": true, - "availability_zone": "eu-west-3a", - "backup_retention_period": 0, - "backup_target": "region", - "backup_window": "08:12-08:42", - "blue_green_update": [], - "ca_cert_identifier": "rds-ca-rsa2048-g1", - "character_set_name": "", - "copy_tags_to_snapshot": false, - "custom_iam_instance_profile": "", - "customer_owned_ip_enabled": false, - "db_name": "mydb_HK", - "db_subnet_group_name": "kennethhugo_dev_rds_subnet_group", - "dedicated_log_volume": false, - "delete_automated_backups": true, - "deletion_protection": false, - "domain": "", - "domain_auth_secret_arn": "", - "domain_dns_ips": [], - "domain_fqdn": "", - "domain_iam_role_name": "", - "domain_ou": "", - "enabled_cloudwatch_logs_exports": [], - "endpoint": "kennethhugo-dev-rds-instance.cx4q20s8stp5.eu-west-3.rds.amazonaws.com:5432", - "engine": "postgres", - "engine_lifecycle_support": "open-source-rds-extended-support", - "engine_version": "14.15", - "engine_version_actual": "14.15", - "final_snapshot_identifier": null, - "hosted_zone_id": "ZMESEXB7ZGGQ3", - "iam_database_authentication_enabled": false, - "id": "db-OVJD44ND4UJCBJPN7LPVEZT6CE", - "identifier": "kennethhugo-dev-rds-instance", - "identifier_prefix": "", - "instance_class": "db.t3.micro", - "iops": 0, - "kms_key_id": "", - "latest_restorable_time": "", - "license_model": "postgresql-license", - "listener_endpoint": [], - "maintenance_window": "sun:05:13-sun:05:43", - "manage_master_user_password": null, - "master_user_secret": [], - "master_user_secret_kms_key_id": null, - "max_allocated_storage": 0, - "monitoring_interval": 0, - "monitoring_role_arn": "", - "multi_az": false, - "nchar_character_set_name": "", - "network_type": "IPV4", - "option_group_name": "default:postgres-14", - "parameter_group_name": "default.postgres14", - "password": "mysecretpassword", - "performance_insights_enabled": false, - "performance_insights_kms_key_id": "", - "performance_insights_retention_period": 0, - "port": 5432, - "publicly_accessible": false, - "replica_mode": "", - "replicas": [], - "replicate_source_db": "", - "resource_id": "db-OVJD44ND4UJCBJPN7LPVEZT6CE", - "restore_to_point_in_time": [], - "s3_import": [], - "skip_final_snapshot": true, - "snapshot_identifier": null, - "status": "available", - "storage_encrypted": false, - "storage_throughput": 0, - "storage_type": "gp2", - "tags": { - "Name": "KENNETHHUGO_DEV_RDS_INSTANCE" - }, - "tags_all": { - "Name": "KENNETHHUGO_DEV_RDS_INSTANCE" - }, - "timeouts": null, - "timezone": "", - "upgrade_storage_config": null, - "username": "postgres", - "vpc_security_group_ids": [ - "sg-0501c21c134e1b1e5" - ] - }, - "sensitive_attributes": [ - [ - { - "type": "get_attr", - "value": "password" - } - ] - ], - "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjozMDAwMDAwMDAwMDAwLCJkZWxldGUiOjM2MDAwMDAwMDAwMDAsInVwZGF0ZSI6NDgwMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMiJ9", - "dependencies": [ - "aws_db_subnet_group.this", - "aws_security_group.sg_api", - "aws_security_group.sg_client", - "aws_security_group.sg_rds", - "aws_subnet.private_subnet_a", - "aws_subnet.private_subnet_b", - "data.aws_availability_zones.available", - "data.aws_security_group.bastion", - "data.aws_vpc.this" - ] - } - ] - }, - { - "mode": "managed", - "type": "aws_db_subnet_group", - "name": "this", - "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", - "instances": [ - { - "schema_version": 0, - "attributes": { - "arn": "arn:aws:rds:eu-west-3:920373009484:subgrp:kennethhugo_dev_rds_subnet_group", - "description": "Managed by Terraform", - "id": "kennethhugo_dev_rds_subnet_group", - "name": "kennethhugo_dev_rds_subnet_group", - "name_prefix": "", - "subnet_ids": [ - "subnet-0052f34d50c7c6db5", - "subnet-063715ef5e9c6cb64" - ], - "supported_network_types": [ - "IPV4" - ], - "tags": { - "Name": "KENNETHHUGO_DEV_RDS_SUBNET_GROUP" - }, - "tags_all": { - "Name": "KENNETHHUGO_DEV_RDS_SUBNET_GROUP" - }, - "vpc_id": "vpc-08da87242304c9723" - }, - "sensitive_attributes": [], - "private": "bnVsbA==", - "dependencies": [ - "aws_subnet.private_subnet_a", - "aws_subnet.private_subnet_b", - "data.aws_availability_zones.available", - "data.aws_vpc.this" - ] - } - ] - }, - { - "mode": "managed", - "type": "aws_instance", - "name": "api", - "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", - "instances": [ - { - "schema_version": 1, - "attributes": { - "ami": "ami-03f3bb80e24b71cd8", - "arn": "arn:aws:ec2:eu-west-3:920373009484:instance/i-04e9a490e913eb4aa", - "associate_public_ip_address": false, - "availability_zone": "eu-west-3a", - "capacity_reservation_specification": [ - { - "capacity_reservation_preference": "open", - "capacity_reservation_target": [] - } - ], - "cpu_core_count": 1, - "cpu_options": [ - { - "amd_sev_snp": "", - "core_count": 1, - "threads_per_core": 1 - } - ], - "cpu_threads_per_core": 1, - "credit_specification": [ - { - "cpu_credits": "standard" - } - ], - "disable_api_stop": false, - "disable_api_termination": false, - "ebs_block_device": [], - "ebs_optimized": false, - "enable_primary_ipv6": null, - "enclave_options": [ - { - "enabled": false - } - ], - "ephemeral_block_device": [], - "get_password_data": false, - "hibernation": false, - "host_id": "", - "host_resource_group_arn": null, - "iam_instance_profile": "", - "id": "i-04e9a490e913eb4aa", - "instance_initiated_shutdown_behavior": "stop", - "instance_lifecycle": "", - "instance_market_options": [], - "instance_state": "running", - "instance_type": "t2.micro", - "ipv6_address_count": 0, - "ipv6_addresses": [], - "key_name": "kennethhugo_key", - "launch_template": [], - "maintenance_options": [ - { - "auto_recovery": "default" - } - ], - "metadata_options": [ - { - "http_endpoint": "enabled", - "http_protocol_ipv6": "disabled", - "http_put_response_hop_limit": 1, - "http_tokens": "optional", - "instance_metadata_tags": "disabled" - } - ], - "monitoring": false, - "network_interface": [], - "outpost_arn": "", - "password_data": "", - "placement_group": "", - "placement_partition_number": 0, - "primary_network_interface_id": "eni-043877caa26c09fd3", - "private_dns": "ip-10-0-35-75.eu-west-3.compute.internal", - "private_dns_name_options": [ - { - "enable_resource_name_dns_a_record": false, - "enable_resource_name_dns_aaaa_record": false, - "hostname_type": "ip-name" - } - ], - "private_ip": "10.0.35.75", - "public_dns": "", - "public_ip": "", - "root_block_device": [ - { - "delete_on_termination": true, - "device_name": "/dev/xvda", - "encrypted": false, - "iops": 100, - "kms_key_id": "", - "tags": {}, - "tags_all": {}, - "throughput": 0, - "volume_id": "vol-0018f0ca34c3fd476", - "volume_size": 8, - "volume_type": "gp2" - } - ], - "secondary_private_ips": [], - "security_groups": [], - "source_dest_check": true, - "spot_instance_request_id": "", - "subnet_id": "subnet-063715ef5e9c6cb64", - "tags": { - "Name": "KENNETHHUGO_DEV_API_VM" - }, - "tags_all": { - "Name": "KENNETHHUGO_DEV_API_VM" - }, - "tenancy": "default", - "timeouts": null, - "user_data": null, - "user_data_base64": null, - "user_data_replace_on_change": false, - "volume_tags": null, - "vpc_security_group_ids": [ - "sg-08abb0531ca48d02b" - ] - }, - "sensitive_attributes": [], - "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6MTIwMDAwMDAwMDAwMCwicmVhZCI6OTAwMDAwMDAwMDAwLCJ1cGRhdGUiOjYwMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMSJ9", - "dependencies": [ - "aws_key_pair.ec2", - "aws_security_group.sg_api", - "aws_security_group.sg_client", - "aws_subnet.private_subnet_a", - "data.aws_ami.amazon_linux_2", - "data.aws_availability_zones.available", - "data.aws_security_group.bastion", - "data.aws_vpc.this" - ] - } - ] - }, - { - "mode": "managed", - "type": "aws_instance", - "name": "client", - "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", - "instances": [ - { - "schema_version": 1, - "attributes": { - "ami": "ami-03f3bb80e24b71cd8", - "arn": "arn:aws:ec2:eu-west-3:920373009484:instance/i-02e813c204183c9ab", - "associate_public_ip_address": false, - "availability_zone": "eu-west-3a", - "capacity_reservation_specification": [ - { - "capacity_reservation_preference": "open", - "capacity_reservation_target": [] - } - ], - "cpu_core_count": 1, - "cpu_options": [ - { - "amd_sev_snp": "", - "core_count": 1, - "threads_per_core": 1 - } - ], - "cpu_threads_per_core": 1, - "credit_specification": [ - { - "cpu_credits": "standard" - } - ], - "disable_api_stop": false, - "disable_api_termination": false, - "ebs_block_device": [], - "ebs_optimized": false, - "enable_primary_ipv6": null, - "enclave_options": [ - { - "enabled": false - } - ], - "ephemeral_block_device": [], - "get_password_data": false, - "hibernation": false, - "host_id": "", - "host_resource_group_arn": null, - "iam_instance_profile": "", - "id": "i-02e813c204183c9ab", - "instance_initiated_shutdown_behavior": "stop", - "instance_lifecycle": "", - "instance_market_options": [], - "instance_state": "running", - "instance_type": "t2.micro", - "ipv6_address_count": 0, - "ipv6_addresses": [], - "key_name": "kennethhugo_key", - "launch_template": [], - "maintenance_options": [ - { - "auto_recovery": "default" - } - ], - "metadata_options": [ - { - "http_endpoint": "enabled", - "http_protocol_ipv6": "disabled", - "http_put_response_hop_limit": 1, - "http_tokens": "optional", - "instance_metadata_tags": "disabled" - } - ], - "monitoring": false, - "network_interface": [], - "outpost_arn": "", - "password_data": "", - "placement_group": "", - "placement_partition_number": 0, - "primary_network_interface_id": "eni-0ac8c529a1deb3ebb", - "private_dns": "ip-10-0-35-59.eu-west-3.compute.internal", - "private_dns_name_options": [ - { - "enable_resource_name_dns_a_record": false, - "enable_resource_name_dns_aaaa_record": false, - "hostname_type": "ip-name" - } - ], - "private_ip": "10.0.35.59", - "public_dns": "", - "public_ip": "", - "root_block_device": [ - { - "delete_on_termination": true, - "device_name": "/dev/xvda", - "encrypted": false, - "iops": 100, - "kms_key_id": "", - "tags": {}, - "tags_all": {}, - "throughput": 0, - "volume_id": "vol-0ef9ef21efc35bacc", - "volume_size": 8, - "volume_type": "gp2" - } - ], - "secondary_private_ips": [], - "security_groups": [], - "source_dest_check": true, - "spot_instance_request_id": "", - "subnet_id": "subnet-063715ef5e9c6cb64", - "tags": { - "Name": "KENNETHHUGO_DEV_CLIENT_VM" - }, - "tags_all": { - "Name": "KENNETHHUGO_DEV_CLIENT_VM" - }, - "tenancy": "default", - "timeouts": null, - "user_data": null, - "user_data_base64": null, - "user_data_replace_on_change": false, - "volume_tags": null, - "vpc_security_group_ids": [ - "sg-046489925f564ec8c" - ] - }, - "sensitive_attributes": [], - "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6MTIwMDAwMDAwMDAwMCwicmVhZCI6OTAwMDAwMDAwMDAwLCJ1cGRhdGUiOjYwMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMSJ9", - "dependencies": [ - "aws_key_pair.ec2", - "aws_security_group.sg_client", - "aws_subnet.private_subnet_a", - "data.aws_ami.amazon_linux_2", - "data.aws_availability_zones.available", - "data.aws_security_group.bastion", - "data.aws_vpc.this" - ] - } - ] - }, - { - "mode": "managed", - "type": "aws_key_pair", - "name": "ec2", - "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", - "instances": [ - { - "schema_version": 1, - "attributes": { - "arn": "arn:aws:ec2:eu-west-3:920373009484:key-pair/kennethhugo_key", - "fingerprint": "a0:93:64:56:10:f9:c5:24:e8:83:68:f5:4f:db:83:fd", - "id": "kennethhugo_key", - "key_name": "kennethhugo_key", - "key_name_prefix": "", - "key_pair_id": "key-04e026cd6bf95d78f", - "key_type": "rsa", - "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCdgUoVRIPCQHlBoaz6UfrvQ4gw2sxeV3PIgCmCSXUW+I9beSfrBs4ELbiuUsV33Y8rKRNQBxa60+J0bEwNtIXRARN7bfdVmukoIJ/LBPcj1XzjmcVE4RJCxSRQbiMYnbUG6Ps5m1sMXsGf0WoPuXIsYoRKHa4QtcqSqqm/G/BW4a0Kvwdfww2dYCKhNoniSPAnDGPowQpGzTc3nvO/ED7polY9T1b6kqaw5WSCWic/qUfgJ2Lxn+bus72vgelhqZhFSqJgTL2e3xPmqtmrUO/4U2kjF3YH120syEfvQFIg/PozQqfkupbDPB1Cx7/1ThZLpJT5Dv1I/kCuZQuNNZj7", - "tags": null, - "tags_all": {} - }, - "sensitive_attributes": [], - "private": "eyJzY2hlbWFfdmVyc2lvbiI6IjEifQ==" - } - ] - }, - { - "mode": "managed", - "type": "aws_security_group", - "name": "sg_api", - "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", - "instances": [ - { - "schema_version": 1, - "attributes": { - "arn": "arn:aws:ec2:eu-west-3:920373009484:security-group/sg-08abb0531ca48d02b", - "description": "Managed by Terraform", - "egress": [ - { - "cidr_blocks": [ - "0.0.0.0/0" - ], - "description": "Allow traffic to RDS (5432)", - "from_port": 5432, - "ipv6_cidr_blocks": [], - "prefix_list_ids": [], - "protocol": "tcp", - "security_groups": [], - "self": false, - "to_port": 5432 - } - ], - "id": "sg-08abb0531ca48d02b", - "ingress": [ - { - "cidr_blocks": [], - "description": "Allow API requests from client", - "from_port": 5000, - "ipv6_cidr_blocks": [], - "prefix_list_ids": [], - "protocol": "tcp", - "security_groups": [ - "sg-046489925f564ec8c", - "sg-0a7ccf14d1b6468fa" - ], - "self": false, - "to_port": 5000 - } - ], - "name": "KENNETHHUGO_DEV_SG_API", - "name_prefix": "", - "owner_id": "920373009484", - "revoke_rules_on_delete": false, - "tags": { - "Name": "KENNETHHUGO_DEV_SG_API" - }, - "tags_all": { - "Name": "KENNETHHUGO_DEV_SG_API" - }, - "timeouts": null, - "vpc_id": "vpc-08da87242304c9723" - }, - "sensitive_attributes": [], - "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6OTAwMDAwMDAwMDAwfSwic2NoZW1hX3ZlcnNpb24iOiIxIn0=", - "dependencies": [ - "aws_security_group.sg_client", - "data.aws_security_group.bastion", - "data.aws_vpc.this" - ] - } - ] - }, - { - "mode": "managed", - "type": "aws_security_group", - "name": "sg_client", - "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", - "instances": [ - { - "schema_version": 1, - "attributes": { - "arn": "arn:aws:ec2:eu-west-3:920373009484:security-group/sg-046489925f564ec8c", - "description": "Managed by Terraform", - "egress": [ - { - "cidr_blocks": [], - "description": "", - "from_port": 80, - "ipv6_cidr_blocks": [], - "prefix_list_ids": [], - "protocol": "tcp", - "security_groups": [], - "self": false, - "to_port": 80 - } - ], - "id": "sg-046489925f564ec8c", - "ingress": [ - { - "cidr_blocks": [], - "description": "Allow HTTP from anywhere", - "from_port": 80, - "ipv6_cidr_blocks": [], - "prefix_list_ids": [], - "protocol": "tcp", - "security_groups": [ - "sg-0a7ccf14d1b6468fa" - ], - "self": false, - "to_port": 80 - } - ], - "name": "KENNETHHUGO_DEV_SG_CLIENT", - "name_prefix": "", - "owner_id": "920373009484", - "revoke_rules_on_delete": false, - "tags": { - "Name": "KENNETHHUGO_DEV_SG_CLIENT" - }, - "tags_all": { - "Name": "KENNETHHUGO_DEV_SG_CLIENT" - }, - "timeouts": null, - "vpc_id": "vpc-08da87242304c9723" - }, - "sensitive_attributes": [], - "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6OTAwMDAwMDAwMDAwfSwic2NoZW1hX3ZlcnNpb24iOiIxIn0=", - "dependencies": [ - "data.aws_security_group.bastion", - "data.aws_vpc.this" - ] - } - ] - }, - { - "mode": "managed", - "type": "aws_security_group", - "name": "sg_rds", - "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", - "instances": [ - { - "schema_version": 1, - "attributes": { - "arn": "arn:aws:ec2:eu-west-3:920373009484:security-group/sg-0501c21c134e1b1e5", - "description": "Managed by Terraform", - "egress": [ - { - "cidr_blocks": [ - "0.0.0.0/0" - ], - "description": "", - "from_port": 0, - "ipv6_cidr_blocks": [], - "prefix_list_ids": [], - "protocol": "-1", - "security_groups": [], - "self": false, - "to_port": 0 - } - ], - "id": "sg-0501c21c134e1b1e5", - "ingress": [ - { - "cidr_blocks": [], - "description": "Allow Postgres from API", - "from_port": 5432, - "ipv6_cidr_blocks": [], - "prefix_list_ids": [], - "protocol": "tcp", - "security_groups": [ - "sg-08abb0531ca48d02b", - "sg-0a7ccf14d1b6468fa" - ], - "self": false, - "to_port": 5432 - } - ], - "name": "KENNETHHUGO_DEV_SG_RDS", - "name_prefix": "", - "owner_id": "920373009484", - "revoke_rules_on_delete": false, - "tags": { - "Name": "KENNETHHUGO_DEV_SG_RDS" - }, - "tags_all": { - "Name": "KENNETHHUGO_DEV_SG_RDS" - }, - "timeouts": null, - "vpc_id": "vpc-08da87242304c9723" - }, - "sensitive_attributes": [], - "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6OTAwMDAwMDAwMDAwfSwic2NoZW1hX3ZlcnNpb24iOiIxIn0=", - "dependencies": [ - "aws_security_group.sg_api", - "aws_security_group.sg_client", - "data.aws_security_group.bastion", - "data.aws_vpc.this" - ] - } - ] - }, - { - "mode": "managed", - "type": "aws_subnet", - "name": "private_subnet_a", - "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", - "instances": [ - { - "schema_version": 1, - "attributes": { - "arn": "arn:aws:ec2:eu-west-3:920373009484:subnet/subnet-063715ef5e9c6cb64", - "assign_ipv6_address_on_creation": false, - "availability_zone": "eu-west-3a", - "availability_zone_id": "euw3-az1", - "cidr_block": "10.0.35.0/24", - "customer_owned_ipv4_pool": "", - "enable_dns64": false, - "enable_lni_at_device_index": 0, - "enable_resource_name_dns_a_record_on_launch": false, - "enable_resource_name_dns_aaaa_record_on_launch": false, - "id": "subnet-063715ef5e9c6cb64", - "ipv6_cidr_block": "", - "ipv6_cidr_block_association_id": "", - "ipv6_native": false, - "map_customer_owned_ip_on_launch": false, - "map_public_ip_on_launch": false, - "outpost_arn": "", - "owner_id": "920373009484", - "private_dns_hostname_type_on_launch": "ip-name", - "tags": { - "Name": "KENNETHHUGO_DEV_PRIVATE_SUBNET_A" - }, - "tags_all": { - "Name": "KENNETHHUGO_DEV_PRIVATE_SUBNET_A" - }, - "timeouts": null, - "vpc_id": "vpc-08da87242304c9723" - }, - "sensitive_attributes": [], - "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6MTIwMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMSJ9", - "dependencies": [ - "data.aws_availability_zones.available", - "data.aws_vpc.this" - ] - } - ] - }, - { - "mode": "managed", - "type": "aws_subnet", - "name": "private_subnet_b", - "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", - "instances": [ - { - "schema_version": 1, - "attributes": { - "arn": "arn:aws:ec2:eu-west-3:920373009484:subnet/subnet-0052f34d50c7c6db5", - "assign_ipv6_address_on_creation": false, - "availability_zone": "eu-west-3b", - "availability_zone_id": "euw3-az2", - "cidr_block": "10.0.36.0/24", - "customer_owned_ipv4_pool": "", - "enable_dns64": false, - "enable_lni_at_device_index": 0, - "enable_resource_name_dns_a_record_on_launch": false, - "enable_resource_name_dns_aaaa_record_on_launch": false, - "id": "subnet-0052f34d50c7c6db5", - "ipv6_cidr_block": "", - "ipv6_cidr_block_association_id": "", - "ipv6_native": false, - "map_customer_owned_ip_on_launch": false, - "map_public_ip_on_launch": true, - "outpost_arn": "", - "owner_id": "920373009484", - "private_dns_hostname_type_on_launch": "ip-name", - "tags": { - "Name": "KENNETHHUGO_DEV_PRIVATE_SUBNET_B" - }, - "tags_all": { - "Name": "KENNETHHUGO_DEV_PRIVATE_SUBNET_B" - }, - "timeouts": null, - "vpc_id": "vpc-08da87242304c9723" - }, - "sensitive_attributes": [], - "private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjo2MDAwMDAwMDAwMDAsImRlbGV0ZSI6MTIwMDAwMDAwMDAwMH0sInNjaGVtYV92ZXJzaW9uIjoiMSJ9", - "dependencies": [ - "data.aws_availability_zones.available", - "data.aws_vpc.this" - ] - } - ] - } - ], + "resources": [], "check_results": null } -- GitLab