-
Notifications
You must be signed in to change notification settings - Fork 1
Create cost_signal_demo.tf #362
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Created a cost increase example to test infracost
|
🚀 env0 had composed a PR Plan for environment Terraform Example / production : Plan DetailsTerraform used the selected providers to generate the following execution
plan. Resource actions are indicated with the following symbols:
+ create
! update in-place
Terraform will perform the following actions:
# module.scenarios[0].aws_instance.cost_demo[0] will be created
+ resource "aws_instance" "cost_demo" {
+ ami = "ami-012cce9e78c650beb"
+ arn = (known after apply)
+ associate_public_ip_address = (known after apply)
+ availability_zone = (known after apply)
+ cpu_core_count = (known after apply)
+ cpu_threads_per_core = (known after apply)
+ disable_api_stop = (known after apply)
+ disable_api_termination = (known after apply)
+ ebs_optimized = (known after apply)
+ enable_primary_ipv6 = (known after apply)
+ get_password_data = false
+ host_id = (known after apply)
+ host_resource_group_arn = (known after apply)
+ iam_instance_profile = (known after apply)
+ id = (known after apply)
+ instance_initiated_shutdown_behavior = (known after apply)
+ instance_lifecycle = (known after apply)
+ instance_state = (known after apply)
+ instance_type = "t3.xlarge"
+ ipv6_address_count = (known after apply)
+ ipv6_addresses = (known after apply)
+ key_name = (known after apply)
+ monitoring = (known after apply)
+ outpost_arn = (known after apply)
+ password_data = (known after apply)
+ placement_group = (known after apply)
+ placement_partition_number = (known after apply)
+ primary_network_interface_id = (known after apply)
+ private_dns = (known after apply)
+ private_ip = (known after apply)
+ public_dns = (known after apply)
+ public_ip = (known after apply)
+ secondary_private_ips = (known after apply)
+ security_groups = (known after apply)
+ source_dest_check = true
+ spot_instance_request_id = (known after apply)
+ subnet_id = "subnet-09605cfe202ef69e7"
+ tags = {
+ "Environment" = "terraform-example"
+ "Name" = "cost-demo-DO-NOT-MERGE-0"
+ "Purpose" = "cost-signal-demo-TEMPORARY"
+ "Warning" = "DELETE-THIS-BRANCH"
}
+ tags_all = {
+ "Environment" = "terraform-example"
+ "Name" = "cost-demo-DO-NOT-MERGE-0"
+ "Purpose" = "cost-signal-demo-TEMPORARY"
+ "Warning" = "DELETE-THIS-BRANCH"
}
+ tenancy = (known after apply)
+ user_data = (known after apply)
+ user_data_base64 = (known after apply)
+ user_data_replace_on_change = false
+ vpc_security_group_ids = (known after apply)
+ root_block_device {
+ delete_on_termination = true
+ device_name = (known after apply)
+ encrypted = (known after apply)
+ iops = (known after apply)
+ kms_key_id = (known after apply)
+ tags_all = (known after apply)
+ throughput = (known after apply)
+ volume_id = (known after apply)
+ volume_size = 100
+ volume_type = "gp3"
}
}
# module.scenarios[0].aws_instance.cost_demo[1] will be created
+ resource "aws_instance" "cost_demo" {
+ ami = "ami-012cce9e78c650beb"
+ arn = (known after apply)
+ associate_public_ip_address = (known after apply)
+ availability_zone = (known after apply)
+ cpu_core_count = (known after apply)
+ cpu_threads_per_core = (known after apply)
+ disable_api_stop = (known after apply)
+ disable_api_termination = (known after apply)
+ ebs_optimized = (known after apply)
+ enable_primary_ipv6 = (known after apply)
+ get_password_data = false
+ host_id = (known after apply)
+ host_resource_group_arn = (known after apply)
+ iam_instance_profile = (known after apply)
+ id = (known after apply)
+ instance_initiated_shutdown_behavior = (known after apply)
+ instance_lifecycle = (known after apply)
+ instance_state = (known after apply)
+ instance_type = "t3.xlarge"
+ ipv6_address_count = (known after apply)
+ ipv6_addresses = (known after apply)
+ key_name = (known after apply)
+ monitoring = (known after apply)
+ outpost_arn = (known after apply)
+ password_data = (known after apply)
+ placement_group = (known after apply)
+ placement_partition_number = (known after apply)
+ primary_network_interface_id = (known after apply)
+ private_dns = (known after apply)
+ private_ip = (known after apply)
+ public_dns = (known after apply)
+ public_ip = (known after apply)
+ secondary_private_ips = (known after apply)
+ security_groups = (known after apply)
+ source_dest_check = true
+ spot_instance_request_id = (known after apply)
+ subnet_id = "subnet-09605cfe202ef69e7"
+ tags = {
+ "Environment" = "terraform-example"
+ "Name" = "cost-demo-DO-NOT-MERGE-1"
+ "Purpose" = "cost-signal-demo-TEMPORARY"
+ "Warning" = "DELETE-THIS-BRANCH"
}
+ tags_all = {
+ "Environment" = "terraform-example"
+ "Name" = "cost-demo-DO-NOT-MERGE-1"
+ "Purpose" = "cost-signal-demo-TEMPORARY"
+ "Warning" = "DELETE-THIS-BRANCH"
}
+ tenancy = (known after apply)
+ user_data = (known after apply)
+ user_data_base64 = (known after apply)
+ user_data_replace_on_change = false
+ vpc_security_group_ids = (known after apply)
+ root_block_device {
+ delete_on_termination = true
+ device_name = (known after apply)
+ encrypted = (known after apply)
+ iops = (known after apply)
+ kms_key_id = (known after apply)
+ tags_all = (known after apply)
+ throughput = (known after apply)
+ volume_id = (known after apply)
+ volume_size = 100
+ volume_type = "gp3"
}
}
# module.scenarios[0].aws_instance.cost_demo[2] will be created
+ resource "aws_instance" "cost_demo" {
+ ami = "ami-012cce9e78c650beb"
+ arn = (known after apply)
+ associate_public_ip_address = (known after apply)
+ availability_zone = (known after apply)
+ cpu_core_count = (known after apply)
+ cpu_threads_per_core = (known after apply)
+ disable_api_stop = (known after apply)
+ disable_api_termination = (known after apply)
+ ebs_optimized = (known after apply)
+ enable_primary_ipv6 = (known after apply)
+ get_password_data = false
+ host_id = (known after apply)
+ host_resource_group_arn = (known after apply)
+ iam_instance_profile = (known after apply)
+ id = (known after apply)
+ instance_initiated_shutdown_behavior = (known after apply)
+ instance_lifecycle = (known after apply)
+ instance_state = (known after apply)
+ instance_type = "t3.xlarge"
+ ipv6_address_count = (known after apply)
+ ipv6_addresses = (known after apply)
+ key_name = (known after apply)
+ monitoring = (known after apply)
+ outpost_arn = (known after apply)
+ password_data = (known after apply)
+ placement_group = (known after apply)
+ placement_partition_number = (known after apply)
+ primary_network_interface_id = (known after apply)
+ private_dns = (known after apply)
+ private_ip = (known after apply)
+ public_dns = (known after apply)
+ public_ip = (known after apply)
+ secondary_private_ips = (known after apply)
+ security_groups = (known after apply)
+ source_dest_check = true
+ spot_instance_request_id = (known after apply)
+ subnet_id = "subnet-09605cfe202ef69e7"
+ tags = {
+ "Environment" = "terraform-example"
+ "Name" = "cost-demo-DO-NOT-MERGE-2"
+ "Purpose" = "cost-signal-demo-TEMPORARY"
+ "Warning" = "DELETE-THIS-BRANCH"
}
+ tags_all = {
+ "Environment" = "terraform-example"
+ "Name" = "cost-demo-DO-NOT-MERGE-2"
+ "Purpose" = "cost-signal-demo-TEMPORARY"
+ "Warning" = "DELETE-THIS-BRANCH"
}
+ tenancy = (known after apply)
+ user_data = (known after apply)
+ user_data_base64 = (known after apply)
+ user_data_replace_on_change = false
+ vpc_security_group_ids = (known after apply)
+ root_block_device {
+ delete_on_termination = true
+ device_name = (known after apply)
+ encrypted = (known after apply)
+ iops = (known after apply)
+ kms_key_id = (known after apply)
+ tags_all = (known after apply)
+ throughput = (known after apply)
+ volume_id = (known after apply)
+ volume_size = 100
+ volume_type = "gp3"
}
}
# module.scenarios[0].aws_instance.cost_demo[3] will be created
+ resource "aws_instance" "cost_demo" {
+ ami = "ami-012cce9e78c650beb"
+ arn = (known after apply)
+ associate_public_ip_address = (known after apply)
+ availability_zone = (known after apply)
+ cpu_core_count = (known after apply)
+ cpu_threads_per_core = (known after apply)
+ disable_api_stop = (known after apply)
+ disable_api_termination = (known after apply)
+ ebs_optimized = (known after apply)
+ enable_primary_ipv6 = (known after apply)
+ get_password_data = false
+ host_id = (known after apply)
+ host_resource_group_arn = (known after apply)
+ iam_instance_profile = (known after apply)
+ id = (known after apply)
+ instance_initiated_shutdown_behavior = (known after apply)
+ instance_lifecycle = (known after apply)
+ instance_state = (known after apply)
+ instance_type = "t3.xlarge"
+ ipv6_address_count = (known after apply)
+ ipv6_addresses = (known after apply)
+ key_name = (known after apply)
+ monitoring = (known after apply)
+ outpost_arn = (known after apply)
+ password_data = (known after apply)
+ placement_group = (known after apply)
+ placement_partition_number = (known after apply)
+ primary_network_interface_id = (known after apply)
+ private_dns = (known after apply)
+ private_ip = (known after apply)
+ public_dns = (known after apply)
+ public_ip = (known after apply)
+ secondary_private_ips = (known after apply)
+ security_groups = (known after apply)
+ source_dest_check = true
+ spot_instance_request_id = (known after apply)
+ subnet_id = "subnet-09605cfe202ef69e7"
+ tags = {
+ "Environment" = "terraform-example"
+ "Name" = "cost-demo-DO-NOT-MERGE-3"
+ "Purpose" = "cost-signal-demo-TEMPORARY"
+ "Warning" = "DELETE-THIS-BRANCH"
}
+ tags_all = {
+ "Environment" = "terraform-example"
+ "Name" = "cost-demo-DO-NOT-MERGE-3"
+ "Purpose" = "cost-signal-demo-TEMPORARY"
+ "Warning" = "DELETE-THIS-BRANCH"
}
+ tenancy = (known after apply)
+ user_data = (known after apply)
+ user_data_base64 = (known after apply)
+ user_data_replace_on_change = false
+ vpc_security_group_ids = (known after apply)
+ root_block_device {
+ delete_on_termination = true
+ device_name = (known after apply)
+ encrypted = (known after apply)
+ iops = (known after apply)
+ kms_key_id = (known after apply)
+ tags_all = (known after apply)
+ throughput = (known after apply)
+ volume_id = (known after apply)
+ volume_size = 100
+ volume_type = "gp3"
}
}
# module.scenarios[0].aws_rds_cluster.face_database will be updated in-place
! resource "aws_rds_cluster" "face_database" {
id = "facial-recognition-terraform-example"
tags = {}
# (46 unchanged attributes hidden)
# (1 unchanged block hidden)
}
Plan: 4 to add, 1 to change, 0 to destroy.
Cost Estimation DetailsKey: * usage cost, ~ changed, + added, - removed
──────────────────────────────────
Project: overmindtech/terraform-example/env0_tf_plan.json
+ module.scenarios[0].aws_instance.cost_demo[0]
+$147
+ Instance usage (Linux/UNIX, on-demand, t3.xlarge)
+$138
+ root_block_device
+ Storage (general purpose SSD, gp3)
+$9
+ module.scenarios[0].aws_instance.cost_demo[1]
+$147
+ Instance usage (Linux/UNIX, on-demand, t3.xlarge)
+$138
+ root_block_device
+ Storage (general purpose SSD, gp3)
+$9
+ module.scenarios[0].aws_instance.cost_demo[2]
+$147
+ Instance usage (Linux/UNIX, on-demand, t3.xlarge)
+$138
+ root_block_device
+ Storage (general purpose SSD, gp3)
+$9
+ module.scenarios[0].aws_instance.cost_demo[3]
+$147
+ Instance usage (Linux/UNIX, on-demand, t3.xlarge)
+$138
+ root_block_device
+ Storage (general purpose SSD, gp3)
+$9
Monthly cost change for overmindtech/terraform-example/env0_tf_plan.json
Amount: +$588 ($282 → $871)
Percent: +208%
──────────────────────────────────
Key: * usage cost, ~ changed, + added, - removed
*Usage costs can be estimated by updating Infracost Cloud settings, see docs for other options.
124 cloud resources were detected:
∙ 43 were estimated
∙ 79 were free
∙ 2 are not supported yet, see https://infracost.io/requested-resources:
∙ 1 x aws_cloudfront_monitoring_subscription
∙ 1 x aws_cloudwatch_query_definition
Infracost estimate: Monthly estimate increased by $588 ↑
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ Changed project ┃ Baseline cost ┃ Usage cost* ┃ Total change ┃
┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╋━━━━━━━━━━━━━━━╋━━━━━━━━━━━━━╋━━━━━━━━━━━━━━━┫
┃ overmindtech/terraform-example/env0_tf_plan.json ┃ +$588 ┃ - ┃ +$588 (+208%) ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┻━━━━━━━━━━━━━━━┻━━━━━━━━━━━━━┻━━━━━━━━━━━━━━━┛ |
Open in Overmind ↗
🔴 Change SignalsRoutine 🔴 🔥 Risks
🟣 Expected ChangesNote No expected changes found. 🟠 Unmapped Changes+ aws_instance › module.scenarios[0].aws_instance.cost_demo[0]--- current
+++ proposed
@@ -0,0 +1,82 @@
+type: aws_instance
+id: github.com/overmindtech/terraform-example.aws_instance.module.scenarios[0].aws_instance.cost_demo[0]
+attributes:
+ ami: ami-012cce9e78c650beb
+ arn: (known after apply)
+ associate_public_ip_address: (known after apply)
+ availability_zone: (known after apply)
+ capacity_reservation_specification: (known after apply)
+ cpu_core_count: (known after apply)
+ cpu_options: (known after apply)
+ cpu_threads_per_core: (known after apply)
+ disable_api_stop: (known after apply)
+ disable_api_termination: (known after apply)
+ ebs_block_device: (known after apply)
+ ebs_optimized: (known after apply)
+ enable_primary_ipv6: (known after apply)
+ enclave_options: (known after apply)
+ ephemeral_block_device: (known after apply)
+ get_password_data: false
+ hibernation: null
+ host_id: (known after apply)
+ host_resource_group_arn: (known after apply)
+ iam_instance_profile: (known after apply)
+ id: (known after apply)
+ instance_initiated_shutdown_behavior: (known after apply)
+ instance_lifecycle: (known after apply)
+ instance_market_options: (known after apply)
+ instance_state: (known after apply)
+ instance_type: t3.xlarge
+ ipv6_address_count: (known after apply)
+ ipv6_addresses: (known after apply)
+ key_name: (known after apply)
+ maintenance_options: (known after apply)
+ metadata_options: (known after apply)
+ monitoring: (known after apply)
+ network_interface: (known after apply)
+ outpost_arn: (known after apply)
+ password_data: (known after apply)
+ placement_group: (known after apply)
+ placement_partition_number: (known after apply)
+ primary_network_interface_id: (known after apply)
+ private_dns: (known after apply)
+ private_dns_name_options: (known after apply)
+ private_ip: (known after apply)
+ public_dns: (known after apply)
+ public_ip: (known after apply)
+ root_block_device:
+ - delete_on_termination: true
+ device_name: (known after apply)
+ encrypted: (known after apply)
+ iops: (known after apply)
+ kms_key_id: (known after apply)
+ tags: null
+ tags_all: (known after apply)
+ throughput: (known after apply)
+ volume_id: (known after apply)
+ volume_size: 100
+ volume_type: gp3
+ secondary_private_ips: (known after apply)
+ security_groups: (known after apply)
+ source_dest_check: true
+ spot_instance_request_id: (known after apply)
+ subnet_id: subnet-09605cfe202ef69e7
+ tags:
+ Environment: terraform-example
+ Name: cost-demo-DO-NOT-MERGE-0
+ Purpose: cost-signal-demo-TEMPORARY
+ Warning: DELETE-THIS-BRANCH
+ tags_all:
+ Environment: terraform-example
+ Name: cost-demo-DO-NOT-MERGE-0
+ Purpose: cost-signal-demo-TEMPORARY
+ Warning: DELETE-THIS-BRANCH
+ tenancy: (known after apply)
+ terraform_address: module.scenarios[0].aws_instance.cost_demo[0]
+ terraform_name: module.scenarios[0].aws_instance.cost_demo[0]
+ timeouts: null
+ user_data: (known after apply)
+ user_data_base64: (known after apply)
+ user_data_replace_on_change: false
+ volume_tags: null
+ vpc_security_group_ids: (known after apply)
+ aws_instance › module.scenarios[0].aws_instance.cost_demo[1]--- current
+++ proposed
@@ -0,0 +1,82 @@
+type: aws_instance
+id: github.com/overmindtech/terraform-example.aws_instance.module.scenarios[0].aws_instance.cost_demo[1]
+attributes:
+ ami: ami-012cce9e78c650beb
+ arn: (known after apply)
+ associate_public_ip_address: (known after apply)
+ availability_zone: (known after apply)
+ capacity_reservation_specification: (known after apply)
+ cpu_core_count: (known after apply)
+ cpu_options: (known after apply)
+ cpu_threads_per_core: (known after apply)
+ disable_api_stop: (known after apply)
+ disable_api_termination: (known after apply)
+ ebs_block_device: (known after apply)
+ ebs_optimized: (known after apply)
+ enable_primary_ipv6: (known after apply)
+ enclave_options: (known after apply)
+ ephemeral_block_device: (known after apply)
+ get_password_data: false
+ hibernation: null
+ host_id: (known after apply)
+ host_resource_group_arn: (known after apply)
+ iam_instance_profile: (known after apply)
+ id: (known after apply)
+ instance_initiated_shutdown_behavior: (known after apply)
+ instance_lifecycle: (known after apply)
+ instance_market_options: (known after apply)
+ instance_state: (known after apply)
+ instance_type: t3.xlarge
+ ipv6_address_count: (known after apply)
+ ipv6_addresses: (known after apply)
+ key_name: (known after apply)
+ maintenance_options: (known after apply)
+ metadata_options: (known after apply)
+ monitoring: (known after apply)
+ network_interface: (known after apply)
+ outpost_arn: (known after apply)
+ password_data: (known after apply)
+ placement_group: (known after apply)
+ placement_partition_number: (known after apply)
+ primary_network_interface_id: (known after apply)
+ private_dns: (known after apply)
+ private_dns_name_options: (known after apply)
+ private_ip: (known after apply)
+ public_dns: (known after apply)
+ public_ip: (known after apply)
+ root_block_device:
+ - delete_on_termination: true
+ device_name: (known after apply)
+ encrypted: (known after apply)
+ iops: (known after apply)
+ kms_key_id: (known after apply)
+ tags: null
+ tags_all: (known after apply)
+ throughput: (known after apply)
+ volume_id: (known after apply)
+ volume_size: 100
+ volume_type: gp3
+ secondary_private_ips: (known after apply)
+ security_groups: (known after apply)
+ source_dest_check: true
+ spot_instance_request_id: (known after apply)
+ subnet_id: subnet-09605cfe202ef69e7
+ tags:
+ Environment: terraform-example
+ Name: cost-demo-DO-NOT-MERGE-1
+ Purpose: cost-signal-demo-TEMPORARY
+ Warning: DELETE-THIS-BRANCH
+ tags_all:
+ Environment: terraform-example
+ Name: cost-demo-DO-NOT-MERGE-1
+ Purpose: cost-signal-demo-TEMPORARY
+ Warning: DELETE-THIS-BRANCH
+ tenancy: (known after apply)
+ terraform_address: module.scenarios[0].aws_instance.cost_demo[1]
+ terraform_name: module.scenarios[0].aws_instance.cost_demo[1]
+ timeouts: null
+ user_data: (known after apply)
+ user_data_base64: (known after apply)
+ user_data_replace_on_change: false
+ volume_tags: null
+ vpc_security_group_ids: (known after apply)
+ aws_instance › module.scenarios[0].aws_instance.cost_demo[2]--- current
+++ proposed
@@ -0,0 +1,82 @@
+type: aws_instance
+id: github.com/overmindtech/terraform-example.aws_instance.module.scenarios[0].aws_instance.cost_demo[2]
+attributes:
+ ami: ami-012cce9e78c650beb
+ arn: (known after apply)
+ associate_public_ip_address: (known after apply)
+ availability_zone: (known after apply)
+ capacity_reservation_specification: (known after apply)
+ cpu_core_count: (known after apply)
+ cpu_options: (known after apply)
+ cpu_threads_per_core: (known after apply)
+ disable_api_stop: (known after apply)
+ disable_api_termination: (known after apply)
+ ebs_block_device: (known after apply)
+ ebs_optimized: (known after apply)
+ enable_primary_ipv6: (known after apply)
+ enclave_options: (known after apply)
+ ephemeral_block_device: (known after apply)
+ get_password_data: false
+ hibernation: null
+ host_id: (known after apply)
+ host_resource_group_arn: (known after apply)
+ iam_instance_profile: (known after apply)
+ id: (known after apply)
+ instance_initiated_shutdown_behavior: (known after apply)
+ instance_lifecycle: (known after apply)
+ instance_market_options: (known after apply)
+ instance_state: (known after apply)
+ instance_type: t3.xlarge
+ ipv6_address_count: (known after apply)
+ ipv6_addresses: (known after apply)
+ key_name: (known after apply)
+ maintenance_options: (known after apply)
+ metadata_options: (known after apply)
+ monitoring: (known after apply)
+ network_interface: (known after apply)
+ outpost_arn: (known after apply)
+ password_data: (known after apply)
+ placement_group: (known after apply)
+ placement_partition_number: (known after apply)
+ primary_network_interface_id: (known after apply)
+ private_dns: (known after apply)
+ private_dns_name_options: (known after apply)
+ private_ip: (known after apply)
+ public_dns: (known after apply)
+ public_ip: (known after apply)
+ root_block_device:
+ - delete_on_termination: true
+ device_name: (known after apply)
+ encrypted: (known after apply)
+ iops: (known after apply)
+ kms_key_id: (known after apply)
+ tags: null
+ tags_all: (known after apply)
+ throughput: (known after apply)
+ volume_id: (known after apply)
+ volume_size: 100
+ volume_type: gp3
+ secondary_private_ips: (known after apply)
+ security_groups: (known after apply)
+ source_dest_check: true
+ spot_instance_request_id: (known after apply)
+ subnet_id: subnet-09605cfe202ef69e7
+ tags:
+ Environment: terraform-example
+ Name: cost-demo-DO-NOT-MERGE-2
+ Purpose: cost-signal-demo-TEMPORARY
+ Warning: DELETE-THIS-BRANCH
+ tags_all:
+ Environment: terraform-example
+ Name: cost-demo-DO-NOT-MERGE-2
+ Purpose: cost-signal-demo-TEMPORARY
+ Warning: DELETE-THIS-BRANCH
+ tenancy: (known after apply)
+ terraform_address: module.scenarios[0].aws_instance.cost_demo[2]
+ terraform_name: module.scenarios[0].aws_instance.cost_demo[2]
+ timeouts: null
+ user_data: (known after apply)
+ user_data_base64: (known after apply)
+ user_data_replace_on_change: false
+ volume_tags: null
+ vpc_security_group_ids: (known after apply)
+ aws_instance › module.scenarios[0].aws_instance.cost_demo[3]--- current
+++ proposed
@@ -0,0 +1,82 @@
+type: aws_instance
+id: github.com/overmindtech/terraform-example.aws_instance.module.scenarios[0].aws_instance.cost_demo[3]
+attributes:
+ ami: ami-012cce9e78c650beb
+ arn: (known after apply)
+ associate_public_ip_address: (known after apply)
+ availability_zone: (known after apply)
+ capacity_reservation_specification: (known after apply)
+ cpu_core_count: (known after apply)
+ cpu_options: (known after apply)
+ cpu_threads_per_core: (known after apply)
+ disable_api_stop: (known after apply)
+ disable_api_termination: (known after apply)
+ ebs_block_device: (known after apply)
+ ebs_optimized: (known after apply)
+ enable_primary_ipv6: (known after apply)
+ enclave_options: (known after apply)
+ ephemeral_block_device: (known after apply)
+ get_password_data: false
+ hibernation: null
+ host_id: (known after apply)
+ host_resource_group_arn: (known after apply)
+ iam_instance_profile: (known after apply)
+ id: (known after apply)
+ instance_initiated_shutdown_behavior: (known after apply)
+ instance_lifecycle: (known after apply)
+ instance_market_options: (known after apply)
+ instance_state: (known after apply)
+ instance_type: t3.xlarge
+ ipv6_address_count: (known after apply)
+ ipv6_addresses: (known after apply)
+ key_name: (known after apply)
+ maintenance_options: (known after apply)
+ metadata_options: (known after apply)
+ monitoring: (known after apply)
+ network_interface: (known after apply)
+ outpost_arn: (known after apply)
+ password_data: (known after apply)
+ placement_group: (known after apply)
+ placement_partition_number: (known after apply)
+ primary_network_interface_id: (known after apply)
+ private_dns: (known after apply)
+ private_dns_name_options: (known after apply)
+ private_ip: (known after apply)
+ public_dns: (known after apply)
+ public_ip: (known after apply)
+ root_block_device:
+ - delete_on_termination: true
+ device_name: (known after apply)
+ encrypted: (known after apply)
+ iops: (known after apply)
+ kms_key_id: (known after apply)
+ tags: null
+ tags_all: (known after apply)
+ throughput: (known after apply)
+ volume_id: (known after apply)
+ volume_size: 100
+ volume_type: gp3
+ secondary_private_ips: (known after apply)
+ security_groups: (known after apply)
+ source_dest_check: true
+ spot_instance_request_id: (known after apply)
+ subnet_id: subnet-09605cfe202ef69e7
+ tags:
+ Environment: terraform-example
+ Name: cost-demo-DO-NOT-MERGE-3
+ Purpose: cost-signal-demo-TEMPORARY
+ Warning: DELETE-THIS-BRANCH
+ tags_all:
+ Environment: terraform-example
+ Name: cost-demo-DO-NOT-MERGE-3
+ Purpose: cost-signal-demo-TEMPORARY
+ Warning: DELETE-THIS-BRANCH
+ tenancy: (known after apply)
+ terraform_address: module.scenarios[0].aws_instance.cost_demo[3]
+ terraform_name: module.scenarios[0].aws_instance.cost_demo[3]
+ timeouts: null
+ user_data: (known after apply)
+ user_data_base64: (known after apply)
+ user_data_replace_on_change: false
+ volume_tags: null
+ vpc_security_group_ids: (known after apply)
💥 Blast RadiusItems Edges |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
⛔ Auto-Blocked
🔴 Decision
Auto-blocked: Cost signal (-4) is below threshold (-2); Routine score (-5) is below minimum (-1)
📊 Signals Summary
Routine 🔴 -5
Cost 🔴 -4
🔥 Risks Summary
High 0 · Medium 0 · Low 0
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
⛔ Auto-Blocked
🔴 Decision
Auto-blocked: Policy signal (-3) is below threshold (-2); Cost signal (-4) is below threshold (-2); Routine score (-5) is below minimum (-1)
📊 Signals Summary
Routine 🔴 -5
Cost 🔴 -4
Policies 🔴 -3
🔥 Risks Summary
High 0 · Medium 0 · Low 0


Created a cost increase example to test infracost