FabioFratini před 10 měsíci
rodič
revize
9a8177d80c
1 změnil soubory, kde provedl 16 přidání a 2 odebrání
  1. 16 2
      Jenkinsfile

+ 16 - 2
Jenkinsfile

@@ -47,6 +47,9 @@ pipeline {
                 sh 'composer --version || echo "Composer not available locally"'
                 sh 'node --version || echo "Node not available locally"'
                 sh 'npm --version || echo "NPM not available locally"'
+
+                // Check for rsync
+                sh 'rsync --version || echo "rsync not available, please install it on Jenkins server"'
             }
         }
 
@@ -90,8 +93,19 @@ pipeline {
                     # Create remote directory
                     ssh -o StrictHostKeyChecking=no ${REMOTE_USER}@${REMOTE_HOST} "mkdir -p ${REMOTE_DIR}"
 
-                    # Sync files excluding unnecessary ones
-                    rsync -avz -e "ssh -o StrictHostKeyChecking=no" --exclude '.git' --exclude 'node_modules' --exclude 'vendor' ./ ${REMOTE_USER}@${REMOTE_HOST}:${REMOTE_DIR}/
+                    # Since rsync isn't available, use scp to copy files
+                    # First, create a tar archive
+                    tar --exclude='.git' --exclude='node_modules' --exclude='vendor' -czf /tmp/deployment.tar.gz .
+
+                    # Copy the archive to the remote server
+                    scp -o StrictHostKeyChecking=no /tmp/deployment.tar.gz ${REMOTE_USER}@${REMOTE_HOST}:/tmp/
+
+                    # Extract the archive on the remote server
+                    ssh -o StrictHostKeyChecking=no ${REMOTE_USER}@${REMOTE_HOST} "tar -xzf /tmp/deployment.tar.gz -C ${REMOTE_DIR}/"
+
+                    # Clean up
+                    rm -f /tmp/deployment.tar.gz
+                    ssh -o StrictHostKeyChecking=no ${REMOTE_USER}@${REMOTE_HOST} "rm -f /tmp/deployment.tar.gz"
 
                     # Run composer install
                     ssh -o StrictHostKeyChecking=no ${REMOTE_USER}@${REMOTE_HOST} "cd ${REMOTE_DIR} && composer install --no-interaction --no-dev --prefer-dist"