Importar un recurso de Azure a un estado en Terraform

Veamos un caso que es bien común, resulta que estás entrando como el elemento más nuevo a un proyecto. Este proyecto ya lleva algo de avance y ya hay algunas cosas creadas para cuando tú debas crear algo de infraestructura por medio de Terraform pero es aquí donde la cosa se pone interesante. Ahora debes trabajar en ese escenario y con ello empezar a crear tu proyecto.

Digamos que lo primero que te dicen es «ok, aquí tienes el grupo de recursos donde vas a crear todo». Eso significa que no deberás crear un grupo, sino que en uno ya creado deberás crear todo. Es aquí en donde deberás importar la configuración de este grupo a Terraform para así poder crear lo que requieras.

terraform import

El comando terraform import será quien en este caso sacará el trabajo. Comienza por ir al portal de Azure, buscar el grupo de recursos donde trabajarás y ahí seleccionar sus propiedades para ver algo como esto.

Con esto, en tu proyecto de Terraform, crea un nuevo archivo import.tf en tu proyecto y ahí agrega el recurso que quieres importar.

Ahora que ya tienes tu archivo puedes entrar a tu terminal y comenzar tu entorno:

terraform init

Después de ello, vamos con el comando para importar.

terraform import azurerm_resource_group.working_group /subscriptions/185ad0e9-2744-5280-905a-891d3e2cac06/resourceGroups/testingbasicgroup

El resultado será algo como esto.

Un archivo de estado ya fue creado y podrás verlo en tu carpeta.

Ahora, en tu archivo import.tf puedes agregar el recurso recién importado.

Si ya tienes el nuevo recurso por crear será un Event Hub que se hospedará en este grupo de recursos recién importado.

Con todo esto, es hora de probar, ejecuta el comando terraform plan y con ello deberás ver que el Event Hub estimado ahora se debe desplegar con el grupo de recursos importado.

Al ejecutar apply no deberás tener ningún problema para que ahora tu nuevo recurso haya sido asignado al grupo de recursos que acabas de importar.

Así resultará muy fácil trabajar con cualquier recurso creado previamente y que deberás usar en tu arquitectura. Divertido ¿no?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *