Skip to content
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

Terraform destroy fails when state is empty #568

Closed
2 of 4 tasks
miguelaferreira opened this issue Oct 24, 2019 · 17 comments · Fixed by #1041
Closed
2 of 4 tasks

Terraform destroy fails when state is empty #568

miguelaferreira opened this issue Oct 24, 2019 · 17 comments · Fixed by #1041

Comments

@miguelaferreira
Copy link
Contributor

miguelaferreira commented Oct 24, 2019

I have issues

Terraform destroy fails when state is empty.

I've seen other issues that refer to similar problems, like #513 and #402. But those issues are not related to the same error I'm seeing.

I'm submitting a...

  • bug report
  • feature request
  • support request - read the FAQ first!
  • kudos, thank you, warm fuzzy

What is the current behavior?

When terraform destroy is called on an empty state, terraform errors with Error: Invalid index.
The expressions that trigger this behaviour are things like:

cluster_security_group_id = var.cluster_create_security_group ? aws_security_group.cluster[0].id : var.cluster_security_group_id

If this is a bug, how to reproduce? Please include a code sample if relevant.

$ cd examples/basic
$ terraform init
Initializing modules...
...
$ terraform destroy
module.eks.data.aws_region.current: Refreshing state...
data.aws_availability_zones.available: Refreshing state...
module.eks.data.aws_caller_identity.current: Refreshing state...
module.eks.data.aws_iam_policy_document.cluster_assume_role_policy: Refreshing state...
module.eks.data.aws_iam_policy_document.workers_assume_role_policy: Refreshing state...
module.eks.data.aws_ami.eks_worker: Refreshing state...

An execution plan has been generated and is shown below.
Resource actions are indicated with the following symbols:

Terraform will perform the following actions:

Plan: 0 to add, 0 to change, 0 to destroy.

Do you really want to destroy all resources?
  Terraform will destroy all your managed infrastructure, as shown above.
  There is no undo. Only 'yes' will be accepted to confirm.

  Enter a value: yes


Error: Invalid index

  on ../../local.tf line 11, in locals:
  11:   cluster_security_group_id = var.cluster_create_security_group ? aws_security_group.cluster[0].id : var.cluster_security_group_id
    |----------------
    | aws_security_group.cluster is empty tuple

The given key does not identify an element in this collection value.

What's the expected behavior?

$ terraform destroy
Destroy complete! Resources: 0 destroyed.

Are you able to fix this problem and submit a PR? Link here if you have already.

PR #569

Environment details

  • Affected module version: current master
  • OS: Mac OSX
  • Terraform version: v0.12.12

Any other relevant info

The reason why it is important for me to have the destroy command work well on an empty state is that I'm using this module in a project that uses terragrunt to "glue together" a tree of modules. When destroying, terragrunt will want to call terraform destroy on all the modules it knows about. Turns out that when an attempt to destroy the entire tree of modules does not completely finish, subsequent attempts will try and destroy modules that have already been destroyed and, therefore, have empty states. At that point this issue surfaces.

@max-rocket-internet
Copy link
Contributor

It would be cool if this could be solved in TF itself. Is there a github issue already existing?

@vrathore18
Copy link

We are still facing the issue. when we can expect a new release with the fix?

@stale
Copy link

stale bot commented Feb 19, 2020

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale label Feb 19, 2020
@jross-ai
Copy link

jross-ai commented Mar 6, 2020

Any update on a solution here?

@stale stale bot removed the stale label Mar 6, 2020
@miguelaferreira
Copy link
Contributor Author

@jross-ai are you still experiencing the same issue with v7.0.0 or above?
PR #569 should have addressed it.

@stale
Copy link

stale bot commented Jun 4, 2020

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale label Jun 4, 2020
@tkent
Copy link

tkent commented Jun 10, 2020

@miguelaferreira

This is still happening in v12.1.0 and the master branch because some other local values (presumably added after your fixes) directly reference element tuples by their index.

Specifically endpoint, cluster_auth_base64 , and aws_authenticator_command_args.

See

kubeconfig = var.create_eks ? templatefile("${path.module}/templates/kubeconfig.tpl", {

Here's what the error output looks like.

Error: Invalid index

  on .terraform/modules/eks/terraform-aws-eks-12.1.0/local.tf line 143, in locals:
 143:     endpoint                          = aws_eks_cluster.this[0].endpoint
    |----------------
    | aws_eks_cluster.this is empty tuple

The given key does not identify an element in this collection value.


Error: Invalid index

  on .terraform/modules/eks/terraform-aws-eks-12.1.0/local.tf line 144, in locals:
 144:     cluster_auth_base64               = aws_eks_cluster.this[0].certificate_authority[0].data
    |----------------
    | aws_eks_cluster.this is empty tuple

The given key does not identify an element in this collection value.


Error: Invalid index

  on .terraform/modules/eks/terraform-aws-eks-12.1.0/local.tf line 146, in locals:
 146:     aws_authenticator_command_args    = length(var.kubeconfig_aws_authenticator_command_args) > 0 ? var.kubeconfig_aws_authenticator_command_args : ["token", "-i", aws_eks_cluster.this[0].name]
    |----------------
    | aws_eks_cluster.this is empty tuple

The given key does not identify an element in this collection value.

If I end up with free time, I'll send in a PR to fix it. I assume it will just require a better test condition on the local.kubeconfig, but it may require more than that.

@stale stale bot removed the stale label Jun 10, 2020
@miguelaferreira
Copy link
Contributor Author

@tkent I think I've bumped into this issue as well while destroying a cluster. If you can propose a PR I can help you test.

@thpang
Copy link

thpang commented Jul 8, 2020

Also having the same issue.

@canthony
Copy link

canthony commented Jul 9, 2020

Same issue on 12.1.0

Error: Invalid index

  on .terraform/modules/eks/terraform-aws-eks-12.1.0/local.tf line 143, in locals:
 143:     endpoint                          = aws_eks_cluster.this[0].endpoint
    |----------------
    | aws_eks_cluster.this is empty tuple

The given key does not identify an element in this collection value.


Error: Invalid index

  on .terraform/modules/eks/terraform-aws-eks-12.1.0/local.tf line 144, in locals:
 144:     cluster_auth_base64               = aws_eks_cluster.this[0].certificate_authority[0].data
    |----------------
    | aws_eks_cluster.this is empty tuple

The given key does not identify an element in this collection value.


Error: Invalid index

  on .terraform/modules/eks/terraform-aws-eks-12.1.0/local.tf line 146, in locals:
 146:     aws_authenticator_command_args    = length(var.kubeconfig_aws_authenticator_command_args) > 0 ? var.kubeconfig_aws_authenticator_command_args : ["token", "-i", aws_eks_cluster.this[0].name]
    |----------------
    | aws_eks_cluster.this is empty tuple

The given key does not identify an element in this collection value.

@thpang
Copy link

thpang commented Jul 10, 2020

My team has found that if there are items that affect the infrastructure that terraform is not aware of, i.e. one stands up their kubernetes infrastructure with terraform and then deploys content into that infrastructure with ansible, timeouts can occur. Once those times happen, the tfstate file is not happy and now has trouble with outputs/locals/etc that have collection or tuple information they should be referencing. Even doing a refresh with terraform does not correct the state in the state file to clear this up.

@jross-ai
Copy link

My team has found that if there are items that affect the infrastructure that terraform is not aware of, i.e. one stands up their kubernetes infrastructure with terraform and then deploys content into that infrastructure with ansible, timeouts can occur. Once those times happen, the tfstate file is not happy and now has trouble with outputs/locals/etc that have collection or tuple information they should be referencing. Even doing a refresh with terraform does not correct the state in the state file to clear this up.

Do you have a typical workaround that you implement?

@dpiddockcmp
Copy link
Contributor

This is one of those annoying edge cases when half the state has been removed. terraform state list would give some hints on what resources are remaining to destroy. Maybe shine some light on where the issue is.

Running terraform destroy on one of the example folders shows that it works correctly on a totally empty state and thus the difficulty in testing fixes.

@clushie
Copy link
Contributor

clushie commented Aug 4, 2020

For me I failed removing my cluster because I forgot uninstalling helm/ingress/route53 before running terraform destroy.

Error message is quite similar, terraform state list meanwhile shows no output (so the eks cluster is already gone?)

Update:

A little bit more context:

  • so terraform destroy will output Plan: 0 to add, 0 to change, 0 to destroy. at some point.
  • terraform state list returns an empty list
  • terraform state pull returns a list of a lot of objects, many are module.eks related, but not all

For quick testing purposes I've removed all occurrences of module.eks in my terraform.tfstate but I am still presented with the same error.

error messages
Plan: 0 to add, 0 to change, 0 to destroy.

Do you really want to destroy all resources in workspace "<my workspace>"?
  Terraform will destroy all your managed infrastructure, as shown above.
  There is no undo. Only 'yes' will be accepted to confirm.

  Enter a value: yes

 
Error: Invalid index

  on .terraform/modules/eks/terraform-aws-eks-12.2.0/local.tf line 147, in locals:
 147:     endpoint                          = aws_eks_cluster.this[0].endpoint
    |----------------
    | aws_eks_cluster.this is empty tuple

The given key does not identify an element in this collection value.


Error: Invalid index

  on .terraform/modules/eks/terraform-aws-eks-12.2.0/local.tf line 148, in locals:
 148:     cluster_auth_base64               = aws_eks_cluster.this[0].certificate_authority[0].data
    |----------------
    | aws_eks_cluster.this is empty tuple

The given key does not identify an element in this collection value.


Error: Invalid index

  on .terraform/modules/eks/terraform-aws-eks-12.2.0/local.tf line 150, in locals:
 150:     aws_authenticator_command_args    = length(var.kubeconfig_aws_authenticator_command_args) > 0 ? var.kubeconfig_aws_authenticator_command_args : ["token", "-i", aws_eks_cluster.this[0].name]
    |----------------
    | aws_eks_cluster.this is empty tuple

The given key does not identify an element in this collection value.

Below is my tfstate file, perhaps this is enough to replicate the issue.

terraform.tfstate
{
  "version": 4,
  "terraform_version": "0.12.29",
  "serial": 20,
  "lineage": "746b2236-8d1d-3622-0d8b-9fb2673ec13c",
  "outputs": {},
  "resources": [
    {
      "module": "module.s3_bucket",
      "mode": "data",
      "type": "aws_elb_service_account",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "data",
      "type": "aws_iam_instance_profile",
      "name": "custom_worker_group_iam_instance_profile",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "data",
      "type": "aws_iam_instance_profile",
      "name": "custom_worker_group_launch_template_iam_instance_profile",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.iam_assumable_role_admin_gitlab_runner",
      "mode": "data",
      "type": "aws_iam_policy_document",
      "name": "assume_role_with_oidc",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.iam_assumable_role_admin_autoscaler",
      "mode": "data",
      "type": "aws_iam_policy_document",
      "name": "assume_role_with_oidc",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.iam_assumable_role_external_dns",
      "mode": "data",
      "type": "aws_iam_policy_document",
      "name": "assume_role_with_oidc",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.iam_assumable_role_cert_manager",
      "mode": "data",
      "type": "aws_iam_policy_document",
      "name": "assume_role_with_oidc",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "data",
      "type": "aws_iam_policy_document",
      "name": "cluster_elb_sl_role_creation",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.s3_bucket",
      "mode": "data",
      "type": "aws_iam_policy_document",
      "name": "elb_log_delivery",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "data",
      "type": "aws_iam_role",
      "name": "custom_cluster_iam_role",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "apigw",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "cloudtrail",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "dynamodb",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "ec2",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "ec2messages",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "ecr_api",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "ecr_dkr",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "ecs",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "ecs_agent",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "ecs_telemetry",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "elasticloadbalancing",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "events",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "kms",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "logs",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "monitoring",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "s3",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "sns",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "sqs",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "ssm",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "data",
      "type": "aws_vpc_endpoint_service",
      "name": "ssmmessages",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "data",
      "type": "template_file",
      "name": "launch_template_userdata",
      "each": "list",
      "provider": "provider.template",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "data",
      "type": "template_file",
      "name": "userdata",
      "each": "list",
      "provider": "provider.template",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_autoscaling_group",
      "name": "workers",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_autoscaling_group",
      "name": "workers_launch_template",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_cloudwatch_log_group",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds.module.db_instance",
      "mode": "managed",
      "type": "aws_db_instance",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds.module.db_instance",
      "mode": "managed",
      "type": "aws_db_instance",
      "name": "this_mssql",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds.module.db_option_group",
      "mode": "managed",
      "type": "aws_db_option_group",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds.module.db_parameter_group",
      "mode": "managed",
      "type": "aws_db_parameter_group",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds.module.db_parameter_group",
      "mode": "managed",
      "type": "aws_db_parameter_group",
      "name": "this_no_prefix",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_db_subnet_group",
      "name": "database",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds.module.db_subnet_group",
      "mode": "managed",
      "type": "aws_db_subnet_group",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_default_network_acl",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_default_vpc",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_eip",
      "name": "nat",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_eks_cluster",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks.module.node_groups",
      "mode": "managed",
      "type": "aws_eks_node_group",
      "name": "workers",
      "each": "map",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_elasticache_subnet_group",
      "name": "elasticache",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_iam_instance_profile",
      "name": "workers",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_iam_instance_profile",
      "name": "workers_launch_template",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_iam_openid_connect_provider",
      "name": "oidc_provider",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_iam_role",
      "name": "cluster",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds.module.db_instance",
      "mode": "managed",
      "type": "aws_iam_role",
      "name": "enhanced_monitoring",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.iam_assumable_role_admin_gitlab_runner",
      "mode": "managed",
      "type": "aws_iam_role",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.iam_assumable_role_admin_autoscaler",
      "mode": "managed",
      "type": "aws_iam_role",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.iam_assumable_role_external_dns",
      "mode": "managed",
      "type": "aws_iam_role",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.iam_assumable_role_cert_manager",
      "mode": "managed",
      "type": "aws_iam_role",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_iam_role",
      "name": "workers",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_iam_role_policy",
      "name": "cluster_elb_sl_role_creation",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_iam_role_policy_attachment",
      "name": "cluster_AmazonEKSClusterPolicy",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_iam_role_policy_attachment",
      "name": "cluster_AmazonEKSServicePolicy",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.iam_assumable_role_admin_gitlab_runner",
      "mode": "managed",
      "type": "aws_iam_role_policy_attachment",
      "name": "custom",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.iam_assumable_role_admin_autoscaler",
      "mode": "managed",
      "type": "aws_iam_role_policy_attachment",
      "name": "custom",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.iam_assumable_role_external_dns",
      "mode": "managed",
      "type": "aws_iam_role_policy_attachment",
      "name": "custom",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.iam_assumable_role_cert_manager",
      "mode": "managed",
      "type": "aws_iam_role_policy_attachment",
      "name": "custom",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds.module.db_instance",
      "mode": "managed",
      "type": "aws_iam_role_policy_attachment",
      "name": "enhanced_monitoring",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_iam_role_policy_attachment",
      "name": "workers_AmazonEC2ContainerRegistryReadOnly",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_iam_role_policy_attachment",
      "name": "workers_AmazonEKSWorkerNodePolicy",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_iam_role_policy_attachment",
      "name": "workers_AmazonEKS_CNI_Policy",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_iam_role_policy_attachment",
      "name": "workers_additional_policies",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor",
      "mode": "managed",
      "type": "aws_instance",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory",
      "mode": "managed",
      "type": "aws_instance",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_internet_gateway",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.keypair",
      "mode": "managed",
      "type": "aws_key_pair",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_launch_configuration",
      "name": "workers",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_launch_template",
      "name": "workers_launch_template",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_nat_gateway",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_network_acl",
      "name": "database",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_network_acl",
      "name": "elasticache",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_network_acl",
      "name": "intra",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_network_acl",
      "name": "private",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_network_acl",
      "name": "public",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_network_acl",
      "name": "redshift",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_network_acl_rule",
      "name": "database_inbound",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_network_acl_rule",
      "name": "database_outbound",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_network_acl_rule",
      "name": "elasticache_inbound",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_network_acl_rule",
      "name": "elasticache_outbound",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_network_acl_rule",
      "name": "intra_inbound",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_network_acl_rule",
      "name": "intra_outbound",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_network_acl_rule",
      "name": "private_inbound",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_network_acl_rule",
      "name": "private_outbound",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_network_acl_rule",
      "name": "public_inbound",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_network_acl_rule",
      "name": "public_outbound",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_network_acl_rule",
      "name": "redshift_inbound",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_network_acl_rule",
      "name": "redshift_outbound",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_redshift_subnet_group",
      "name": "redshift",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_route",
      "name": "database_internet_gateway",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_route",
      "name": "database_nat_gateway",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_route",
      "name": "private_nat_gateway",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_route",
      "name": "public_internet_gateway",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_route_table",
      "name": "database",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_route_table",
      "name": "elasticache",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_route_table",
      "name": "intra",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_route_table",
      "name": "private",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_route_table",
      "name": "public",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_route_table",
      "name": "redshift",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_route_table_association",
      "name": "database",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_route_table_association",
      "name": "elasticache",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_route_table_association",
      "name": "intra",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_route_table_association",
      "name": "private",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_route_table_association",
      "name": "public",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_route_table_association",
      "name": "redshift",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_route_table_association",
      "name": "redshift_public",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.s3_bucket",
      "mode": "managed",
      "type": "aws_s3_bucket",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.s3_bucket",
      "mode": "managed",
      "type": "aws_s3_bucket_policy",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.s3_bucket",
      "mode": "managed",
      "type": "aws_s3_bucket_public_access_block",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_security_group",
      "name": "cluster",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group",
      "name": "this_name_prefix",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group",
      "name": "this_name_prefix",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group",
      "name": "this_name_prefix",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group",
      "name": "this_name_prefix",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group",
      "name": "this_name_prefix",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_security_group",
      "name": "workers",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "cluster_egress_internet",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "cluster_https_worker_ingress",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "cluster_primary_ingress_workers",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "cluster_private_access",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_egress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "computed_ingress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "egress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_rules",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_ipv6_cidr_blocks",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.rds_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.memcached_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.faktory_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.elasticsearch_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.monitor_sg",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "ingress_with_source_security_group_id",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "workers_egress_internet",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "workers_ingress_cluster",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "workers_ingress_cluster_https",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "workers_ingress_cluster_kubelet",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "workers_ingress_cluster_primary",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "aws_security_group_rule",
      "name": "workers_ingress_self",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_subnet",
      "name": "database",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_subnet",
      "name": "elasticache",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_subnet",
      "name": "intra",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_subnet",
      "name": "private",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_subnet",
      "name": "public",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_subnet",
      "name": "redshift",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_dhcp_options",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_dhcp_options_association",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "apigw",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "cloudtrail",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "dynamodb",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "ec2",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "ec2messages",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "ecr_api",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "ecr_dkr",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "ecs",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "ecs_agent",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "ecs_telemetry",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "elasticloadbalancing",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "events",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "kms",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "logs",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "monitoring",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "s3",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "sns",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "sqs",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "ssm",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint",
      "name": "ssmmessages",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint_route_table_association",
      "name": "intra_dynamodb",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint_route_table_association",
      "name": "intra_s3",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint_route_table_association",
      "name": "private_dynamodb",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint_route_table_association",
      "name": "private_s3",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint_route_table_association",
      "name": "public_dynamodb",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_endpoint_route_table_association",
      "name": "public_s3",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpc_ipv4_cidr_block_association",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpn_gateway",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpn_gateway_attachment",
      "name": "this",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpn_gateway_route_propagation",
      "name": "private",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.vpc",
      "mode": "managed",
      "type": "aws_vpn_gateway_route_propagation",
      "name": "public",
      "each": "list",
      "provider": "provider.aws",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "kubernetes_config_map",
      "name": "aws_auth",
      "each": "list",
      "provider": "provider.kubernetes",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "local_file",
      "name": "kubeconfig",
      "each": "list",
      "provider": "provider.local",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "null_resource",
      "name": "wait_for_cluster",
      "each": "list",
      "provider": "provider.null",
      "instances": []
    },
    {
      "module": "module.eks.module.node_groups",
      "mode": "managed",
      "type": "random_pet",
      "name": "node_groups",
      "each": "map",
      "provider": "provider.random",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "random_pet",
      "name": "workers",
      "each": "list",
      "provider": "provider.random",
      "instances": []
    },
    {
      "module": "module.eks",
      "mode": "managed",
      "type": "random_pet",
      "name": "workers_launch_template",
      "each": "list",
      "provider": "provider.random",
      "instances": []
    }
  ]
}

@acutchin-bitpusher
Copy link

acutchin-bitpusher commented Sep 17, 2020

This issue is bedeviling my development efforts right now. Also curious about the apparent abandonment of this issue and lack of workarounds. Are other organizations creating EKS clusters and never destroying them, so not encountering this bug (yet)?

UPDATE: This seems to be triggered when an apply or destroy action is interrupted, such as with a timeout or expiration of AWS assumed role token.

@barryib
Copy link
Member

barryib commented Oct 6, 2020

@acutchin-bitpusher @clushie Can you please test this and let me know if it solves your issue.

@github-actions
Copy link

I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues. If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Nov 24, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet