Initial commit

This commit is contained in:
Hamza-Ayed
2026-05-21 00:40:47 +03:00
commit 8e429d8313
14 changed files with 1152 additions and 0 deletions

57
deploy.sh Executable file
View File

@@ -0,0 +1,57 @@
#!/bin/bash
# --- Configuration ---
SERVER_USER="root"
SERVER_IP="194.163.173.157"
SERVER_PATH="/home/intaleqapp-nabeh/htdocs/nabeh.intaleqapp.com"
GIT_BRANCH="main"
# Colors for terminal styling
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
RED='\033[0;31m'
NC='\033[0m'
echo -e "${GREEN}🚀 Starting Nabeh Sync & Deploy...${NC}"
# 1. Commit local changes automatically (with date/time or custom message)
if [ -n "$(git status --porcelain)" ]; then
COMMIT_MSG=${1:-"Deploy: $(date '+%Y-%m-%d %H:%M:%S')"}
echo -e "${YELLOW}Staging and committing changes with message: ${COMMIT_MSG}${NC}"
git add .
git commit -m "$COMMIT_MSG"
echo -e "${GREEN}✅ Local commit created successfully!${NC}"
else
echo -e " No local changes to commit."
fi
# 2. Push to Git Remote
echo -e "${GREEN}📤 Pushing changes to remote repository (${GIT_BRANCH})...${NC}"
git push origin "$GIT_BRANCH"
if [ $? -ne 0 ]; then
echo -e "${RED}❌ Git Push failed! Deployment aborted.${NC}"
exit 1
fi
echo -e "${GREEN}✅ Successfully pushed to remote repository!${NC}"
# 3. Connect to server via SSH and pull updates
echo -e "${GREEN}🌐 Connecting to server and pulling updates...${NC}"
ssh -o ConnectTimeout=5 "${SERVER_USER}@${SERVER_IP}" "
cd ${SERVER_PATH} && \
git pull origin ${GIT_BRANCH} && \
if [ -f 'backend/composer.json' ]; then
echo '📦 Updating composer dependencies on server...' && \
cd backend && \
composer install --no-dev --optimize-autoloader
fi
"
if [ $? -eq 0 ]; then
echo -e "${GREEN}==========================================${NC}"
echo -e "✨ Nabeh deployment synced perfectly! "
echo -e "==========================================${NC}"
else
echo -e "${RED}❌ Server update failed! Check your connection or SSH setup.${NC}"
exit 1
fi