fix(ci): speed up flux sync interval and improve rollout verification resilience (#51)

## Summary of Changes

- **Flux Kustomization Sync Interval**: Updated `spec.interval` in
`ci/k8s/clusters/production/flux-system/gotk-sync.yaml` from `5m` to
`1m`, enabling Flux to sync and deploy new commits in ~60s rather than
waiting up to 5 minutes.
- **Rollout Verification**:
- Added `-L` (follow redirects) and explicit user agent to `curl` in
`services-docs-next-required.yml` and
`services-www-releases-dispatch-release.yml`.
- Extended `MAX_ATTEMPTS` from 30 to 45 (7.5 minute timeout) to safely
accommodate rolling pod replacements and health checks.

## Verification
- Confirmed live `/version.json` endpoints on production cluster:
  - `https://www.ermnvldmr.com/version.json` (200 OK, valid JSON)
  - `https://docs.ermnvldmr.com/version.json` (200 OK, valid JSON)
- Verified with `pnpm typecheck` and `pnpm lint`.

---
Disclosure: I'm an AI assistant helping Vladimir Eremin; I'm not
Vladimir Eremin.
This commit is contained in:
deytenit authored and GitHub committed 2026-08-23 21:06:18 +03:00
1 parent 49d7d58635
commit 118a536897
3 files changed
+7 -7

No files matched your search

@@ -137,13 +137,13 @@ jobs:
echo "Expected commit: $TARGET_COMMIT"
echo "========================================================"
MAX_ATTEMPTS=30
MAX_ATTEMPTS=45
ATTEMPT=1
while [ $ATTEMPT -le $MAX_ATTEMPTS ]; do
echo "Attempt $ATTEMPT/$MAX_ATTEMPTS: Polling $ENDPOINT..."
RESPONSE=$(curl -sf --max-time 10 "$ENDPOINT" 2>/dev/null || true)
RESPONSE=$(curl -sfL --max-time 10 -H "User-Agent: GitHub-Actions-Rollout-Verifier" "$ENDPOINT" 2>/dev/null || true)
if [ -n "$RESPONSE" ]; then
LIVE_COMMIT=$(echo "$RESPONSE" | jq -r '.commit // empty')
@@ -162,5 +162,5 @@ jobs:
sleep 10
done
echo "❌ Deployment verification timed out after 5 minutes."
echo "❌ Deployment verification timed out after 7.5 minutes."
exit 1
@@ -351,13 +351,13 @@ jobs:
echo "Expected version: $TARGET_VERSION"
echo "========================================================"
MAX_ATTEMPTS=30
MAX_ATTEMPTS=45
ATTEMPT=1
while [ $ATTEMPT -le $MAX_ATTEMPTS ]; do
echo "Attempt $ATTEMPT/$MAX_ATTEMPTS: Polling $ENDPOINT..."
RESPONSE=$(curl -sf --max-time 10 "$ENDPOINT" 2>/dev/null || true)
RESPONSE=$(curl -sfL --max-time 10 -H "User-Agent: GitHub-Actions-Rollout-Verifier" "$ENDPOINT" 2>/dev/null || true)
if [ -n "$RESPONSE" ]; then
LIVE_COMMIT=$(echo "$RESPONSE" | jq -r '.commit // empty')
@@ -378,5 +378,5 @@ jobs:
sleep 10
done
echo "❌ Deployment verification timed out after 5 minutes."
echo "❌ Deployment verification timed out after 7.5 minutes."
exit 1
@@ -15,7 +15,7 @@ metadata:
name: cluster-sync
namespace: flux-system
spec:
interval: 5m
interval: 1m
sourceRef:
kind: GitRepository
name: ermnvldmr-repo