c0ca88c028
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
55 lines
3.0 KiB
Markdown
55 lines
3.0 KiB
Markdown
> ⚠️ EM DESUSO desde 2026-06-17 — consolidado em /home/deploy/stack/documentos-unicos/ (ver LEIA-PRIMEIRO.md). Mantido só como histórico; NÃO usar como referência.
|
|
|
|
---
|
|
|
|
# 🚀 Deploy do ScoreOdonto Dental Client (Windows)
|
|
|
|
Este documento detalha o processo de compilação e distribuição de novas atualizações do programa desktop (Windows) que fica nas máquinas das clínicas, diretamente pelo nosso servidor Linux (VPS 4).
|
|
|
|
## 🛠 Como funciona a Arquitetura
|
|
O nosso cliente é construído usando **Electron**.
|
|
A compilação cruzada (Cross-compile) acontece de forma automatizada: nossa máquina Linux (VPS 4) empacota o código-fonte em um instalador Windows `.exe`.
|
|
Após a compilação, o script joga os binários automaticamente para a pasta de produção na **VPS 1**, e o sistema de Auto-Update avisa as clínicas.
|
|
|
|
---
|
|
|
|
## 📦 Passo a Passo para Lançar uma Nova Versão
|
|
|
|
Sempre que você fizer alterações no código do cliente (ex: `index.js`, `client-monitor.js`, etc) e quiser mandar para os clientes, siga esta receita:
|
|
|
|
### Passo 1: Atualizar a Versão
|
|
Abra o arquivo `package.json` localizado na pasta do cliente (`rx.scoreodonto.com-client/`).
|
|
Altere o número da versão na linha `"version"`.
|
|
*Dica: Sempre suba a versão para que o Auto-Update do Windows reconheça a novidade (Ex: de `"1.2.7"` para `"1.2.8"`).*
|
|
|
|
### Passo 2: Executar o Script de Deploy
|
|
Pelo terminal, dentro da pasta do cliente na **VPS 4**, execute o script mágico:
|
|
```bash
|
|
cd /home/deploy/stack/rx.scoreodonto.com-client
|
|
./deploy-client.sh
|
|
```
|
|
|
|
### Passo 3: Acompanhar o Terminal
|
|
O script fará o seguinte trabalho sozinho:
|
|
1. Rodar um `npm install` garantindo os pacotes.
|
|
2. Iniciar o `electron-builder` criando a versão `.exe` para o Windows (`--win --x64`).
|
|
3. Validar se os artefatos (`.exe`, `latest.yml`, `.blockmap`) foram criados na pasta `/dist`.
|
|
4. Conectar na **VPS 1** e transferir (via `rsync`) os arquivos para a pasta pública: `/home/deploy/stack/rx.scoreodonto.com/dental-server/updates`.
|
|
|
|
Você verá a mensagem: `✅ Build e distribuição do client concluídos com sucesso!`
|
|
|
|
### Passo 4: Auto-Update nas Clínicas
|
|
A partir do momento em que a VPS 1 receber o arquivo `latest.yml` e o novo `.exe`, o sistema já está no ar.
|
|
Nas clínicas:
|
|
- Na próxima vez que o programa cliente for iniciado (ou após o intervalo padrão do `electron-updater`), ele baixará o `.exe` silenciosamente.
|
|
- Ele pedirá ao usuário para reiniciar e aplicar o update.
|
|
- Nenhuma intervenção manual é necessária!
|
|
|
|
---
|
|
|
|
## ⚠️ Solução de Problemas
|
|
|
|
- **Erro de conexão ao enviar para a VPS 1:** Verifique se as chaves SSH do usuário `deploy` na VPS 4 têm permissão irrestrita na VPS 1 (`10.99.0.1`).
|
|
- **O instalador falha no Windows:** Se você instalou pacotes nativos (C++) pesados, a compilação cruzada no Linux pode quebrar. Evite bibliotecas nativas pesadas no lado do cliente.
|
|
- **O Auto-Update não detecta a versão:** Confirme se a URL em `"publish"` dentro do `package.json` (`https://rx.scoreodonto.com/updates/`) está acessível pelo navegador e mostra a pasta de arquivos.
|