Módulo para criação do ambiente para testar a aplicação Elsa Workflows como parte do curso "Descomplicando o Terraform" da Linuxtips.
- Terraform instalado
- Conta no Azure
- Autenticação do Terraform para Azure
O primeiro plano era construir um módulo para prover uma aplicação web com banco de dados, tanto em ambiente de desenvolvimento quanto de produção. Mas devido ao atropelo irracional imposto pelo modo de produção atual e as obrigações sociais, o escopo deste trabalho foi reduzido: A aplicação Elsa Workflows foi escolhida para ser testada num ambiente simples.
-
Ocorreu um problema em implementar uma única aplicação com o servidor e studio, pois é necessário definir a variável de ambiente
HTTP__BASEURL
, neste caso com o valor retornado pelo recurso.
Então, aconteceu o:Error: Self-referential block
, logo a solução mais simples foi separar em duas aplicações de container (Servidor e Studio). -
Ao inves de construir dois módulos com uso de output de um como input do outro, para estudar alguns mecanismos explicados no curso, decidi fazer um módulo de aplicação com implementação de
for_each
. Logo deve-se executar duas vezes o comando:terraform apply
- Na primeira vez peguea url do server no output:
instancias = [ "elsa-server--74rhvcc.ambitioussand-a1d91173.eastus.azurecontainerapps.io", "elsa-studio--0000001.ambitioussand-a1d91173.eastus.azurecontainerapps.io", ]
Cole no arquivo
/main.tf
no valor da variavel de ambienteELSASERVER__URL
e execute mais uma vez para testar a aplicação elsa worfklow. Acredito que no uso deste aplicativo em produção já terá um dominio proprio e não precisará rodar duas vezes para aplicar a solução.
Name | Version |
---|---|
azurerm | ~> 3.0 |
No modules.
Name | Type |
---|---|
azurerm_container_app | resource |
azurerm_container_app_environment | resource |
azurerm_log_analytics_workspace | resource |
azurerm_resource_group | resource |
Name | Description |
---|---|
azurerm_container_app_url | URL do Container App |