Files
scoreodonto.com/dev-build.sh
T
VPS 4 Builder 8a27f3bc7c
build-and-promote / build (push) Failing after 29s
build-and-promote / promote (push) Has been skipped
docs+infra: corrige status (JWT sem commit/contagem) + versão em DEV
- STATUS-SEGURANCA-E-PRODUCAO.md: a rotação do JWT_SECRET deixa de ser
  atribuída ao commit fcf2fb1 (que só remove .env/adiciona .dockerignore) —
  passa a constar como ação operacional na VPS, sem commit (segredo não
  versionado). Ajusta a contagem: 13 commits da sessão (inclui este doc),
  repo ahead 14 de origin/main (o 14º, docs/LEIA, é anterior à sessão).
- dev-build.sh: builda o ambiente de DEV injetando APP_VERSION/GIT_COMMIT/
  BUILD_TIME a partir do git (git describe), espelhando o deploy-prod.sh.
  /api/version em DEV deixa de mostrar apenas "dev".

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-21 23:21:59 +02:00

41 lines
1.9 KiB
Bash
Executable File

#!/usr/bin/env bash
# =============================================================================
# Build + sobe o ambiente de DEV (porta 8020 / dev.scoreodonto.com) carimbando
# a VERSÃO a partir do git — para que /api/version (e o rótulo no app) deixe de
# mostrar apenas "dev".
#
# Uso (NA VPS): ./dev-build.sh
#
# Diferença p/ produção: a prod consome imagem versionada e injeta a tag em
# runtime (deploy-prod.sh). Em DEV buildamos local, então derivamos a versão do
# git AQUI (no host, onde o .git existe) e passamos como build-args do compose.
# =============================================================================
set -euo pipefail
cd "$(dirname "$0")"
export DOCKER_HOST=unix:///run/user/1000/docker.sock
# Versão semântica + commit + carimbo de build, derivados do git.
# APP_VERSION -> ex.: v1.0.18-16-g6adf353 (tag mais próxima + distância + sha)
# GIT_COMMIT -> sha curto
export APP_VERSION="$(git describe --tags --always --dirty 2>/dev/null || echo dev)"
export GIT_COMMIT="$(git rev-parse --short HEAD 2>/dev/null || echo dev)"
export BUILD_TIME="$(date -u +%Y-%m-%dT%H:%M:%SZ)"
export APP_ENV="DEV"
echo "──────────────────────────────────────────────────────────────"
echo " Build ScoreOdonto → DEV (porta 8020)"
echo " APP_VERSION = $APP_VERSION"
echo " GIT_COMMIT = $GIT_COMMIT"
echo " BUILD_TIME = $BUILD_TIME"
echo "──────────────────────────────────────────────────────────────"
docker compose up -d --build scoreodonto-backend scoreodonto-frontend nginx
echo
echo -n " versão no ar (DEV): "
sleep 8
curl -s --max-time 10 http://localhost:8020/api/version || echo "(ainda subindo — confira em alguns segundos)"
echo
echo "✅ DEV buildado com versão carimbada."