core/landing/DENO_DEPLOY_FIX.md
Tiago Yamamoto 92509d5155 docs: corrige configuração do Deno Deploy
- Atualiza landing/README.md com configuração correta do Deno Deploy
- Adiciona DENO_DEPLOY_FIX.md com troubleshooting detalhado
- Explica que 'deno install' não existe e deve ser removido
- Documenta valores corretos: Install command (vazio), Build Directory (landing)
- Adiciona tabela comparativa Deno vs npm/yarn
- Inclui workflow GitHub Actions opcional para CI/CD
- Corrige erro: 'Executing install command - build failed'
2025-12-11 20:09:24 -03:00

102 lines
2.5 KiB
Markdown

# ⚠️ Erro Comum - Deno Deploy
## Problema
```
❌ Executing install command
Your build has failed to complete this step.
```
## Causa
O campo **Install command** está configurado com `deno install`, mas **esse comando não existe no Deno**!
## ✅ Solução
No painel do Deno Deploy (https://dash.deno.com):
1. Vá em **Settings****App Configuration**
2. Localize **Install command**
3. **APAGUE** o conteúdo (deixe vazio)
4. OU coloque: `deno cache main.ts` (opcional)
### Configuração Correta
![image](uploaded_image_1_1765494346049.png)
**Valores que devem estar configurados:**
```
Build Directory: landing
Install command: (vazio ou "deno cache main.ts")
Build command: deno task build
Pre-deploy command: (vazio)
Entrypoint: main.ts
```
### Por Que Isso Acontece?
O Deno **não precisa** de `npm install` ou `yarn install`. Ele gerencia dependências automaticamente através do arquivo `deno.json` usando **import maps**.
Quando você faz o primeiro `deno run` ou `deno task build`, o Deno:
1. Lê os imports em `deno.json`
2. Baixa as dependências automaticamente
3. Cacheia para uso futuro
### Comandos Deno vs npm/yarn
| npm/yarn | Deno |
|----------|------|
| `npm install` | ❌ Não existe |
| `npm run build` | `deno task build` |
| `npm start` | `deno task start` |
| `package.json` | `deno.json` |
| `node_modules/` | Cache global do Deno |
### Troubleshooting
**Se ainda der erro** após limpar o Install command:
1. **Verifique o Build Directory**:
- Deve ser `landing` (sem `\`)
- ❌ Errado: `\landing`
- ✅ Certo: `landing`
2. **Verifique o Entrypoint**:
- Para produção: `main.ts`
- Para dev: `dev.ts`
3. **Limpe o cache do Deno Deploy**:
```bash
# Na sua máquina
cd landing
rm -rf _fresh/
deno task build
git add .
git commit -m "rebuild fresh assets"
git push
```
4. **Redesploy manual**:
- Settings → Deployments → Redeploy latest
### Logs de Sucesso
Quando configurado corretamente, você deve ver:
```
✅ Cloning repository...
✅ Build directory: landing
✅ Running: deno task build
Task build deno run -A dev.ts build
The manifest has been generated for 5 routes and 2 islands.
Assets written to: _fresh/
✅ Deploying...
✅ Deployment successful!
```
## Mais Informações
- [Deno Deploy Docs](https://deno.com/deploy/docs)
- [Fresh Deploy Guide](https://fresh.deno.dev/docs/concepts/deployment)
- [Deno Task Runner](https://deno.land/manual/tools/task_runner)