Closed ewbankkit closed 2 years ago
This functionality has been released in v3.71.0 of the Terraform AWS Provider. Please see the Terraform documentation on provider versioning or reach out if you need any assistance upgrading.
For further feature requests or bug reports with this functionality, please create a new GitHub issue following the template. Thank you!
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.
Community Note
Description
A resource's
_disappears
acceptance test case verifies that the provider correctly accounts for the resource being deleted outside of Terraform. Incorrectly handling this scenario can lead to provider crashes or having to manually taint or delete resource from state.A number of resource do not have a
_disappears
acceptance test case. Add relevant tests cases for these resources.Affected Resources
Ideally any submissions for this should be split up per AWS service to ease review and merge process.
An initial list (
grep -L _disappears aws/resource_*_test.go | grep -v migrate_test
):aws_acm_certificate
aws_acm_certificate_validation
aws_acmpca_certificate_authority
aws_alb_target_group
aws_ami_copy
aws_ami_from_instance
aws_ami_launch_permission
aws_api_gateway_account
aws_api_gateway_api_key
aws_api_gateway_base_path_mapping
aws_api_gateway_client_certificate
aws_api_gateway_documentation_part
aws_api_gateway_documentation_version
aws_api_gateway_domain_name
aws_api_gateway_gateway_response
aws_api_gateway_integration_response
aws_api_gateway_integration
aws_api_gateway_method_response
aws_api_gateway_method_settings
aws_api_gateway_method
aws_api_gateway_model
aws_api_gateway_request_validator
aws_api_gateway_resource
aws_api_gateway_usage_plan
aws_api_gateway_vpc_link
aws_appautoscaling_scheduled_action
aws_appautoscaling_target
aws_app_cookie_stickiness_policy
aws_appmesh_mesh
aws_appmesh_route
aws_appmesh_virtual_node
aws_appmesh_virtual_router
aws_appmesh_virtual_service
aws_appsync_api_key
aws_appsync_datasource
aws_athena_database
aws_athena_named_query
aws_autoscaling_attachment
aws_autoscaling_group
aws_autoscaling_group_waiting
aws_autoscaling_lifecycle_hook
aws_autoscaling_notification
aws_batch_compute_environment
aws_batch_job_definition
aws_budgets_budget
aws_cloudfront_public_key
aws_cloudhsm2_cluster
aws_cloudhsm2_hsm
aws_cloudtrail
aws_cloudwatch_dashboard
aws_cloudwatch_event_permission
aws_cloudwatch_event_rule
aws_cloudwatch_event_target
aws_cloudwatch_log_destination_policy
aws_cloudwatch_log_destination
aws_cloudwatch_log_metric_filter
aws_cloudwatch_log_resource_policy
aws_cloudwatch_metric_alarm
aws_codebuild_project
aws_codebuild_source_credential
aws_codebuild_webhook
aws_codecommit_repository
aws_codecommit_trigger
aws_codedeploy_app
aws_codedeploy_deployment_config
aws_codepipeline
aws_codepipeline_webhook
aws_codestarnotifications_notification_rule
aws_cognito_identity_pool
aws_cognito_identity_provider
aws_cognito_resource_server
aws_cognito_user_group
aws_cognito_user_pool_domain
aws_cognito_user_pool
aws_config_aggregate_authorization
aws_config_config_rule
aws_config_configuration_aggregator
aws_config_configuration_recorder_status
aws_config_configuration_recorder
aws_config_delivery_channel
aws_cur_report_definition
aws_dax_cluster
aws_dax_parameter_group
aws_dax_subnet_group
aws_db_cluster_snapshot
aws_db_instance
aws_db_option_group
aws_db_parameter_group
aws_db_security_group
aws_db_subnet_group
aws_default_network_acl
aws_default_security_group
aws_default_subnet
aws_default_vpc_dhcp_options
aws_default_vpc
aws_directory_service_conditional_forwarder
aws_directory_service_log_subscription
aws_dlm_lifecycle_policy
aws_dms_certificate
aws_dms_endpoint
aws_dms_replication_instance
aws_dms_replication_subnet_group
aws_dms_replication_task
aws_docdb_cluster_snapshot
aws_docdb_cluster
aws_dx_bgp_peer
aws_dx_connection_association
aws_dx_connection
aws_dx_gateway_association
aws_dx_gateway
aws_dx_hosted_private_virtual_interface
aws_dx_hosted_public_virtual_interface
aws_dx_hosted_transit_virtual_interface
aws_dx_lag
aws_dx_private_virtual_interface
aws_dx_public_virtual_interface
aws_dx_transit_virtual_interface
aws_dynamodb_global_table
aws_dynamodb_table_item
aws_ebs_default_kms_key
aws_ebs_encryption_by_default
aws_ebs_snapshot
aws_ec2_availability_zone_group
aws_ec2_traffic_mirror_filter_rule
aws_ec2_transit_gateway_peering_attachment_accepter
aws_ec2_transit_gateway_route_table_association
aws_ec2_transit_gateway_route_table_propagation
aws_ec2_transit_gateway_vpc_attachment_accepter
aws_ecr_lifecycle_policy
aws_ecr_repository_policy
aws_ecr_repository
aws_ecs_task_definition
aws_egress_only_internet_gateway
aws_eks_cluster
aws_elasticache_cluster
aws_elasticache_parameter_group
aws_elasticache_replication_group
aws_elasticache_security_group
aws_elasticache_subnet_group
aws_elastic_beanstalk_application
aws_elastic_beanstalk_application_version
aws_elastic_beanstalk_configuration_template
aws_elastic_beanstalk_environment
aws_elasticsearch_domain_policy
aws_elasticsearch_domain
aws_elb_attachment
aws_emr_instance_group
aws_emr_security_configuration
aws_fms_admin_account
aws_gamelift
aws_glacier_vault_lock
aws_glacier_vault
aws_globalaccelerator_accelerator
aws_globalaccelerator_endpoint_group
aws_globalaccelerator_listener
aws_glue_catalog_database
aws_glue_classifier
aws_glue_connection
aws_glue_crawler
aws_glue_job
aws_glue_security_configuration
aws_glue_trigger
aws_glue_workflow
aws_guardduty_detector
aws_guardduty_invite_accepter
aws_guardduty_ipset
aws_guardduty_member
aws_guardduty_organization_admin_account
aws_guardduty_organization_configuration
aws_guardduty
aws_guardduty_threatintelset
aws_iam_access_key
aws_iam_account_alias
aws_iam_account_password_policy
aws_iam_group_membership
aws_iam_group_policy_attachment
aws_iam_group
aws_iam_instance_profile
aws_iam_policy_attachment
aws_iam_service_linked_role
aws_iam_user_group_membership
aws_iam_user_login_profile
aws_iam_user_policy_attachment
aws_iam_user_ssh_key
aws_inspector_resource_group
aws_iot_certificate
aws_iot_policy_attachment
aws_iot_policy
aws_iot_role_alias
aws_iot_thing_principal_attachment
aws_iot_thing
aws_iot_thing_type
aws_iot_topic_rule
aws_kinesis_analytics_application
aws_kinesis_stream
aws_kms_alias
aws_kms_ciphertext
aws_lambda_alias
aws_lambda_layer_version
aws_launch_configuration
aws_lb_cookie_stickiness_policy
aws_lb_listener_certificate
aws_lb_listener_rule
aws_lb_listener
aws_lb_target_group
aws_lb
aws_licensemanager_association
aws_licensemanager_license_configuration
aws_lightsail_instance
aws_lightsail_key_pair
aws_load_balancer_backend_server_policy
aws_load_balancer_listener_policy
aws_macie_member_account_association
aws_macie_s3_bucket_association
aws_main_route_table_association
aws_media_package_channel
aws_media_store_container_policy
aws_media_store_container
aws_mq_configuration
aws_msk_cluster
aws_msk_configuration
aws_nat_gateway
aws_neptune_cluster_instance
aws_neptune_cluster_parameter_group
aws_neptune_cluster_snapshot
aws_neptune_cluster
aws_neptune_event_subscription
aws_neptune_parameter_group
aws_neptune_subnet_group
aws_network_interface_attachment
aws_opsworks_application
aws_opsworks_custom_layer
aws_opsworks_ganglia_layer
aws_opsworks_haproxy_layer
aws_opsworks_instance
aws_opsworks_java_app_layer
aws_opsworks_memcached_layer
aws_opsworks_mysql_layer
aws_opsworks_nodejs_app_layer
aws_opsworks_permission
aws_opsworks_php_app_layer
aws_opsworks_rails_app_layer
aws_opsworks_rds_db_instance
aws_opsworks_stack
aws_opsworks_static_web_layer
aws_opsworks_user_profile
aws_organizations_account
aws_organizations_organizational_unit
aws_organizations_organization
aws_organizations_policy_attachment
aws_organizations_policy
aws_pinpoint_adm_channel
aws_pinpoint_apns_channel
aws_pinpoint_apns_sandbox_channel
aws_pinpoint_apns_voip_channel
aws_pinpoint_apns_voip_sandbox_channel
aws_pinpoint_app
aws_pinpoint_baidu_channel
aws_pinpoint_email_channel
aws_pinpoint_event_stream
aws_pinpoint_gcm_channel
aws_pinpoint_sms_channel
aws_proxy_protocol_policy
aws_qldb_ledger
aws_ram_resource_share_accepter
aws_ram_resource_share
aws_rds_cluster_endpoint
aws_rds_cluster
aws_redshift_cluster
aws_redshift_event_subscription
aws_redshift_parameter_group
aws_redshift_security_group
aws_redshift_snapshot_schedule_association
aws_redshift_snapshot_schedule
aws_redshift_subnet_group
aws_resourcegroups_group
aws_route53_delegation_set
aws_route53_query_log
aws_route53_resolver_endpoint
aws_route53_resolver_rule_association
aws_route53_resolver_rule
aws_route_table
aws_s3_bucket_analytics_configuration
aws_s3_bucket_inventory
aws_s3_bucket_metric
aws_s3_bucket_notification
aws_s3_bucket_object
aws_s3_bucket_policy
aws_s3_bucket
aws_sagemaker_endpoint_configuration
aws_sagemaker_endpoint
aws_sagemaker_model
aws_sagemaker_notebook_instance_lifecycle_configuration
aws_secretsmanager_secret
aws_secretsmanager_secret_version
aws_security_group_rules_matching
aws_security_group_rule
aws_security_group
aws_securityhub_account
aws_securityhub_member
aws_securityhub_product_subscription
aws_securityhub_standards_subscription
aws_securityhub
aws_servicecatalog_portfolio
aws_servicequotas_service_quota
aws_ses_configuration_set
aws_ses_domain_dkim
aws_ses_domain_identity_verification
aws_ses_email_identity
aws_ses_identity_notification_topic
aws_ses_identity_policy
aws_ses_receipt_filter
aws_sfn_activity
aws_sfn_state_machine
aws_shield_protection
aws_simpledb_domain
aws_sns_platform_application
aws_sns_sms_preferences
aws_sns_topic_policy
aws_sns_topic_subscription
aws_sns_topic
aws_spot_instance_request
aws_sqs_queue_policy
aws_sqs_queue
aws_ssm_association
aws_ssm_document
aws_ssm_maintenance_window_task
aws_ssm_patch_group
aws_ssm_resource_data_sync
aws_storagegateway_cached_iscsi_volume
aws_storagegateway_cache
aws_storagegateway_gateway
aws_storagegateway_nfs_file_share
aws_storagegateway_smb_file_share
aws_storagegateway_upload_buffer
aws_storagegateway_working_storage
aws_subnet
aws_swf_domain
aws_transfer_ssh_key
aws_vpc_dhcp_options_association
aws_vpc_endpoint_connection_notification
aws_vpc_endpoint_route_table_association
aws_vpc_endpoint_service_allowed_principal
aws_vpc_endpoint_service
aws_vpc_endpoint_subnet_association
aws_vpc_endpoint
aws_vpc_ipv4_cidr_block_association
aws_vpc_peering_connection_accepter
aws_vpc_peering_connection_options
aws_vpc_peering_connection
aws_vpn_connection_route
aws_vpn_gateway_attachment
aws_vpn_gateway_route_propagation
aws_wafv2_ip_set
aws_wafv2_regex_pattern_set
aws_wafv2_rule_group
aws_wafv2_web_acl_association
aws_wafv2_web_acl
aws_worklink_fleet
aws_worklink_website_certificate_authority_association
aws_workspaces_workspace
aws_xray_sampling_rule
References
13527