This commit is contained in:
@@ -61,8 +61,6 @@ jobs:
|
||||
- name: Sync files to server
|
||||
run: |
|
||||
echo "Starting file sync to server"
|
||||
# Use IPQoS=0x00 to prevent connection drops in some network environments
|
||||
# Use tar to bundle files and send them via SSH in a single connection
|
||||
tar czf - docker-compose.y*ml | \
|
||||
ssh -i ~/.ssh/id_ed25519 -o StrictHostKeyChecking=no -o IPQoS=0x00 -o ConnectTimeout=30 deploy@alpha.mintel.me \
|
||||
"mkdir -p /home/deploy/sites/mb-grid-solutions/ && tar xzvf - -C /home/deploy/sites/mb-grid-solutions/ && echo 'Files synced successfully' && ls -la /home/deploy/sites/mb-grid-solutions/"
|
||||
@@ -74,43 +72,28 @@ jobs:
|
||||
REGISTRY_USER: ${{ secrets.REGISTRY_USER }}
|
||||
REGISTRY_PASS: ${{ secrets.REGISTRY_PASS }}
|
||||
run: |
|
||||
echo "Starting SSH deploy to server"
|
||||
ssh -i ~/.ssh/id_ed25519 -o StrictHostKeyChecking=no -o IPQoS=0x00 -o ConnectTimeout=30 deploy@alpha.mintel.me "
|
||||
set -ex
|
||||
|
||||
echo 'Logging in to registry on server...'
|
||||
echo "$REGISTRY_PASS" | docker login registry.infra.mintel.me -u "$REGISTRY_USER" --password-stdin
|
||||
printf '%s\n' '$REGISTRY_PASS' | docker login registry.infra.mintel.me -u '$REGISTRY_USER' --password-stdin
|
||||
echo 'Login successful'
|
||||
|
||||
cd /home/deploy/sites/mb-grid-solutions
|
||||
echo 'Changed to directory: $(pwd)'
|
||||
ls -la
|
||||
|
||||
echo 'Pulling latest images...'
|
||||
# Try both .yml and .yaml
|
||||
if [ -f docker-compose.yml ]; then
|
||||
echo 'Using docker-compose.yml'
|
||||
docker compose pull
|
||||
echo 'Pull completed'
|
||||
docker images registry.infra.mintel.me/mintel/mb-grid-solutions:latest --format 'Image ID after pull: {{.ID}}'
|
||||
docker compose up -d --force-recreate
|
||||
echo 'Up completed'
|
||||
docker ps --filter name=mb-grid-solutions --format 'Containers: {{.Names}} {{.Status}}'
|
||||
elif [ -f docker-compose.yaml ]; then
|
||||
echo 'Using docker-compose.yaml'
|
||||
docker compose -f docker-compose.yaml pull
|
||||
echo 'Pull completed'
|
||||
docker images registry.infra.mintel.me/mintel/mb-grid-solutions:latest --format 'Image ID after pull: {{.ID}}'
|
||||
docker compose -f docker-compose.yaml up -d --force-recreate
|
||||
echo 'Up completed'
|
||||
docker ps --filter name=mb-grid-solutions --format 'Containers: {{.Names}} {{.Status}}'
|
||||
else
|
||||
echo 'No docker-compose file found!'
|
||||
ls -la
|
||||
exit 1
|
||||
fi
|
||||
echo 'Pulling latest image (force check)...'
|
||||
docker compose pull || echo 'Pull failed - continuing anyway...'
|
||||
|
||||
echo 'Pruning old images...'
|
||||
docker image prune -f
|
||||
echo 'Deployment completed successfully'
|
||||
echo 'Force recreating and restarting containers...'
|
||||
docker compose up -d --force-recreate --no-deps
|
||||
|
||||
echo 'Pruning old images (keep last 24h)...'
|
||||
docker image prune -f --filter 'until=24h'
|
||||
|
||||
echo 'Deployment finished. Checking status...'
|
||||
docker compose ps
|
||||
docker compose logs --tail=20
|
||||
"
|
||||
echo "SSH deploy completed"
|
||||
echo "SSH deploy completed"
|
||||
Reference in New Issue
Block a user