Pular para o conteúdo principal

Visão Geral do Workspace Platform

O workspace Platform gerencia os serviços operacionais de execução contínua que suportam o pipeline de telemetria e o cache de build para o desenvolvimento local e integração contínua.


Visão Geral da Arquitetura

O workspace platform gerencia três serviços principais em tempo de execução:

  1. traefik: O controlador de ingress do cluster e API Gateway, lidando com o ingress de clientes externos e roteamento interno de serviço para serviço.
  2. otel-collector: Um coletor OpenTelemetry que agrega métricas de telemetria, logs e rastros distribuídos, exportando-os para o Grafana Cloud e Sentry.
  3. turbocache: Um servidor de cache remoto de alto desempenho que armazena artefatos de cache do Turborepo, acelerando os pipelines de compilação dos desenvolvedores.

Estrutura de Diretórios

platform/
├── infrastructure/
│ ├── docker/ # Configurações do Docker Compose (compose.yaml)
│ └── kubernetes/ # Manifestos Kubernetes (traefik, otel, turbocache)
├── services/
│ ├── monitor/ # Esquemas de configuração para o coletor OTLP
│ └── turbocache/ # Dockerfiles e lógica de cache
├── package.json # Manifesto do workspace com comandos de plataforma
└── AGENTS.md # Diretrizes locais para desenvolvedores e agentes de IA

Diretrizes de Segurança e Boas Práticas

Independência de Serviços

Os serviços neste workspace devem expor endpoints genéricos e evitar acoplamento forte com regras de negócios específicas de aplicação.

  • Orquestração de Docker: Sempre inicialize os serviços usando os comandos escopados definidos abaixo. Nunca execute dependências de container manualmente.
  • Telemetria Interna: O coletor OpenTelemetry (otel-collector) serve como o ponto de entrada unificado para telemetria de desenvolvimento. Todas as aplicações da plataforma em tempo de execução DEVEM encaminhar estatísticas usando protocolos OTLP.
  • Persistência de Volumes: Arquivos de cache do Turborepo e diretórios de estado do OpenTelemetry devem ser mapeados para pastas locais da máquina hospedeira para evitar perda de dados entre reinicializações.

Operações Locais

Todos os comandos devem ser executados a partir do diretório raiz do repositório:

AçãoComando
Iniciar Stackpnpm platform:up
Parar Stackpnpm platform:down
Resetar Dadospnpm platform:reset