runv-server

server tooling for runv.club
Log | Files | Refs | README

commit 969b0e9ba4093ef614e52811b505379bbbcef616
parent e9b032eb093e3ac62215ebee9cbb22dd166361de
Author: Pablo Murad <pablo@pablomurad.com>
Date:   Sat, 21 Mar 2026 11:47:31 -0300

fix build dir

Diffstat:
Msite/build_directory.md | 1+
Msite/build_directory.py | 14+++++++++++++-
2 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/site/build_directory.md b/site/build_directory.md @@ -104,6 +104,7 @@ A lista aparece na landing; não haverá `homepage_mtime` (o JS deve tolerar cam | `Formato inválido: esperada lista JSON` | O ficheiro não é um array JSON no topo | | Permissão negada ao gravar `-o` | Corre com `sudo` ou escolhe um `-o` onde o teu utilizador possa escrever | | `homepage_mtime` nunca aparece | Falta `--homes-root` ou não existe `~/public_html/index.html` legível para esse user | +| «Escritos N membros» mas a página não mostra pontos | Gravaste em `site/public/data/` no repo; o **site público** usa o **DocumentRoot** do Apache (ex. `/var/www/runv.club/html/`). Usa `-o /var/www/runv.club/html/data/members.json` ou `sudo cp …` para lá, ou volta a correr `genlanding.py` depois de actualizar `members.json` na árvore que ele copia. | ## Cron (exemplo) diff --git a/site/build_directory.py b/site/build_directory.py @@ -112,7 +112,19 @@ def main() -> None: return args.output.parent.mkdir(parents=True, exist_ok=True) args.output.write_text(out_json, encoding="utf-8") - print(f"Escritos {len(members)} membros em {args.output}", file=sys.stderr) + out_abs = args.output.resolve() + print(f"Escritos {len(members)} membros em {out_abs}", file=sys.stderr) + # O browser faz fetch a data/members.json relativo ao index — tem de ser o mesmo ficheiro + # que o HTTP serve (DocumentRoot), não só a cópia em site/public do repositório. + norm = str(out_abs).replace("\\", "/") + if members and "/var/www/" not in norm: + print( + "Nota: com membros > 0, confirme que este path é o servido pelo HTTP " + "(<DocumentRoot>/data/members.json). Se a landing em produção não mostrar os pontos, " + "use -o ex.: /var/www/runv.club/html/data/members.json ou copie o ficheiro para lá " + "(ou genlanding.py). Ver site/build_directory.md.", + file=sys.stderr, + ) if __name__ == "__main__":