From 0a14f87a3ed62567aca9b51b3d07e4a51eff21e9 Mon Sep 17 00:00:00 2001 From: MEHMETKECECI Date: Mon, 16 Feb 2026 16:51:45 +0300 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- scripts/deploy.sh | 224 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 224 insertions(+) create mode 100644 scripts/deploy.sh diff --git a/scripts/deploy.sh b/scripts/deploy.sh new file mode 100644 index 0000000..e0268cc --- /dev/null +++ b/scripts/deploy.sh @@ -0,0 +1,224 @@ +#!/bin/bash +set -e + +echo "==============================" +echo "🚀 BSSAPP FULL DEPLOY START" +echo "==============================" + +# ----------------------------- +# ENV (systemd / webhook fix) +# ----------------------------- +export HOME=/root +export PATH=/usr/bin:/usr/local/bin:/bin:$PATH +export GOPATH=/root/go +export GOMODCACHE=/root/go/pkg/mod + +mkdir -p "$GOPATH" "$GOMODCACHE" + +# ----------------------------- +# PATHS +# ----------------------------- +APP_DIR="/opt/bssapp/svc" +UI_DIR="/opt/bssapp/ui" +SERVICE="bssapp" + +FONT_DIR="$APP_DIR/fonts" +SYS_FONT_DIR="/usr/share/fonts/truetype/dejavu" + +# ----------------------------- +# STOP SERVICE +# ----------------------------- +echo "== STOP SERVICE ==" +systemctl stop "$SERVICE" + +# ----------------------------- +# UPDATE BACKEND CODE +# ----------------------------- +echo "== UPDATE CODE ==" + +cd "$APP_DIR" + +git fetch origin +git reset --hard origin/master + +# ----------------------------- +# CHECK FONTS +# ----------------------------- +echo "== CHECK FONTS ==" + +mkdir -p "$FONT_DIR" + +if [ ! -f "$FONT_DIR/DejaVuSans.ttf" ]; then + cp "$SYS_FONT_DIR/DejaVuSans.ttf" "$FONT_DIR/" + +if [ ! -f "$FONT_DIR/DejaVuSans-Bold.ttf" ]; then + cp "$SYS_FONT_DIR/DejaVuSans-Bold.ttf" "$FONT_DIR/" +fi + +echo "✅ Fonts OK" + +# ----------------------------- +# BUILD UI +# ----------------------------- +echo "== BUILD UI ==" + +cd "$UI_DIR" + +if ! command -v npm >/dev/null 2>&1; then + echo "❌ npm not found!" + exit 1 +fi + +npm install +npx quasar build + +echo "✅ UI Build Done" +# ----------------------------- +# DEPLOY UI → BACKEND +# ----------------------------- +echo "== DEPLOY UI ==" + +rm -rf "$APP_DIR/public"/* +mkdir -p "$APP_DIR/public" + +cp -r "$UI_DIR/dist/spa/"* "$APP_DIR/public/" + +echo "✅ UI Copied" + +# ----------------------------- +# BUILD BACKEND +# ----------------------------- +echo "== BUILD BACKEND ==" + +cd "$APP_DIR" + +go clean -cache -modcache +go mod tidy +go build -o bssapp + +echo "✅ Backend Build Done" +# ----------------------------- +# START SERVICE +# ----------------------------- +echo "== START SERVICE ==" + +systemctl start "$SERVICE" + +# ----------------------------- +# DONE +# ----------------------------- +echo "==============================" +echo "✅ DEPLOY FINISHED" +echo "==============================" +1~#!/bin/bash +set -e + +echo "==============================" +echo "🚀 BSSAPP FULL DEPLOY START" +echo "==============================" + +# ----------------------------- +# ENV (systemd / webhook fix) +# ----------------------------- +export HOME=/root +export PATH=/usr/bin:/usr/local/bin:/bin:$PATH +export GOPATH=/root/go +export GOMODCACHE=/root/go/pkg/mod + +mkdir -p "$GOPATH" "$GOMODCACHE" + +# ----------------------------- +# PATHS +# ----------------------------- +APP_DIR="/opt/bssapp/svc" +UI_DIR="/opt/bssapp/ui" +SERVICE="bssapp" + +FONT_DIR="$APP_DIR/fonts" +SYS_FONT_DIR="/usr/share/fonts/truetype/dejavu" + +# ----------------------------- +# STOP SERVICE +# ----------------------------- +echo "== STOP SERVICE ==" +systemctl stop "$SERVICE" + +# ----------------------------- +# UPDATE BACKEND CODE +# ----------------------------- +echo "== UPDATE CODE ==" + +cd "$APP_DIR" + +git fetch origin +git reset --hard origin/master + +# ----------------------------- +# CHECK FONTS +# ----------------------------- +echo "== CHECK FONTS ==" + +mkdir -p "$FONT_DIR" + +if [ ! -f "$FONT_DIR/DejaVuSans.ttf" ]; then + cp "$SYS_FONT_DIR/DejaVuSans.ttf" "$FONT_DIR/" +fi + +if [ ! -f "$FONT_DIR/DejaVuSans-Bold.ttf" ]; then + cp "$SYS_FONT_DIR/DejaVuSans-Bold.ttf" "$FONT_DIR/" + fi + + echo "✅ Fonts OK" + + # ----------------------------- + # BUILD UI + # ----------------------------- + echo "== BUILD UI ==" + + cd "$UI_DIR" + + if ! command -v npm >/dev/null 2>&1; then + echo "❌ npm not found!" + exit 1 + fi + + npm install + npx quasar build + + echo "✅ UI Build Done" + + # ----------------------------- + # DEPLOY UI → BACKEND + # ----------------------------- + rm -rf "$APP_DIR/public"/* + mkdir -p "$APP_DIR/public" + + cp -r "$UI_DIR/dist/spa/"* "$APP_DIR/public/" + + echo "✅ UI Copied" + + # ----------------------------- + # BUILD BACKEND + # ----------------------------- + echo "== BUILD BACKEND ==" + + cd "$APP_DIR" + + go clean -cache -modcache + go mod tidy + go build -o bssapp + + echo "✅ Backend Build Done" + + # ----------------------------- + # START SERVICE + # ----------------------------- + echo "== START SERVICE ==" + systemctl start "$SERVICE" + + # ----------------------------- + # DONE + # ----------------------------- + echo "==============================" + echo "✅ DEPLOY FINISHED" + echo "==============================" \ No newline at end of file