# Terraform: Error: deleting EC2 VPC (vpc-0abc): DependencyViolation: The vpc 'vpc-0abc' has dependencies and cannot be deleted

**Code:** `DependencyViolation: resource has dependent objects (destroy)` · **Category:** Terraform · **Seen on:** Terraform, AWS

Destroy failed because something else still uses the resource (ENIs, subnets, gateways, security group rules).

## Meaning

Find what's attached (network interfaces, load balancers, endpoints, Lambda ENIs, resources created outside Terraform). Remove/detach them first, or fix dependency ordering with `depends_on`. Lambda/EKS leave ENIs that take minutes to release — retry. Use console/CLI (`aws ec2 describe-network-interfaces --filters Name=vpc-id,Values=...`) to locate blockers.

## Common causes

- ENIs from Lambda/EKS/ELB still attached
- Resources created manually in the VPC/subnet
- Security group referenced by another SG
- Missing dependency ordering
- Eventual consistency delay

## Quick fix

1. List dependents with the CLI and delete them
2. Retry destroy after a few minutes
3. Add explicit `depends_on` or manage dependents in Terraform

## Detailed fix by platform

### AWS

1. `aws ec2 describe-network-interfaces --filters Name=vpc-id,Values=vpc-0abc --query 'NetworkInterfaces[].[NetworkInterfaceId,Description]'`

## How to diagnose

1. **Dependents** — Which?
2. **Origin** — Managed by TF?
3. **Retry** — After delay?

---
Source: [WhatIsMyError](https://whatismyerror.com/errors/terraform/error-deleting-dependency-violation)
