¿Hay alguna forma de usar los valores de salida de un módulo que se encuentra en otra carpeta? Imagina el siguiente entorno:
tm-project/ ├── lambda │ └── vpctm-manager.js ├── networking │ ├── init.tf │ ├── terraform.tfvars │ ├── variables.tf │ └── vpc-tst.tf ├── prd │ ├── init.tf │ ├── instances.tf │ ├── terraform.tfvars │ └── variables.tf └── security └── init.tfQuiero crear instancias EC2 y colocarlas en una subred declarada en la carpeta de red . Entonces, me preguntaba si por casualidad podría acceder a las salidas del módulo que usé en networking/vpc-tst.tf como las entradas de mi prd/instances.tf .
Gracias de antemano.
Puede usar un archivo outputs.tf para definir las salidas de un módulo de terraformación. Su salida tendrá el nombre de las variables, como el contenido a continuación.
output "vpc_id" { value = "${aws_vpc.default.id}" } Luego se puede hacer referencia a estos dentro de su prd/instances.tf haciendo referencia al nombre del recurso combinado con el nombre de salida que definió en su archivo.
Por ejemplo, si tiene un módulo llamado vpc que usa este módulo, podría usar el resultado similar al siguiente.
module "vpc" { ...... } resource "aws_security_group" "my_sg" { vpc_id = module.vpc.vpc_id }