fix(deploy): correct FTP server-dir path for Hostinger

This commit is contained in:
Lucas Kalil 2026-06-13 23:30:33 -03:00
parent 08c224ec3e
commit 8233262d1d
2 changed files with 6 additions and 4 deletions

View file

@ -225,7 +225,7 @@ Follow `how-refresh-data.md` (project root). In short:
- **GitHub Actions** em `.github/workflows/deploy.yml`: a cada `push` em `master` (ou `workflow_dispatch` manual) envia o site pra Hostinger usando `SamKirkland/FTP-Deploy-Action@v4.3.5`.
- **Remote GitHub:** `origin` = `https://github.com/LucasKalil-Programador/world-2026-hub.git` (branch `master`). Push via credential manager do Windows (gh CLI NÃO está instalado nesta máquina).
- **Secrets necessários no repo** (Settings → Secrets and variables → Actions): `FTP_SERVER`, `FTP_USERNAME`, `FTP_PASSWORD` — vêm do hPanel da Hostinger (Files → FTP Accounts). Sem eles o workflow falha.
- **Config do workflow:** `protocol: ftps`, `port: 21`, `local-dir: ./`, `server-dir: public_html/worldcup2026/` (site fica em subpasta do domínio principal — a Hostinger já tem essa pasta). `exclude` remove do deploy: `.git*`, `.github/`, `.agents/`, `README.md`, `how-*.md`, specs `*-en.md` — só `index.html` + `assets/` + `data/` chegam ao site.
- **Config do workflow:** `protocol: ftps`, `port: 21`, `local-dir: ./`, `server-dir: worldcup2026/`. **Gotcha confirmado 2026-06-14:** a conta FTP da Hostinger faz login JÁ DENTRO de `public_html`, então o `server-dir` é relativo a ele — NÃO prefixar `public_html/` (causa `public_html/public_html/worldcup2026`). O destino final no disco é `public_html/worldcup2026/`. `exclude` remove do deploy: `.git*`, `.github/`, `.agents/`, `README.md`, `how-*.md`, specs `*-en.md` — só `index.html` + `assets/` + `data/` chegam ao site.
- **Sync incremental:** a action mantém `.ftp-deploy-sync-state.json` no servidor; só reenvia arquivos alterados. Não comitar esse arquivo (vive só no servidor).
- **Gotcha:** se a Hostinger não aceitar FTPS explícito, trocar `protocol` para `ftp`. Se o site ficar em subpasta, lembrar do gotcha #7 (paths relativos) — já está OK no projeto.

View file

@ -30,9 +30,11 @@ jobs:
port: 21
# Pasta de origem no repositório (raiz do projeto).
local-dir: ./
# Pasta de destino na Hostinger (subpasta do domínio principal).
# Sempre terminando com "/".
server-dir: public_html/worldcup2026/
# Pasta de destino na Hostinger. ATENÇÃO: a conta FTP da Hostinger
# já faz login DENTRO de public_html, então o caminho é relativo a
# ele — NÃO repetir "public_html/" aqui (senão cria public_html
# dentro de public_html). Sempre terminando com "/".
server-dir: worldcup2026/
# Não enviar arquivos de desenvolvimento/documentação para o site.
exclude: |
**/.git*