Publicação do Site de Documentação¶
Este guia descreve como provisionar a infraestrutura e configurar o pipeline de publicação automática do site MkDocs.
Visão geral¶
Push na branch master
→ Azure DevOps Pipeline (azure-pipelines.yml)
→ pip install requirements.txt
→ validate_release_notes.py
→ mkdocs build --strict
→ Azure Static Web Apps (hospedagem)
Pré-requisitos¶
- Acesso ao Azure Portal com permissão para criar recursos no grupo de recursos do AMia
- Acesso ao projeto Azure DevOps com permissão de administrador de pipeline
- Python 3.11 disponível no agente de build (ubuntu-latest inclui Python por padrão)
Passo 1 — Provisionar Azure Static Web Apps¶
Via Azure Portal¶
- Acesse o Azure Portal
- Crie um novo recurso: Static Web Apps
- Configure:
- Subscription: assinatura do AMia
- Resource Group: grupo de recursos do AMia
- Name:
amia-roadmap-docs - Region: Brazil South
- Plan: Free (suficiente para documentação)
- Source: Other (o deploy será feito via pipeline Azure DevOps)
- Clique em Review + Create → Create
- Após criação, acesse o recurso e copie o Deployment Token
Via Terraform (recomendado para produção)¶
Adicione ao módulo Terraform existente:
resource "azurerm_static_web_app" "roadmap_docs" {
name = "amia-roadmap-docs"
resource_group_name = azurerm_resource_group.amia.name
location = "Brazil South"
sku_tier = "Free"
sku_size = "Free"
}
Passo 2 — Configurar Variable Group no Azure DevOps¶
- Acesse o projeto no Azure DevOps
- Vá em Pipelines → Library → + Variable group
- Configure:
- Name:
amia-roadmap-docs - Variables:
AZURE_STATIC_WEB_APPS_API_TOKEN=<deployment-token-do-passo-1>- Marque a variável como secret (cadeado)
- Salve o Variable Group
Passo 3 — Criar o pipeline no Azure DevOps¶
- Acesse Pipelines → New Pipeline
- Selecione Azure Repos Git → repositório
amIA-Roadmap - Selecione Existing Azure Pipelines YAML file
- Caminho:
/azure-pipelines.yml - Clique em Continue → Run
O pipeline executará imediatamente e publicará o site pela primeira vez.
Passo 4 — Verificar publicação¶
Após o pipeline concluir com sucesso:
- Acesse o recurso Static Web Apps no Azure Portal
- Copie a URL do site (ex:
https://amia-roadmap-docs.azurestaticapps.net) - Acesse a URL e verifique que o site está funcionando
Configurar domínio customizado (opcional)¶
- No recurso Static Web Apps, acesse Custom domains
- Adicione o domínio desejado (ex:
docs.amia.com) - Configure o registro DNS conforme instruído pelo Azure
Solução de problemas¶
| Problema | Causa provável | Solução |
|---|---|---|
| Build falha com "Aborted with N warnings" | Links internos quebrados no Markdown | Execute mkdocs build --strict localmente e corrija os links |
| Build falha em "validate_release_notes" | Release Note fora do template | Execute python3 scripts/validate_release_notes.py e corrija os erros |
| Deploy falha com "Unauthorized" | Token inválido ou expirado | Gere novo token no Azure Portal e atualize o Variable Group |
| Site não atualiza após push | Pipeline não acionado | Verifique que o push foi na branch master — branches de feature não acionam o pipeline |