O que é e como funciona
O azure promillia é uma ferramenta disponível para usuários da Microsoft Azure que automatiza certos processos de configuração e deployment. Basicamente, o que ela faz é ler um arquivo de configuração e aplicar as mudanças diretamente no ambiente Azure, sem precisar abrir o portal e clicar em dezenas de menus. Eu usei isso por bastante tempo quando precisava provisionar ambientes de teste repetidamente, antes que os Bicep templates e os ARM templates padronizados tivessem virado o padrão da indústria. Na prática, o funcionamento é simples: você instala a CLI, faz login com suas credenciais Azure, aponta para o repositório onde estão os manifests de configuração, e executa o comando de deploy. O promillia vai resolver as dependências entre os recursos, criar os resource groups que ainda não existem, e atualizar os que já estão presentes. O problema é que ele não é oficialmente mantido pela Microsoft, então a documentação é escassa e os exemplos que você encontra na internet são frequentemente desatualizados.
azure promillia: instalação e primeiros passos
Para instalar, você precisa primeiro garantir que o Azure CLI esteja configurado corretamente no seu sistema. O comando padrão é pip install azure-promillia se estiver usando Python 3.8 ou superior. Dependendo da sua versão do sistema operacional, pode ser necessário rodar com sudo ou usar um ambiente virtual para não conflitar com pacotes do próprio CLI da Microsoft. Uma vez instalado, o primeiro passo é autenticar usando az login, e isso já dá o primeiro sinal de alerta: a promillia depende da sessão ativa do CLI, então se o token expirar no meio de um deploy longo, você volta para zero. Depois da autenticação, o comando base para verificar o estado atual dos seus recursos é promillia status --subscription
👉 Clique no botão abaixo para saber mais sobre o assunto!
Para fazer o deploy propriamente dito, o comando é promillia apply --manifest /caminho/para/seu/manifest.yaml. O formato do manifest é baseado em YAML, mas tem uma estrutura própria que não segue o padrão ARM nem Bicep, o que exige que você aprenda a sintaxe dela do zero se nunca tiver usado. Recursos como Virtual Networks, Resource Groups, e Storage Accounts são suportados, mas recursos mais complexos como AKS, Service Fabric, ou recursos de segurança avançada têm suporte parcial ou nenhum. Um detalhe importante que as pessoas geralmente descobrem na marra: a promillia não tem rollback automático. Se algo der errado durante o deploy, o estado fica inconsistente e você precisa corrigir manualmente ou rodar um promillia destroy no recurso específico para limpar e tentar de novo. Eu perdi quase dois dias num ambiente de staging porque o deploy parou exatamente no meio de uma cadeia de dependências entre uma VM e um disco gerenciado, e o estado ficou preso num limbo que só foi resolvido com intervenção manual no portal.
Outro ponto que vale a pena mencionar é sobre a versão. A última versão estável que encontrei funcional foi a 0.7.3, lançada há algum tempo. Versões mais recentes disponíveis em repositórios alternativos frequentemente quebram compatibilidade com subscriptions mais novas da Azure, especialmente aquelas que usam gerenciamento de identidade gerenciada de forma diferente. Se você estiver num ambiente corporativo com políticas de identidade restritas, pode encontrar erros de permissão que não aparecem em contas pessoais de teste. Se o seu objetivo é apenas automação simples de recursos básicos e você já tem familiaridade com PowerShell ou Bicep, o custo de aprender o azure promillia pode não valer a pena. Ele ainda funciona para cenários específicos, mas a trajetória da ferramenta não parece ser de crescimento, e a comunidade de suporte é pequena. Alternativas como Terraform com o provider da Azure, ou os próprios Bicep templates nativos, oferecem manutenção mais ativa e cobertura muito mais ampla de recursos.