Newer terraform versions do not support module output files explicitly. see: https://github.com/hashicorp/terraform/issues/22126 Therefore, adding these lines to root `main.tf` fixes the output visibility issue **add to root main.tf** ` output "ec2_instance_public_ip" { value = module.ec2_instance.public-ip-address } `