Demo of Terraform v1.14.0's new terraform query command and needed .tfquery.hcl files.
- Terraform v1.14.0-beta1+
- AWS CLI configured
- SSH public key
-
Edit variables.tf and add your SSH public key.
-
Initialize and deploy:
terraform init terraform apply
-
Create demo scenario (simulate unmanaged resource):
# First, comment out the Amazon Linux instance in aws_instance.tf # Then remove it from Terraform state terraform state rm aws_instance.amazon_linux
-
Search for instances:
# Find all instances terraform query # Search specific instance terraform query -var 'keyword=amazon'
-
Generate configuration:
terraform query -var 'keyword=4d66' -generate-config-out=found.tf -
Clean up generated config (experimental feature requires manual fixes):
- Remove:
arn,id,instance_state,availability_zone - Fix:
amd_sev_snp = ""and conflicting attributes
- Remove:
- 5 managed EC2 instances (Amazon Linux, Ubuntu, Debian, CentOS, Fedora)
- Security group and key pair
aws.tfquery.hcl- Search query definitionsaws_instance.tf- EC2 instances
terraform destroy