Visualizador de Terraform Plan

Analisa a saida JSON ou texto do Terraform plan, classifica mudancas e mostra um resumo orientado por dependencias

Cole um JSON de Terraform plan gerado por "terraform show -json" ou um plan em texto. A ferramenta classifica recursos em create, update, delete, replace, read e no-op e resume o impacto por provedor e dependencia.

Como usar:

  • Entrada de Terraform Plan: cole o JSON ou o texto
  • Arquivo do plano: envie um arquivo salvo
  • Formato de entrada: use auto para deteccao automatica
  • Mostrar grafo de dependencias: desenha um grafo leve com as primeiras relacoes

O melhor resultado vem do Terraform JSON, que traz metadados e dependencias mais limpos.

Exemplos de resultados

1 Exemplos

Revisar um apply com VPC e politicas

Use o plano JSON para ver novos recursos, substituicoes e provedores mais afetados.

Terraform Plan Summary
Ver parâmetros de entrada
{ "planInput": "{\n \"format_version\": \"1.2\",\n \"resource_changes\": [\n {\n \"address\": \"aws_vpc.main\",\n \"mode\": \"managed\",\n \"type\": \"aws_vpc\",\n \"name\": \"main\",\n \"provider_name\": \"provider[\\\"registry.terraform.io/hashicorp/aws\\\"]\",\n \"change\": {\n \"actions\": [\n \"create\"\n ]\n }\n },\n {\n \"address\": \"aws_subnet.app\",\n \"mode\": \"managed\",\n \"type\": \"aws_subnet\",\n \"name\": \"app\",\n \"provider_name\": \"provider[\\\"registry.terraform.io/hashicorp/aws\\\"]\",\n \"change\": {\n \"actions\": [\n \"create\"\n ]\n }\n },\n {\n \"address\": \"aws_iam_policy.read\",\n \"mode\": \"managed\",\n \"type\": \"aws_iam_policy\",\n \"name\": \"read\",\n \"provider_name\": \"provider[\\\"registry.terraform.io/hashicorp/aws\\\"]\",\n \"change\": {\n \"actions\": [\n \"update\"\n ]\n }\n },\n {\n \"address\": \"aws_security_group.web\",\n \"mode\": \"managed\",\n \"type\": \"aws_security_group\",\n \"name\": \"web\",\n \"provider_name\": \"provider[\\\"registry.terraform.io/hashicorp/aws\\\"]\",\n \"change\": {\n \"actions\": [\n \"delete\",\n \"create\"\n ]\n }\n }\n ],\n \"configuration\": {\n \"root_module\": {\n \"resources\": [\n {\n \"address\": \"aws_vpc.main\",\n \"provider_name\": \"provider[\\\"registry.terraform.io/hashicorp/aws\\\"]\",\n \"depends_on\": []\n },\n {\n \"address\": \"aws_subnet.app\",\n \"provider_name\": \"provider[\\\"registry.terraform.io/hashicorp/aws\\\"]\",\n \"depends_on\": [\n \"aws_vpc.main\"\n ]\n },\n {\n \"address\": \"aws_iam_policy.read\",\n \"provider_name\": \"provider[\\\"registry.terraform.io/hashicorp/aws\\\"]\",\n \"depends_on\": [\n \"aws_vpc.main\"\n ]\n },\n {\n \"address\": \"aws_security_group.web\",\n \"provider_name\": \"provider[\\\"registry.terraform.io/hashicorp/aws\\\"]\",\n \"depends_on\": [\n \"aws_vpc.main\",\n \"aws_subnet.app\"\n ]\n }\n ]\n }\n }\n}", "planFile": "", "inputFormat": "json", "showDependencyGraph": true }

Click to upload file or drag and drop file here

Maximum file size: 15MB Supported formats: application/json, text/plain, application/octet-stream, .json, .txt

Fatos principais

Categoria
Desenvolvimento e Web
Tipos de entrada
textarea, file, select, checkbox
Tipo de saída
html
Cobertura de amostras
4
API disponível
Yes

Visão geral

O Visualizador de Terraform Plan é uma ferramenta essencial para analisar e compreender as mudanças propostas na sua infraestrutura antes de aplicá-las. Ao processar saídas em JSON ou texto geradas pelo comando Terraform, ele classifica automaticamente os recursos em categorias como criação, atualização, exclusão e substituição, além de gerar um resumo visual orientado por dependências para facilitar a revisão de código e garantir implantações mais seguras.

Quando usar

  • Antes de executar um apply crítico para revisar visualmente quais recursos serão criados, modificados ou destruídos.
  • Durante revisões de código (Pull Requests) para compartilhar um resumo claro do impacto da infraestrutura com a equipe.
  • Ao depurar planos complexos do Terraform para entender a ordem de execução e as dependências entre os recursos afetados.

Como funciona

  • Cole a saída de texto do seu plano ou o JSON gerado pelo comando terraform show -json na área de texto, ou faça o upload do arquivo correspondente.
  • Selecione o formato de entrada (JSON ou Text) ou deixe em 'Auto' para que a ferramenta detecte automaticamente.
  • Ative a opção 'Mostrar grafo de dependências' se desejar visualizar as relações entre os recursos.
  • A ferramenta processa os dados e exibe um painel HTML interativo com o resumo das ações por provedor e o grafo de dependências.

Casos de uso

Auditoria de segurança para garantir que nenhum recurso crítico, como bancos de dados ou grupos de segurança, seja acidentalmente excluído ou substituído.
Documentação de mudanças de infraestrutura em tickets de Change Management usando o resumo visual gerado.
Onboarding de novos engenheiros DevOps, ajudando-os a visualizar como os módulos do Terraform se conectam e afetam o ambiente de nuvem.

Exemplos

1. Revisão de criação de VPC e Políticas

Engenheiro de DevOps
Contexto
A equipe está implementando uma nova infraestrutura de rede na AWS, incluindo VPC, sub-redes e políticas do IAM.
Problema
O plano gerado no terminal é muito longo e difícil de ler, dificultando a confirmação de que a VPC será criada antes dos outros recursos e quais itens serão substituídos.
Como usar
Gere o plano com 'terraform show -json', cole o resultado no campo 'Entrada do Terraform Plan' e ative 'Mostrar grafo de dependências'.
Configuração de exemplo
{
  "format_version": "1.2",
  "resource_changes": [
    {
      "address": "aws_vpc.main",
      "change": { "actions": ["create"] }
    }
  ]
}
Resultado
A ferramenta exibe um painel HTML destacando a criação da VPC e desenha um grafo mostrando que a sub-rede e as políticas dependem da VPC.

2. Análise rápida de plano em texto

Desenvolvedor Backend
Contexto
Um desenvolvedor fez uma pequena alteração em uma variável de ambiente de uma função Lambda e rodou o comando terraform plan.
Problema
Ele precisa verificar rapidamente se a alteração causará a recriação (replace) da função ou apenas uma atualização (update) in-place.
Como usar
Copie a saída de texto do terminal, cole na ferramenta, defina o 'Formato de entrada' como 'Text' e analise o resumo gerado.
Resultado
O visualizador classifica imediatamente a mudança, mostrando claramente no resumo em HTML se a ação será um 'update' ou um 'replace' destrutivo.

Testar com amostras

json, text, file

Hubs relacionados

FAQ

Como gero o JSON do Terraform plan?

Execute 'terraform plan -out=tfplan' seguido de 'terraform show -json tfplan > plan.json' no seu terminal.

A ferramenta suporta planos em texto puro?

Sim, você pode colar a saída padrão do terminal. No entanto, o formato JSON oferece metadados mais ricos e um grafo de dependências mais preciso.

O que significam as categorias de mudança?

Elas indicam a ação que o Terraform executará: 'create' (criar), 'update' (atualizar), 'delete' (remover), 'replace' (substituir), 'read' (ler) e 'no-op' (sem alteração).

Posso ver as dependências entre os recursos?

Sim, ativando a opção 'Mostrar grafo de dependências', a ferramenta desenha um grafo leve mostrando as relações identificadas no plano.

Qual é o limite de tamanho para o upload de arquivos?

Você pode fazer o upload de arquivos de plano (JSON ou texto) com tamanho de até 15 MB.

Documentação da API

Ponto final da solicitação

POST /pt/api/tools/terraform-plan-visualizer

Parâmetros da solicitação

Nome do parâmetro Tipo Requerido Descrição
planInput textarea Não -
planFile file (Upload necessário) Não -
inputFormat select Não -
showDependencyGraph checkbox Não -

Os parâmetros de tipo arquivo precisam ser carregados primeiro via POST /upload/terraform-plan-visualizer para obter filePath, depois filePath deve ser passado ao campo de arquivo correspondente.

Formato de resposta

{
  "result": "
Processed HTML content
", "error": "Error message (optional)", "message": "Notification message (optional)", "metadata": { "key": "value" } }
HTML: HTML

Documentação de MCP

Adicione este ferramenta à sua configuração de servidor MCP:

{
  "mcpServers": {
    "elysiatools-terraform-plan-visualizer": {
      "name": "terraform-plan-visualizer",
      "description": "Analisa a saida JSON ou texto do Terraform plan, classifica mudancas e mostra um resumo orientado por dependencias",
      "baseUrl": "https://elysiatools.com/mcp/sse?toolId=terraform-plan-visualizer",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

Você pode encadear várias ferramentas, ex: `https://elysiatools.com/mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp`, máx 20 ferramentas.

Suporta links de arquivos URL ou codificação Base64 para parâmetros de arquivo.

Se você encontrar algum problema, por favor, entre em contato conosco em [email protected]