codenuk_backend_mine/scripts/fix-git-integration-deployment.sh
2025-10-10 08:56:39 +05:30

64 lines
1.9 KiB
Bash
Executable File

#!/bin/bash
# Comprehensive fix for git-integration service deployment failure
# Addresses permission issues and directory setup
set -e
echo "🚀 Fixing git-integration service deployment issues..."
echo "=================================================="
# Define paths
BASE_DIR="/home/ubuntu/codenuk-backend-live"
GIT_REPOS_DIR="$BASE_DIR/git-repos"
DIFFS_DIR="$GIT_REPOS_DIR/diffs"
# Step 1: Stop the failing service
echo "🛑 Stopping git-integration service..."
cd "$BASE_DIR"
docker compose stop git-integration 2>/dev/null || true
docker compose rm -f git-integration 2>/dev/null || true
# Step 2: Create and setup directories
echo "📁 Setting up git-repos directories..."
mkdir -p "$GIT_REPOS_DIR"
mkdir -p "$DIFFS_DIR"
# Step 3: Fix ownership and permissions
echo "👤 Fixing ownership and permissions..."
# UID 1001 matches the git-integration user in the container
sudo chown -R 1001:1001 "$GIT_REPOS_DIR"
chmod -R 755 "$GIT_REPOS_DIR"
# Step 4: Verify directory setup
echo "✅ Verifying directory setup..."
echo "Directory structure:"
ls -la "$GIT_REPOS_DIR"
# Step 5: Rebuild and restart the service
echo "🔨 Rebuilding git-integration service..."
docker compose build git-integration
echo "🚀 Starting git-integration service..."
docker compose up -d git-integration
# Step 6: Wait for service to start and check health
echo "⏳ Waiting for service to start..."
sleep 10
echo "🏥 Checking service health..."
docker compose ps git-integration
# Step 7: Check logs for any remaining issues
echo "📋 Recent service logs:"
docker compose logs --tail=20 git-integration
echo ""
echo "🎉 Git-integration service fix completed!"
echo "=================================================="
echo "✅ Directories created with proper permissions"
echo "✅ Service rebuilt and restarted"
echo ""
echo "If the service is still failing, check the logs with:"
echo "docker compose logs git-integration"