Cloud & Deploy

GCP (Google Cloud Platform)

O ambiente principal (stable e dev) roda na GCP, no projeto ciandt-code-transpose.

Arquitetura Cloud GCP do Infinity Copilot

Projetos GCP

ProjetoUso
ciandt-code-transposeCluster de produção e deploy das instâncias
ciandt-com-growthopt-latamArtifact Registry para pacotes pip privados (desenvolvimento)

Artifact Registry — Pacotes Python

Pacotes Python do framework (copilot-core, plugins) são publicados como pacotes pip privados:

https://us-east1-python.pkg.dev/ciandt-com-growthopt-latam/copilot-python-libs/simple/

Imagens Docker

Imagens de cada módulo são publicadas no Artifact Registry:

southamerica-east1-docker.pkg.dev/ciandt-code-transpose/copilot/<modulo>:<tag>

AWS (Amazon Web Services)

O ambiente AWS (dev) é utilizado para instâncias de clientes com requisito de cloud AWS.

Arquitetura Cloud AWS do Infinity Copilot

Plugins AWS

PluginEquivalente GCP
copilot-aws-s3copilot-gcp-gcs
copilot-aws-sns-sqscopilot-pubsub
copilot-aws-documentdbcopilot-mongodb (MongoDB nativo)

A troca entre GCP e AWS é feita na camada de instância — o core não muda.


Deploy Kubernetes

O Infinity Copilot roda em um cluster Kubernetes (GKE). Todos os componentes — aplicação, mensageria e bancos de dados — são deployados no mesmo cluster.

  • Cluster: copilots-cluster
  • Região: southamerica-east1
  • Projeto GCP: ciandt-code-transpose
Diagrama de deploy Kubernetes do Infinity Copilot

Ambientes

AmbienteCloudDescrição
stableGCPProdução
devGCPDesenvolvimento / homologação
devAWSDesenvolvimento AWS

Mensageria

O RabbitMQ é o broker padrão por ser simples de operar dentro do cluster Kubernetes. Outros brokers suportados:

  • GCP: Pub/Sub (copilot-pubsub)
  • AWS: SQS/SNS (copilot-aws-sns-sqs)

A troca de broker não requer alteração no core — apenas na instância, via configure_di.

Banco de Dados

BancoUsoObservação
MongoDBInterações de usuário, configurações da plataformaUsado pelo core e knowledge-database
PostgreSQL + pgvectorEmbeddings (RAG) e CMS (Strapi/Argilla)Instalado no cluster; idealmente em serviço gerenciado