Esdras Renan
|
fa695de653
|
ci(web): workspace server-only no runner (remover apps/desktop e reduzir pnpm-workspace.yaml)\n\n- Evita EACCES em apps/desktop/node_modules no passo de install.\n- Mantém repo intacto; altera apenas o diretório efetivo usado pelo deploy.
|
2025-10-09 19:19:43 -03:00 |
|
Esdras Renan
|
6700bd9f15
|
ci(web): instalar apenas o pacote 'web' e apontar Convex via overlay (NEXT_PUBLIC_CONVEX_URL=http://sistema_convex_backend:3210)\n\n- Evita EACCES em apps/desktop/node_modules no runner.\n- Bypassa DNS/Traefik para chamadas servidor->Convex dentro da stack.
|
2025-10-09 19:16:10 -03:00 |
|
Esdras Renan
|
d9ab863e76
|
feat(api): incluir detalhes de erro em /api/machines/register e /api/machines/heartbeat (facilita diagnostico em PROD)
|
2025-10-09 19:04:09 -03:00 |
|
Esdras Renan
|
833adcd8fa
|
ci(convex): garantir que .env nao esteja presente e unset CONVEX_DEPLOYMENT no deploy\n\n- Sempre exclui .env* no rsync do job do Convex e renomeia .env se restar.\n- Exporta CI=true e faz unset de CONVEX_DEPLOYMENT dentro do container.\n- Evita conflito entre self-hosted (URL+ADMIN_KEY) e CONVEX_DEPLOYMENT.
|
2025-10-09 18:49:50 -03:00 |
|
Esdras Renan
|
2db7360c8b
|
ci(convex): corrigir 'secrets' em if de job e usar step-if com env\n\n- Job roda em push main / workflow_dispatch / mudanças em convex/**.\n- Step de deploy só executa se os secrets estiverem definidos.
|
2025-10-09 18:47:13 -03:00 |
|
Esdras Renan
|
0459637429
|
ci(convex): relaxar condicao de execucao\n\n- Roda em workflow_dispatch (sem input), em push na main se secrets presentes, ou quando convex/** mudar.\n- Evita 'job skipped' quando for necessario publicar as functions.
|
2025-10-09 18:42:55 -03:00 |
|
Esdras Renan
|
8e1575e2a5
|
ci: evitar rsync delete de .next.old* e forcar fallback no convex_deploy
|
2025-10-09 18:33:00 -03:00 |
|
Esdras Renan
|
d34fad394f
|
chore(convex): trigger functions deploy
|
2025-10-09 18:29:08 -03:00 |
|
Esdras Renan
|
51908ac14f
|
ci(web): limpar .next antes do build para evitar EACCES de builds anteriores
|
2025-10-09 18:02:26 -03:00 |
|
Esdras Renan
|
8efa574b76
|
ci(stack): carregar .env antes do docker stack deploy (envsubst)\n\n- Usa set -o allexport && source .env para popular MACHINE_PROVISIONING_SECRET e afins.\n- Garante substituicao de variaveis no stack.yml em producao.
|
2025-10-09 17:57:18 -03:00 |
|
Esdras Renan
|
82a71ea092
|
fix(stack): remover envs duplicadas em convex_backend (itens unicos no array)
|
2025-10-09 17:50:13 -03:00 |
|
Esdras Renan
|
54687ddb0f
|
chore(ci): trigger deploy apos rotacao do MACHINE_PROVISIONING_SECRET na VPS
|
2025-10-09 17:45:06 -03:00 |
|
Esdras Renan
|
0d2474b95e
|
stack(convex): injetar MACHINE_PROVISIONING_SECRET/TTL/FLEET no container convex_backend via .env\n\n- As functions do Convex leem estes envs em runtime.\n- O deploy usa docker stack + substituicao de variaveis via .env do diretório.
|
2025-10-09 17:40:19 -03:00 |
|
Esdras Renan
|
c672a0d2e4
|
ci: adicionar diagnostico de permissoes e usar EFFECTIVE_APP_DIR no build\n\n- Passo 'Permissions diagnostic' lista donos/permissoes e test de escrita.\n- Build roda em para evitar /srv bloqueado.
|
2025-10-09 17:10:34 -03:00 |
|
Esdras Renan
|
2e92b427a6
|
ci: forcar uso de APP_DIR no /home/renan e copiar .env de /srv se existir\n\n- Determina EFFECTIVE_APP_DIR sempre como /home/renan/apps/sistema (evita quaisquer pastas com perms quebradas).\n- Copia .env de /srv/apps/sistema quando presente para manter segredos corretos.
|
2025-10-09 17:02:51 -03:00 |
|
Esdras Renan
|
5ff93a354f
|
ci: copiar .env ao usar fallback de APP_DIR (HOME)\n\n- Evita excluir .env* quando copiando para o diretório alternativo.\n- Garante que o container tenha envs ao subir fora do /srv.
|
2025-10-09 16:59:18 -03:00 |
|
Esdras Renan
|
82c16533da
|
ci(stack): usar APP_DIR efetivo e fallback para pasta no /home/renan\n\n- Determina diretório gravável (fallback /home/renan/apps/sistema) e usa em rsync e stack deploy.\n- stack.yml aceita com default para /srv/apps/sistema.\n- Evita necessidade de sudo e problemas de permissão no /srv.
|
2025-10-09 16:58:17 -03:00 |
|
Esdras Renan
|
c99c9bfe78
|
ci: rsync resiliente a perms (no-times + inplace + sudo fallback)\n\n- Adiciona --no-times e --inplace para evitar settime/mkstemp.\n- Tenta rsync normal; se falhar por permissão, repete com sudo -n.\n- Mantém filtros e delete como antes.
|
2025-10-09 16:51:29 -03:00 |
|
Esdras Renan
|
de746890e7
|
ci: rodar deploy sempre em push na main (sem depender do filtro)\n\n- Mantém workflow_dispatch, mas simplifica condicional do job web.\n- Evita ficar preso apenas no job de 'Detect changes'.
|
2025-10-09 16:41:06 -03:00 |
|
Esdras Renan
|
44779f54a5
|
docs: documentar seed automatico e variavel SEED_ENSURE_ONLY\n\n- .env.example: adiciona SEED_ENSURE_ONLY=true.\n- Runbook: explica que o container executa
> web@0.1.0 auth:seed /home/renan/sistema-de-chamados
> node scripts/seed-auth.mjs
✅ Usuario garantido (sem reset de senha): admin@sistema.dev
✅ Usuario garantido (sem reset de senha): cliente.demo@sistema.dev
✅ Usuario garantido (sem reset de senha): mariana.andrade@atlasengenharia.com.br
✅ Usuario garantido (sem reset de senha): fernanda.lima@omnisaude.com.br
✅ Usuario garantido (sem reset de senha): joao.ramos@atlasengenharia.com.br
✅ Usuario garantido (sem reset de senha): aline.rezende@atlasengenharia.com.br
✅ Usuario garantido (sem reset de senha): ricardo.matos@omnisaude.com.br
✅ Usuario garantido (sem reset de senha): luciana.prado@omnisaude.com.br
✅ Usuario garantido (sem reset de senha): gabriel.oliveira@rever.com.br
✅ Usuario garantido (sem reset de senha): george.araujo@rever.com.br
✅ Usuario garantido (sem reset de senha): hugo.soares@rever.com.br
✅ Usuario garantido (sem reset de senha): julio@rever.com.br
✅ Usuario garantido (sem reset de senha): lorena@rever.com.br
✅ Usuario garantido (sem reset de senha): renan.pac@paulicon.com.br
✅ Usuario garantido (sem reset de senha): thiago.medeiros@rever.com.br
✅ Usuario garantido (sem reset de senha): weslei@rever.com.br apos migracoes.
|
2025-10-09 16:35:23 -03:00 |
|
Esdras Renan
|
4e87911269
|
feat(auth): garantir usuarios padrao no start do container\n\n- Torna o seed idempotente por padrao (SEED_ENSURE_ONLY=true) sem resetar senhas existentes.\n- Executa
> web@0.1.0 auth:seed /home/renan/sistema-de-chamados
> node scripts/seed-auth.mjs
✅ Usuario garantido (sem reset de senha): admin@sistema.dev
✅ Usuario garantido (sem reset de senha): cliente.demo@sistema.dev
✅ Usuario garantido (sem reset de senha): mariana.andrade@atlasengenharia.com.br
✅ Usuario garantido (sem reset de senha): fernanda.lima@omnisaude.com.br
✅ Usuario garantido (sem reset de senha): joao.ramos@atlasengenharia.com.br
✅ Usuario garantido (sem reset de senha): aline.rezende@atlasengenharia.com.br
✅ Usuario garantido (sem reset de senha): ricardo.matos@omnisaude.com.br
✅ Usuario garantido (sem reset de senha): luciana.prado@omnisaude.com.br
✅ Usuario garantido (sem reset de senha): gabriel.oliveira@rever.com.br
✅ Usuario garantido (sem reset de senha): george.araujo@rever.com.br
✅ Usuario garantido (sem reset de senha): hugo.soares@rever.com.br
✅ Usuario garantido (sem reset de senha): julio@rever.com.br
✅ Usuario garantido (sem reset de senha): lorena@rever.com.br
✅ Usuario garantido (sem reset de senha): renan.pac@paulicon.com.br
✅ Usuario garantido (sem reset de senha): thiago.medeiros@rever.com.br
✅ Usuario garantido (sem reset de senha): weslei@rever.com.br apos no stack.yml.\n- Garante admin e demais usuarios definidos sem acao manual, mesmo após reset do app.
|
2025-10-09 16:34:59 -03:00 |
|
Esdras Renan
|
43ef2bc239
|
ci: permitir workflow_dispatch com force deploy (web/convex)\n\n- Adiciona gatilho manual e inputs para forçar deploy sem depender do paths-filter.\n- Mantém filtros por push como antes.\n- Útil para reexecutar deploy após ajustes no próprio workflow.
|
2025-10-09 16:30:41 -03:00 |
|
Esdras Renan
|
d9b1a80513
|
ci: evitar chgrp/perms no rsync do runner\n\n- Adiciona --no-perms --no-owner --no-group ao rsync nos passos de sync.\n- Evita erros de chgrp/mkstemp quando o runner não tem permissão para alterar grupo/perms.\n- Mantém filtros e --delete como antes.
|
2025-10-09 16:26:29 -03:00 |
|
Esdras Renan
|
d031acf7b8
|
fix(prisma): garantir DATABASE_URL efetivo no runtime\n\n- Força resolução do DATABASE_URL ao instanciar PrismaClient com fallback seguro em produção para file:/app/data/db.sqlite.\n- Evita falha "Error code 14: Unable to open the database file" quando o runtime cai em path relativo do .env dentro do container.\n- Compatível com stack.yml (volume sistema_db montado em /app/data).
|
2025-10-09 16:23:04 -03:00 |
|
Esdras Renan
|
06c4efd173
|
fix(convex): evitar inline de segredo no build
|
2025-10-09 01:27:45 -03:00 |
|
Esdras Renan
|
c4e42ab49c
|
fix(convex): normalizar campos opcionais ao criar sessão
|
2025-10-09 00:53:29 -03:00 |
|
Esdras Renan
|
474cd45b65
|
fix(stack): expor segredos de provisionamento ao convex
|
2025-10-09 00:14:00 -03:00 |
|
Esdras Renan
|
30928fd938
|
fix(desktop): ajustar store do agente para build
|
2025-10-08 23:28:08 -03:00 |
|
Esdras Renan
|
152550a9a0
|
feat: habilitar provisionamento desktop e rotas CORS
|
2025-10-08 23:07:59 -03:00 |
|
Esdras Renan
|
7569986ffc
|
docs(agents): add local dev guide, env examples, CI/deploy notes
|
2025-10-08 21:42:40 -03:00 |
|
Esdras Renan
|
e11d19a128
|
fix(prisma): include binaryTargets for debian-openssl-1.1.x and 3.0.x to match runtime
|
2025-10-08 20:49:56 -03:00 |
|
Esdras Renan
|
f8c89c935c
|
chore(deploy): trigger web redeploy (no-op change in stack.yml)
|
2025-10-08 20:31:44 -03:00 |
|
Esdras Renan
|
69dd060e79
|
chore(deploy): nudge stack to force redeploy (no-op comment)
|
2025-10-08 20:25:57 -03:00 |
|
Esdras Renan
|
969dbcf46d
|
ci: use --no-frozen-lockfile for host build to tolerate minor devDep changes
|
2025-10-08 20:04:02 -03:00 |
|
Esdras Renan
|
7e6ea3c54d
|
dev: add eslint-plugin-react-hooks to silence lint plugin missing during build
|
2025-10-08 19:46:54 -03:00 |
|
Esdras Renan
|
7fc2c4a56e
|
ci: exclude/protect node_modules and .pnpm-store in rsync to avoid permission issues
|
2025-10-08 18:30:00 -03:00 |
|
Esdras Renan
|
3735e0d178
|
deploy: zero-downtime rollout (2 replicas, start-first, healthchecks) for web & convex; document in runbook
|
2025-10-08 18:27:07 -03:00 |
|
Esdras Renan
|
229fdca0b9
|
ci: gate web deploy on web paths; decouple convex deploy and sync APP_DIR only when convex/** changes
|
2025-10-08 18:21:52 -03:00 |
|
Esdras Renan
|
d4616f757a
|
ci: always run stack deploy + service restarts (remove invalid hashFiles condition)
|
2025-10-08 18:09:49 -03:00 |
|
Esdras Renan
|
2659455a9f
|
deploy: purge .next before build; CI also restarts Convex service to ensure fresh state
|
2025-10-08 18:03:36 -03:00 |
|
Esdras Renan
|
72c0cab07a
|
chore(ci): trigger pipeline (smoke test 3)
|
2025-10-08 16:57:26 -03:00 |
|
Esdras Renan
|
27d78d6171
|
ci/deploy: force rollout of web service via RELEASE_SHA + service update to pick new code
|
2025-10-08 16:17:34 -03:00 |
|
Esdras Renan
|
8b1715a3da
|
docs: add setup history (pitfalls & decisions) and link from README
|
2025-10-08 14:54:38 -03:00 |
|
Esdras Renan
|
e976fa2c6d
|
docs: README tweak to trigger CI (smoke test)
|
2025-10-08 14:42:12 -03:00 |
|
Esdras Renan
|
980d7c1561
|
chore: add scripts/deploy-from-git.sh (pull-based deploy fallback on VPS)
|
2025-10-08 14:24:50 -03:00 |
|
Esdras Renan
|
f9268346ea
|
ci: only run Convex deploy when files in convex/** change (paths-filter)
|
2025-10-08 14:23:11 -03:00 |
|
Esdras Renan
|
2b707379bb
|
ci: protect local .env files from rsync --delete via filter rules
|
2025-10-08 14:21:28 -03:00 |
|
Esdras Renan
|
7a28263924
|
ci: preserve server .env files during rsync to APP_DIR (fix missing BETTER_AUTH_SECRET)
|
2025-10-08 14:10:29 -03:00 |
|
Esdras Renan
|
a72af75c42
|
chore(ci): smoke test to trigger Actions on runner
|
2025-10-08 14:00:15 -03:00 |
|
Esdras Renan
|
8d55c37f82
|
feat: add Convex dashboard service and CI job to deploy functions to self-hosted backend
|
2025-10-08 11:59:49 -03:00 |
|