Skip to main content

Tamanho

O limite vale para o envio de um projeto novo e para o envio de código novo. O painel avisa antes de enviar se o arquivo passar do limite; pela API, a resposta é 413 invalid_zip com o campo limitMb.
Quase sempre, o que estoura o limite são as dependências. Você não precisa enviar node_modules nem venv: a Cube instala tudo a partir do package.json ou do requirements.txt.

O que fica de fora

Estas pastas são ignoradas na extração, mesmo que estejam no .zip:

node_modules

Instalada a partir do package.json.

venv e .venv

Criado a partir do requirements.txt.

.git

O histórico do repositório não é usado.

pycache

Gerado pelo Python ao rodar.

__MACOSX

Sobra do “Comprimir” do macOS.
Mesmo ignoradas, elas contam no tamanho do .zip. Tire antes de compactar:
Não coloque o .env no .zip. Guarde tokens e senhas em variáveis de ambiente.

O que é recusado

Um .zip recusado não muda nada: num projeto que já existe, os arquivos de antes continuam lá.

Uma pasta dentro do .zip

Se você compactou a pasta (e não o conteúdo dela), tudo bem: quando o .zip tem uma única pasta no topo e nenhum cube.json na raiz, essa pasta vira a raiz do projeto.

A instalação

Depois de extrair, a Cube instala as dependências numa etapa separada:
  • Node.js: npm ci com package-lock.json, senão npm install. Depois, o build (veja a chave build do cube.json).
  • Python: pip install -r requirements.txt num ambiente próprio do projeto.
  • A instalação tem até 5 minutos e até 1 GB de memória, que não sai do seu plano.
  • A saída aparece em Logs › Instalação.
  • Num envio seguinte, se o manifesto não mudou, a instalação é pulada.