Fluxo de deploy
Quando você executa jelou deploy, a plataforma:
- Lê o
jelou.json para encontrar o slug e o entrypoint
- Coleta todos os arquivos deployáveis do diretório
- Exibe um resumo com nomes e tamanhos
- Faz upload dos arquivos e executa o deploy
- Renomeia seu entrypoint para
user-function.ts
- Gera um wrapper
main.ts que importa seu código e inicia o servidor
- Injeta seus secrets como variáveis de ambiente
jelou deploy
# ▸ Files: index.ts (1.2 KB), helpers.ts (800 B), jelou.json (98 B), deno.json (65 B)
# ? Deploy query-customer? (Y/n) y
# ✓ Deployed
# ▸ ID: dep_abc12345
# ▸ URL: https://query-customer.fn.jelou.ai
Limites de arquivos
| Limite | Valor |
|---|
| Arquivos por deploy | 20 |
| Tamanho por arquivo | 256 KB |
| Tamanho total | 1 MB |
| Extensões permitidas | .ts, .js, .json, .md, .txt |
| Entrypoint obrigatório | index.ts |
O que é excluído automaticamente
node_modules/
.git/
.env
dist/
.jelou/
- Arquivos ocultos (começando com
.)
Ignorar confirmação
Para deploys automatizados, use --no-confirm:
jelou deploy --no-confirm
Rollback
Se você precisar reverter para uma versão anterior, use jelou rollback.
Sem argumentos, exibe um menu com deploys recentes: Especifique o slug e o ID do deploy:jelou rollback query-customer dep_def67890
# ✓ Rolled back to dep_def67890
Deploy básico
Com secrets
name: Deploy Function
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install CLI
run: npm install -g @jelou/cli
- name: Deploy
env:
JELOU_TOKEN: ${{ secrets.JELOU_TOKEN }}
run: jelou deploy --no-confirm --json | jq '.data.url'
name: Deploy with Secrets
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install CLI
run: npm install -g @jelou/cli
- name: Configure secrets
env:
JELOU_TOKEN: ${{ secrets.JELOU_TOKEN }}
run: |
jelou secrets set query-customer \
CRM_API_KEY=${{ secrets.CRM_API_KEY }} \
JELOU_API_KEY=${{ secrets.JELOU_API_KEY }}
- name: Deploy
env:
JELOU_TOKEN: ${{ secrets.JELOU_TOKEN }}
run: |
DEPLOY_URL=$(jelou deploy --no-confirm --json | jq -r '.data.url')
echo "Deployed to $DEPLOY_URL"
Use --json em pipelines para obter saída estruturada que você pode processar com jq. O formato é sempre { "ok": true, "data": ... } no stdout.
Rotas expostas
| Rota | Descrição |
|---|
/__health | Health check e metadados da função |
/mcp | Endpoint MCP (a menos que config.mcp: false) |
| Sua rota | Rota do handler (padrão: * corresponde a qualquer caminho) |
| Rota | Descrição |
|---|
/__health | Health check com lista de todas as ferramentas |
/mcp | Servidor MCP unificado com todas as ferramentas |
/<tool-key> | Rota de cada ferramenta (kebab-case gerado automaticamente ou config.path personalizado) |