From d05bf76a1864b4531d0b121a4fd3c5ffe7e5883f Mon Sep 17 00:00:00 2001 From: VPS 4 Deploy Agent Date: Thu, 18 Jun 2026 00:16:59 +0200 Subject: [PATCH] =?UTF-8?q?docs(projetos):=20ajusta=20plano=20do=20client?= =?UTF-8?q?=20=E2=80=94=20vers=C3=A3o=20build-time=20(release=20na=20tag,?= =?UTF-8?q?=20n=C3=A3o=20build-once)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- projetos/rx.scoreodonto.com-client/plano-deploy.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/projetos/rx.scoreodonto.com-client/plano-deploy.md b/projetos/rx.scoreodonto.com-client/plano-deploy.md index 8b2d5d3..ba9482e 100644 --- a/projetos/rx.scoreodonto.com-client/plano-deploy.md +++ b/projetos/rx.scoreodonto.com-client/plano-deploy.md @@ -6,6 +6,7 @@ - **Electron + electron-builder** (target NSIS, Windows x64), **cross-compile no Linux** (VPS4). - **Auto-update** via `electron-updater` (provider `generic`) → o `.exe` instalado puxa de `https://rx.scoreodonto.com/updates/latest.yml`. **Esse mecanismo é mantido** (clients em campo dependem dele). - Não é "imagem Docker promovida" como os serviços web — o artefato é o **`.exe` + `latest.yml`** publicados em `dental-server/updates/`. +- **Versão é BUILD-TIME** (embutida no `.exe`; o `electron-updater` compara versões): **não há "build once" puro**. A **release é buildada na TAG** (com a versão da tag); o **push só valida** que compila. (É o oposto dos serviços web, onde a versão é injetada em runtime.) ## Estado atual (analisado em 17/jun/2026) - Versão vem do **`package.json`** (manual; hoje `1.3.8`). @@ -15,10 +16,10 @@ ## Plano (Build Once → Promote → Deploy, adaptado) | Fase | O que | Status | |---|---|---| -| 1 | **Versão pela tag** + exibir a versão na UI | 🧪 em andamento (dev) | -| 2 | **CI build por commit** (`.gitea/workflows`): builda o `.exe` e guarda como artefato; não publica em prod | 🎯 | -| 3 | **Promote por tag**: pega o `.exe` do commit, gera `latest.yml` com a versão da tag e publica em prod `updates/` | 🎯 | -| 4 | **Corte**: desligar `webhook-rx-client.service` (9004) e validar o auto-update dos clients em campo | 🎯 | +| 1 | Exibir a versão na UI (menu do tray, `app.getVersion()`) | ✅ (dev, sem push) | +| 2 | **CI**: push na main → **build de validação** (cross-compile, **NÃO publica**) | 🧪 (`.gitea/workflows/build.yml` criado, dev) | +| 3 | **Tag → release**: builda COM a versão da tag (`npm version`) + publica `.exe`/`latest.yml` em `updates/` (rsync VPS1) | 🎯 | +| 4 | **Corte**: desligar `webhook-rx-client.service` (9004); validar o auto-update dos clients em campo | 🎯 | | 5 | Manter este documento atualizado | — | ## Riscos a tratar