Pular para o conteúdo
Octo × Maestro Pedir um diagnóstico

Octo para MapGuide Maestro e automação

Uma referência quebrada derruba várias camadas. Quem promove para produção é você.

O MapGuide Maestro está na 6.0m13 e já traz o que a automação pede: o MgTileSeeder para semear tiles por linha de comando em Windows e Linux, o Maestro API no NuGet para ler, validar e regravar recursos em lote, e um console IronPython dentro do aplicativo. O Octo inventaria o repositório, mapeia quem depende de quem, reponta camadas numa pasta de homologação e confere antes de qualquer troca. Produção, janela de carga e exclusão ficam com o administrador do servidor.

Um terminal roda o MgTileSeeder com o registro de tiles que falharam; o Octo, no centro, liga o terminal a um grafo de dependências do repositório do MapGuide, em que uma Feature Source alimenta camadas e mapas, e a uma grade de tiles de um bairro fictício com tiles renderizados e dois que falharam $ MgTileSeeder mapguide --map Library://…/Base.MapDefinition --max-parallelism 4 --failed-requests falhas.txt tiles processados rendered · ok failed → mapguide_replay BAIRRO FICTÍCIO · ZOOM 16 ok falhou DADOS FICTÍCIOS ENUMERATERESOURCEREFERENCES Lotes_MSSQL.FeatureSource Lotes IPTU Quadras Cadastro.Map FS → 3 CAMADAS → 1 MAPA HOMOLOGAÇÃO Library://Homologacao/ repontadas · válidas com coluna ausente → revisar produção: o administrador dotnet add package OSGeo.MapGuide.MaestroAPI OCTO × MAESTRO 6.0m13 · MGOS 4.0 M-01
MapGuide Maestro6.0m13de 15/01/2025, LGPL 2.1, commits até 30/10/2026
MapGuide Open Source4.0versão final anunciada em 12/10/2025
MgCooker removido6.0m11em 03/08/2022; o MgTileSeeder ficou no lugar
Fontes12listadas no fim da página
01

O que o Octo faz com o Maestro e a automação do MapGuide.

Seis entregas possíveis, tiradas do levantamento. Todas começam lendo, gravam só numa pasta de homologação e vão para revisão do administrador do servidor.

Inventário do repositório

Lista tudo o que há na Library:// com ENUMERATERESOURCES, separa por tipo (Feature Source, camada, mapa, layout, tile set) e registra a versão do servidor com GETSITEVERSION.

Entrega: planilha por recurso, sem alterar nada

Mapa de dependências

Para cada Feature Source, quem a usa (ENUMERATERESOURCEREFERENCES): camadas, mapas e layouts. Mostra as órfãs, que só uma pessoa pode decidir apagar.

Entrega: grafo e lista de órfãs candidatas

Troca de banco em massa

Reponta Layer Definitions de Feature Sources antigas para novas (SQL Server para PostGIS, servidor para servidor) a partir de um de-para aprovado, com diff por camada e cópia em homologação.

Entrega: camadas repontadas fora de produção

Semeadura de tiles por área

Roda o MgTileSeeder por bairro ou distrito no tile set XYZ e o tile set clássico inteiro (no código atual o verbo mapguide aceita o recorte por área, mas não o aplica), com paralelismo baixo, janela noturna e repetição só dos tiles que falharam (mapguide_replay, xyz_replay).

Entrega: cache aquecido + log de falhas

Auditoria antes de atualizar

Valida camadas e mapas em lote com os mesmos validadores do Maestro (ResourceValidatorSet) e devolve um CSV de erros e avisos, com código de saída para agendador ou CI.

Entrega: relatório por recurso e gravidade

Script dentro do Maestro

Para quem já trabalha no aplicativo: scripts para o console IronPython que usam as conexões abertas e perguntam na tela antes de cada gravação.

Entrega: script curto, comentado, com confirmação
02

Oito braços, um repositório conferido.

O mesmo ciclo do Octo, aplicado à manutenção de um servidor MapGuide. Cada braço tem um papel estreito; quem promove para produção, define a carga aceitável e apaga recursos são pessoas.

  1. Descoberta

    Levanta o que já existe

    Versão do servidor, do Maestro e do MgTileSeeder em cada máquina, inventário da Library:// e quem depende de quem.

  2. Dados

    Confere as fontes

    Esquema das Feature Sources antigas e novas e as colunas usadas em filtro, rótulo e tema de cada camada.

  3. Segurança

    Cuida do acesso e do dado

    Usuário só de leitura para inventário, senha fora de código e de URL, o que o Anonymous enxerga e dado pessoal (LGPD) em camada pública.

  4. Arquitetura

    Escolhe o caminho

    mapagent com curl, Maestro API em .NET ou console IronPython; pasta de homologação; ordem da troca e da semeadura.

  5. Desenvolvimento

    Escreve o script

    Shell, Python e C# com ensaio por padrão, log, gravação só em homologação e a fonte de cada sintaxe anotada no arquivo.

  6. Revisão

    Confere pelo resultado

    Validação em lote, diff por camada, imagem de antes e depois do mesmo mapa e contagem de tiles. Ausência de erro não é conferência.

  7. Publicação

    Entrega a homologação

    Só com o seu ok, entrega a pasta de homologação e o relatório. A promoção para produção é feita pelo administrador.

  8. Documentação

    Registra o que vale no seu servidor

    De-para aprovado, versões, comandos usados, janelas combinadas e quem aprovou cada passo. O que vale num servidor não vale sozinho para outro.

O Octo trabalha com acesso de leitura e como apoio. Não grava em produção, não apaga recurso, não escolhe a janela de carga e não substitui o administrador do servidor nem o responsável técnico pelo conteúdo do mapa.

03

Cada tarefa, o seu caminho.

O critério que o Octo usa para escolher, com a documentação da versão instalada.

TarefaCaminhoObservação
Saber o que há no repositórioENUMERATERESOURCES com DEPTH=-1Nada é alterado
Quem depende de um recursoENUMERATERESOURCEREFERENCES ou EnumerateResourceReferencesAplicação externa não aparece
Repontar camadasXML <ResourceId> e <FeatureName>; ou ISubLayerDefinition.ResourceIdPrimeiro numa pasta de homologação
Trocar a conexão de uma fonteIFeatureSource.SetConnectionPropertyCredencial fora do XML quando der
Validar tudoResourceValidatorSet.ValidateMesmos validadores do Maestro
Mover sem quebrarMoveResourceWithReferences, CopyFolderWithReferencesConferir com o inventário depois
Levar para outro servidorPacote .mgp pelo Maestro ou pelo Site AdministratorPacote de centenas de MB: pelo servidor
Semear tilesMgTileSeeder mapguide ou xyz--failed-requests e *_replay
Mapa estático publicadoMaestro.MapPublisher.exe publishRevisar dados e chaves que vão junto
Script com a tela abertaConsole IronPython, objeto appConfirma na tela antes de gravar
04

Do inventário à manutenção de rotina.

Três degraus. Cada um só faz sentido depois que o anterior mostrou resultado na sua equipe.

Proposta, não promessa

1 Hoje

Inventário e auditoria

O Octo mostra o que há no repositório, quem depende de quem e o que a validação aponta, sem mexer em nada.

  • Planilha de recursos por tipo
  • Mapa de dependências e órfãs candidatas
  • Relatório de validação por gravidade
Ganho: saber o tamanho do problema antes de mexer
2 Próximo

Trocas e semeadura em lote

Camadas repontadas em homologação a partir de um de-para aprovado e semeadura por área com repetição das falhas.

  • Diff por camada e cópia em homologação
  • Semeadura noturna com log de falhas
  • Relatório para o administrador promover
Ganho: a equipe revisa diferenças, não camada por camada
3 Depois

Manutenção de rotina

A validação roda num agendador e avisa quando um recurso quebra; a semeadura segue a janela combinada.

  • Validação agendada com código de saída
  • Semeadura recorrente por área
  • Registro de cada troca e de quem aprovou
Ganho: a referência quebrada aparece antes do usuário reclamar
05

Confirmado em fonte.

Cada ponto abaixo tem fonte publicada pela OSGeo (página do projeto, listas oficiais, área de downloads), pelo repositório oficial ou pela Autodesk. Os exemplos são roteiros, não execuções. As fontes estão na seção seguinte.

4

pontos com fonte publicada, cada um com a referência indicada ao lado.

ConfirmadoMaestro 6.0m13, de 15/01/2025
Última versão publicada, com instalador, zip, MgTileSeeder para Linux e Windows e três pacotes NuGet; há commits no repositório até 30/10/2026, sem versão nova.Fonte: releases e commits do GitHub (jumpinjackie/mapguide-maestro)
ConfirmadoMgCooker saiu na 6.0m11
Em 03/08/2022 o Maestro virou aplicativo .NET 6 autocontido e o MgCooker foi removido; o MgTileSeeder, só de linha de comando, ficou no lugar.Fonte: notas da release 6.0m11 e guia do MgTileSeeder
ConfirmadoLicença e alvo do Maestro API
LGPL 2.1 na página do repositório, LGPL-2.1-only no NuGet e "2.1 ou posterior" no cabeçalho do código; o API mira .NET Standard 2.0 e está só em pré-lançamento.Fonte: repositório, NuGet e código-fonte do projeto
ConfirmadoMapGuide Open Source 4.0
Versão final anunciada em 12/10/2025 na lista mapguide-users, depois do RC1 de 10/09/2025.Fonte: lists.osgeo.org, mapguide-users
06

O que o Octo faz e o que fica com vocês.

O Octo prepara tudo, mas não assina. O documento que vale continua com quem responde por ele.

O Octo prepara

Levanta, calcula, organiza e gera os documentos: scripts, inventários, relatórios e mapas.

Entrega: material pronto para conferir

A sua equipe confere

O profissional habilitado confere o que o Octo entregou antes de assinar. Se algo não fecha, volta para o Octo com a correção.

Etapa: conferência por quem assina

Quem assina

O Octo não assina. Projeto, laudo, ART/RRT, prestação de contas e qualquer documento oficial continuam assinados pelo profissional habilitado da empresa ou do órgão: aqui, o responsável técnico pelo mapa ou pelo sistema.

Assinatura: responsável técnico pelo mapa ou sistema
07

Fontes.

Repositório, releases, guias e código do MapGuide Maestro, registro do NuGet e lista de discussão da OSGeo, consultados em 31/10/2026.

Seu repositório MapGuide, mapeado antes de mexer.

O diagnóstico começa por um inventário do repositório e um mapa de quem depende de quem, sem gravar nada. Você recebe a lista do que está quebrado, do que pode ser trocado em lote e das perguntas que só a sua equipe responde, e decide com ela na mão.