From 6d69e7ffc668309e0333cc1203472b45dc7fbe91 Mon Sep 17 00:00:00 2001 From: Claude Agent Date: Thu, 25 Jun 2026 22:42:05 +0000 Subject: [PATCH] =?UTF-8?q?deploy:=20adaug=C4=83=20script=20deploy.sh=20(r?= =?UTF-8?q?sync=20prod,=20suport=20--dry-run)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.8 (1M context) --- deploy.sh | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100755 deploy.sh diff --git a/deploy.sh b/deploy.sh new file mode 100755 index 0000000..b383975 --- /dev/null +++ b/deploy.sh @@ -0,0 +1,44 @@ +#!/usr/bin/env bash +# +# deploy.sh — sincronizează site-ul romfast-website pe prod (a2hosting). +# +# Folosire: +# ./deploy.sh # deploy real +# ./deploy.sh --dry-run # arată ce s-ar transfera, fără să modifice prod +# +# Note: +# - Rsync-ul NU folosește --delete, deci nu șterge nimic pe server. +# - efactura-generator/config.json e exclus explicit (conține api_key, +# gestionat doar pe server). +# - Folderul WIP „Index redesign - romfast.ro/" e exclus ca să nu ajungă public. + +set -euo pipefail + +# Directorul în care se află scriptul (rădăcina repo-ului). +SRC_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/" + +# Destinație prod +SSH_PORT=7822 +REMOTE_USER=romfastr +REMOTE_HOST=nl1-ss18.a2hosting.com +REMOTE_PATH='~/public_html/' + +DRY_RUN=() +if [[ "${1:-}" == "--dry-run" || "${1:-}" == "-n" ]]; then + DRY_RUN=(--dry-run) + echo ">>> DRY-RUN: nu se modifică nimic pe prod" +fi + +rsync -avz "${DRY_RUN[@]}" \ + --exclude='.git' \ + --exclude='.superdesign' \ + --exclude='.claude' \ + --exclude='verify-cleanup.sh' \ + --exclude='deploy.sh' \ + --exclude='efactura-generator/config.json' \ + --exclude='Index redesign - romfast.ro/' \ + -e "ssh -p ${SSH_PORT}" \ + "${SRC_DIR}" \ + "${REMOTE_USER}@${REMOTE_HOST}:${REMOTE_PATH}" + +echo ">>> Deploy finalizat."