Skip to content

Build e Deploy

CAKeysama edited this page Sep 30, 2026 · 1 revision

Build e Deploy

Comandos executados dentro de retool/.

Build de produção

npm run build

Gera dist/ com o Vite. O build incorpora as variáveis do .env usado no momento, ou seja, define qual projeto Firebase o site publicado vai usar. O Vite emite dois avisos conhecidos que não impedem o build: pacote maior que 500 kB e import dinâmico do datasource.

Para conferir localmente:

npm run preview

Escolha do projeto

O deploy vai para o projeto do alias default (retool-c25a9), a menos que você informe --project. Se o .env usado no build tiver VITE_USE_FALLBACK_DB=true, o app usa o projeto fallback (retool2-ef7be). Nesse caso, regras, índices e funções precisam ir para o fallback. Veja Configuração do Ambiente.

A conta logada no CLI precisa ter permissão no projeto:

npx firebase-tools login:list
npx firebase-tools login:add
npx firebase-tools login:use seu-email@exemplo.com

Também é possível escolher a conta em um comando só, com --account seu-email@exemplo.com, sem os sinais < >.

O que publicar

Parte Comando Observações
Regras do Firestore npx firebase-tools deploy --only firestore:rules --project fallback Obrigatório: sem as regras novas, o banco fica sem as proteções descritas em Segurança
Índices npx firebase-tools deploy --only firestore:indexes --project fallback Levam alguns minutos para ficar prontos (Console → Firestore → Índices)
Regras do Storage npx firebase-tools deploy --only storage --project fallback
Cloud Functions npx firebase-tools deploy --only functions --project fallback Exige o plano Blaze; o predeploy compila functions/
Hosting npx firebase-tools deploy --only hosting Publica o dist/ do último build

Tudo o que é do banco, de uma vez:

npx firebase-tools deploy --only firestore:rules,firestore:indexes,storage,functions --project fallback

Troque fallback por default se o .env apontar para o projeto principal. Sem o plano Blaze, remova functions da lista: só a geração de nova senha temporária fica indisponível.

O script npm run deploy roda npm run build e npx firebase-tools deploy sem --project, isto é, publica tudo no default. Só use esse script se o app também usar o default.

Depois do deploy

  1. Confira os índices no Console até todos aparecerem como ativados.
  2. Se o banco estiver vazio, promova a primeira conta de Administração (ver Usuários, Cargos e Permissões).
  3. Abra Administração → Histórico de ações e aplique alguns filtros para confirmar os índices.

Clone this wiki locally