Skip to content

Commit 466734d

Browse files
authored
Merge pull request #629 from PROCOLLAB-github/prod-release-hardening
Prod release hardening
2 parents 580f9c1 + 4046758 commit 466734d

4 files changed

Lines changed: 45 additions & 5 deletions

File tree

.github/workflows/dev-ci.yml

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,8 +83,28 @@ jobs:
8383
exit 1
8484
fi &&
8585
86-
celery_status="$(docker inspect -f '{{.State.Status}}' api_celery 2>/dev/null || true)" &&
86+
celery_status="" &&
87+
celery_ping="" &&
88+
for attempt in $(seq 1 24); do
89+
celery_status="$(docker inspect -f '{{.State.Status}}' api_celery 2>/dev/null || true)" &&
90+
if [ "$celery_status" = "running" ]; then
91+
celery_ping="$(docker compose -f docker-compose.dev-ci.yml exec -T celerys sh -lc 'celery -A procollab inspect ping -d \"celery@$(hostname)\"' 2>&1 || true)" &&
92+
printf '%s\n' "$celery_ping" &&
93+
if printf '%s\n' "$celery_ping" | grep -q 'pong'; then
94+
echo "Celery check passed on attempt ${attempt}" &&
95+
break
96+
fi
97+
fi &&
98+
99+
sleep 5
100+
done &&
101+
87102
if [ "$celery_status" != "running" ]; then
88103
echo "Celery container is not running: ${celery_status}" >&2 &&
89104
exit 1
90-
fi
105+
fi &&
106+
107+
printf '%s\n' "$celery_ping" | grep -q 'pong' || {
108+
echo "Celery ping failed" >&2
109+
exit 1
110+
}

.github/workflows/release-ci.yml

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -210,8 +210,28 @@ jobs:
210210
exit 1
211211
fi
212212
213-
celery_status="$(docker inspect -f '{{.State.Status}}' api_celery 2>/dev/null || true)"
213+
celery_status=""
214+
celery_ping=""
215+
for attempt in $(seq 1 24); do
216+
celery_status="$(docker inspect -f '{{.State.Status}}' api_celery 2>/dev/null || true)"
217+
if [ "$celery_status" = "running" ]; then
218+
celery_ping="$(docker compose -f docker-compose.prod-ci.yml -p prod exec -T celerys sh -lc 'celery -A procollab inspect ping -d \"celery@$(hostname)\"' 2>&1 || true)"
219+
printf '%s\n' "$celery_ping"
220+
if printf '%s\n' "$celery_ping" | grep -q 'pong'; then
221+
echo "Celery check passed on attempt ${attempt}"
222+
break
223+
fi
224+
fi
225+
226+
sleep 5
227+
done
228+
214229
if [ "$celery_status" != "running" ]; then
215230
echo "Celery container is not running: ${celery_status}" >&2
216231
exit 1
217232
fi
233+
234+
printf '%s\n' "$celery_ping" | grep -q 'pong' || {
235+
echo "Celery ping failed" >&2
236+
exit 1
237+
}

docker-compose.dev-ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ services:
1717
- "127.0.0.1:8000:8000"
1818

1919
redis:
20-
image: redis:7.2.5
20+
image: redis:latest
2121
restart: unless-stopped
2222
expose:
2323
- 6379

docker-compose.prod-ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ services:
1313
ports:
1414
- "127.0.0.1:8000:8000"
1515
redis:
16-
image: redis:7.2.5
16+
image: redis:latest
1717
restart: unless-stopped
1818
expose:
1919
- 6379

0 commit comments

Comments
 (0)