Terraform tiene un comando llamado import, el cual permite importar en el fichero de estado (terraform.tfstate) de Terraform los recursos creados actualmente en Azure y que no han sido creados desde Terraform. Un ejemplo de este comando puede ser el importar un Azure Key Vault: Siendo : 0000000-00.. : El guid de la subscripción de Azure mygroup1: El nombre del grupo de recursos donde está alojado el KeyVault Vault1 :El nombre del Azure Key Vault Visitando la documentación oficial del provider de Azure, podemos ver  que por cada uno de los diferentes resources que se pueden crear hay un ejemplo del comando import de cada uno de estos resources. El comando import está muy bien, pero aún falta la mitad[…]

En este artículo vamos a ver cómo podemos ejecutar Terraform en remoto teniendo nuestro código en un repositorio en Github, haciendo que cada vez que se hace un cambio en una rama que elijamos  se ejecute Terraform en remoto a través de Terraform Cloud. Cuando me refiero a ejecutar en remoto, quiero decir a que se realizan los mismos pasos que si desplegáramos nuestro código en local: terraform init.: Descargar los providers necesarios para que se ejecute nuestro plan… terraform plan :Para saber qué cambios hay que realizar en nuestra infraestructura desde la última vez que hicimos terraform apply. terraform apply : Ejecuta el plan de terraform, es decir desplegar nuestra infraestructura Si usáramos Azure DevOps para ejecutar nuestro código[…]

En el artículo de hoy vamos a ver cómo crear nuestro primer módulo de Terraform. Podemos pensar en los módulos de terraform como nuestros métodos/funciones en C# u otro lenguaje como Java o Python. Al final el uso de métodos nos ayuda a no tener que repetirnos DRY (Don´t repeat yourself) y esto mismo es lo que conseguimos haciendo uso de módulos en Terraform. Pero nada mejor que un ejemplo, pensemos en el ejemplo de mí articulo sobre Crear un Azure WebApp . El código de Terraform de este ejemplo era el siguiente: En este ejemplo creábamos un webapp y un AppServicePlan asociado a este webApp. Pues ahora vamos a hacer este mismo ejemplo pero abstrayendo la creación del WebApp[…]

En este artículo vamos a ver como desplegar nuestra infraestructura con Terraform desde una Release de Azure DevOps. Pero en este caso nuestro state de Terraform va a estar ubicado en Terraform Cloud. El primer paso es tener una cuenta de Terraform Cloud, para ello vamos a la url  https://app.terraform.io/signup/account para registrar una nueva cuenta. Una vez creada la cuenta lo que vamos a hacer es crear un token que nos va a hacer falta luego. Para crear este token dentro del panel principal, pulsamos en nuestro Avatar y luego en User Settings Una vez dentro de nuestros settings pulsar en Tokens Damos un nombre a nuestro token, pulsamos en Generate Token y ya tenemos nuestro token generado. Nos copiamos[…]

En este artículo vamos a ver como crear un Web App con la versión de 0.12 de Terraform. Para realizar los pasos descritos en este artículo necesitamos: Una cuenta de Azure Terraform 0.12 instalado Visual Studio Code A continuación describo los pasos a seguir: Lo primero que necesitamos es crear un fichero main.tf el cuál debe contener el siguiente contenido: En este fichero especificamos que vamos a crear tres recursos que son: Un grupo de recursos llamado TFRecetasDevOpsAppServiceRG que va a aestar ubicado en West Europe Un App Service plan llamado recetasdevopsserviceplan y con capa de precios Standard y tamaño S1 Un Web App/App Service que va a tener como url https://recetasdevopsterraform.azurewebsites.net Una vez tenemos ya nuestro fichero creado con[…]