feat: add workflow for promoting master to production with testing and deployment steps
Some checks failed
Chore App Build, Test, and Push Docker Images / build-and-push (push) Has been cancelled
Some checks failed
Chore App Build, Test, and Push Docker Images / build-and-push (push) Has been cancelled
This commit is contained in:
@@ -317,6 +317,42 @@ jobs:
|
|||||||
chmod 600 .env .rollback-meta
|
chmod 600 .env .rollback-meta
|
||||||
|
|
||||||
docker-compose down
|
docker-compose down
|
||||||
|
|
||||||
|
wait_for_container_removal() {
|
||||||
|
container_name="$1"
|
||||||
|
attempts=0
|
||||||
|
while docker ps -a --format '{{.Names}}' | grep -qx "$container_name"; do
|
||||||
|
attempts=$((attempts + 1))
|
||||||
|
if [ "$attempts" -ge 12 ]; then
|
||||||
|
echo "Container ${container_name} still exists after waiting for teardown."
|
||||||
|
docker ps -a --filter "name=^${container_name}$"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
echo "Waiting for ${container_name} to be removed..."
|
||||||
|
sleep 5
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
wait_for_port_release() {
|
||||||
|
port="$1"
|
||||||
|
attempts=0
|
||||||
|
while docker ps -a --format '{{.ID}} {{.Names}} {{.Ports}} {{.Status}}' | grep -E "(^|[[:space:]])0\.0\.0\.0:${port}->|:::${port}->" >/dev/null 2>&1; do
|
||||||
|
attempts=$((attempts + 1))
|
||||||
|
if [ "$attempts" -ge 12 ]; then
|
||||||
|
echo "Port ${port} is still allocated after teardown. Blocking container(s):"
|
||||||
|
docker ps -a --format '{{.ID}} {{.Names}} {{.Ports}} {{.Status}}' | grep -E "(^|[[:space:]])0\.0\.0\.0:${port}->|:::${port}->" || true
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
echo "Waiting for port ${port} to be released..."
|
||||||
|
sleep 5
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
wait_for_container_removal chores-app-frontend-prod
|
||||||
|
wait_for_container_removal chores-app-backend-prod
|
||||||
|
wait_for_port_release 443
|
||||||
|
wait_for_port_release 5001
|
||||||
|
|
||||||
docker-compose pull
|
docker-compose pull
|
||||||
docker-compose up -d
|
docker-compose up -d
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user