From cbe266008075a55bc0d971b3e34c6a086f7e55da Mon Sep 17 00:00:00 2001 From: Abdulbari Date: Mon, 27 Oct 2025 17:29:31 +0300 Subject: [PATCH] Update sgeupdated pipeline v25 New script to call the deploy.sh file in the server --- .gitea/workflows/sgeupdated.yml | 85 ++------------------------------- 1 file changed, 4 insertions(+), 81 deletions(-) diff --git a/.gitea/workflows/sgeupdated.yml b/.gitea/workflows/sgeupdated.yml index 6fbc223..a8ac5d6 100644 --- a/.gitea/workflows/sgeupdated.yml +++ b/.gitea/workflows/sgeupdated.yml @@ -7,97 +7,20 @@ on: jobs: deploy: - runs-on: ubuntu-latest - - steps: + steps: - name: Setup SSH run: | - # Create the .ssh directory mkdir -p ~/.ssh/ - - # Add your private key (from Gitea secrets) echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa chmod 600 ~/.ssh/id_rsa - - # This is a critical step for automation ssh-keyscan ${{ secrets.SERVER_HOST }} >> ~/.ssh/known_hosts - - name: Deploy to Server - # This command runs the entire script on your remote server + - name: Run deploy script on server run: | ssh ${{ secrets.SERVER_USER }}@${{ secrets.SERVER_HOST }} << 'EOF' - # Start of remote script - set -euo pipefail - - echo "✅ Connected to server. Navigating to project..." + echo "✅ Connected to server. Running deploy script..." cd /home/ubuntu/Bgreen/sgeUpdated - - # 1. Fetch the latest code - git fetch myfork main - - # 2. See what files changed between your current version (HEAD) and the new one (origin/main) - # We add '|| true' in case there are no diffs, which would stop 'set -e' - CHANGED_FILES=$(git diff --name-only HEAD myfork/main) || true - - if [ -z "$CHANGED_FILES" ]; then - echo "No file changes detected between HEAD and origin/main." - else - echo "🪶 Changed files:" - echo "$CHANGED_FILES" - fi - - # 3. Update the local repository to the new version - git reset --hard myfork/main - - BACKEND_CHANGED=false - FRONTEND_CHANGED=false - - # 4. Check for backend changes (Note the corrected path: no 'sgeUpdated/') - if echo "$CHANGED_FILES" | grep -q "^sge-backend/"; then - BACKEND_CHANGED=true - fi - - # 5. Check for frontend changes (Note the corrected path: no 'sgeUpdated/') - if echo "$CHANGED_FILES" | grep -q "^sge-frontend/"; then - FRONTEND_CHANGED=true - fi - - - # # Backend section - # if [ "$BACKEND_CHANGED" = true ]; then - # echo "⚡ Backend changes detected. Rebuilding backend..." - # cd sge-backend - # echo "Running Maven build..." - # /opt/apache-maven-3.9.11/bin/mvn clean install -DskipTests - # cd .. - # echo "Rebuilding backend Docker container..." - # docker compose up -d --build bgreen-backend - # else - # echo "✅ No backend changes." - # fi - - # Frontend section - if [ "$FRONTEND_CHANGED" = true ]; then - echo "⚡ Frontend changes detected. Rebuilding frontend..." - cd sge-frontend - echo "Running npm install and build..." - #npm install - #npm run build - cd .. - echo "Rebuilding frontend Docker container..." - docker compose up -d --build bgreen-frontend - else - echo "✅ No frontend changes." - fi - - # This is your final 'build all' condition - # if [ "$BACKEND_CHANGED" = false ] && [ "$FRONTEND_CHANGED" = false ]; then - # echo "♻️ No source changes detected. Ensuring all containers are up." - # docker compose up -d - # fi - - echo "✅ Deployment script finished." + ./deploy.sh EOF - # End of remote script