fix(ci): robust database ready check for branch deployments
Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 8s
Build & Deploy / 🧪 QA (push) Successful in 2m35s
Build & Deploy / 🏗️ Build (push) Successful in 7m22s
Build & Deploy / 🚀 Deploy (push) Successful in 31s
Build & Deploy / 🧪 Post-Deploy Verification (push) Failing after 7m38s
Build & Deploy / 🔔 Notify (push) Successful in 1s
Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 8s
Build & Deploy / 🧪 QA (push) Successful in 2m35s
Build & Deploy / 🏗️ Build (push) Successful in 7m22s
Build & Deploy / 🚀 Deploy (push) Successful in 31s
Build & Deploy / 🧪 Post-Deploy Verification (push) Failing after 7m38s
Build & Deploy / 🔔 Notify (push) Successful in 1s
This commit is contained in:
@@ -426,17 +426,27 @@ jobs:
|
|||||||
echo "🌱 Seeding Branch Environment from Production Database..."
|
echo "🌱 Seeding Branch Environment from Production Database..."
|
||||||
ssh root@alpha.mintel.me "cd $SITE_DIR && docker compose -p '${{ needs.prepare.outputs.project_name }}' --env-file $ENV_FILE pull && docker compose -p '${{ needs.prepare.outputs.project_name }}' --env-file $ENV_FILE up -d klz-db"
|
ssh root@alpha.mintel.me "cd $SITE_DIR && docker compose -p '${{ needs.prepare.outputs.project_name }}' --env-file $ENV_FILE pull && docker compose -p '${{ needs.prepare.outputs.project_name }}' --env-file $ENV_FILE up -d klz-db"
|
||||||
|
|
||||||
# Wait for DB to be healthy
|
# Wait for DB to be healthy with a 60s timeout
|
||||||
echo "Waiting for branch database to be ready..."
|
echo "⏳ Waiting for branch database to be ready..."
|
||||||
sleep 10
|
ssh root@alpha.mintel.me "
|
||||||
ssh root@alpha.mintel.me "docker exec $DB_CONTAINER pg_isready -U payload" || sleep 10
|
for i in {1..30}; do
|
||||||
|
if docker exec $DB_CONTAINER pg_isready -U payload >/dev/null 2>&1; then
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
sleep 2
|
||||||
|
done
|
||||||
|
echo '❌ Database failed to become ready after 60 seconds'
|
||||||
|
exit 1
|
||||||
|
" || exit 1
|
||||||
|
|
||||||
# Copy Production Payload DB to Branch Payload DB & ensure media is copied
|
# Copy Production Payload DB to Branch Payload DB & ensure media is copied
|
||||||
echo "📦 Syncing Production DB into Branch DB..."
|
echo "📦 Syncing Production DB into Branch DB..."
|
||||||
ssh root@alpha.mintel.me "
|
ssh root@alpha.mintel.me "
|
||||||
|
set -e -o pipefail
|
||||||
docker exec klz-cablescom-klz-db-1 pg_dump -U payload -d payload --clean --if-exists | docker exec -i $DB_CONTAINER psql -U payload -d payload --quiet
|
docker exec klz-cablescom-klz-db-1 pg_dump -U payload -d payload --clean --if-exists | docker exec -i $DB_CONTAINER psql -U payload -d payload --quiet
|
||||||
rsync -a --delete /var/lib/docker/volumes/klz-cablescom_klz_media_data/_data/ /var/lib/docker/volumes/${{ needs.prepare.outputs.project_name }}_klz_media_data/_data/
|
rsync -a --delete /var/lib/docker/volumes/klz-cablescom_klz_media_data/_data/ /var/lib/docker/volumes/${{ needs.prepare.outputs.project_name }}_klz_media_data/_data/
|
||||||
"
|
" || exit 1
|
||||||
|
|
||||||
echo "✅ Branch database and media synced successfully."
|
echo "✅ Branch database and media synced successfully."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user