Skip to content

Integrate banjo-utils for health probes and migrate helm chart#23

Merged
thenav56 merged 5 commits into
developfrom
feat/banjo-helm-migration
Jul 7, 2026
Merged

Integrate banjo-utils for health probes and migrate helm chart#23
thenav56 merged 5 commits into
developfrom
feat/banjo-helm-migration

Conversation

@thenav56

@thenav56 thenav56 commented Jul 6, 2026

Copy link
Copy Markdown
Member

Changes

  • Helm upgrade
  • Add health probes

This PR doesn't introduce any:

  • temporary files, auto-generated files or secret keys
  • n+1 queries
  • flake8 issues
  • print
  • typos
  • unwanted comments

This PR contains valid:

  • tests
  • permission checks (tests here too)
  • translations

@thenav56 thenav56 force-pushed the feat/banjo-helm-migration branch 3 times, most recently from 675f988 to ec9bb4c Compare July 6, 2026 15:51
thenav56 added 5 commits July 7, 2026 14:38
…r_resources)

Add banjo-utils (branch pin feature/health-endpoints) and wire its health
tooling, replacing the homegrown wait_for_resources command:

- INSTALLED_APPS += banjo_utils; HealthProbeMiddleware first (serves
  pod-local /healthz/live/ and /healthz/ready/, bypassing ALLOWED_HOSTS).
- BANJO_HEALTH_PROBE_* settings; setup_worker_heartbeat(app) in celery for
  the banjo-celery-probe worker/beat liveness.
- Sentry traces_sampler ignores health-probe paths so probes don't burn quota.
- LOGGING CallbackFilter drops /healthz/* request-line noise from
  django.server (dev) and gunicorn.access (prod).
- Delete common wait_for_resources (and its RetryHelper) in favour of banjo's;
  CI docker__wait_cmd --redis -> --cache to match banjo's renamed flag.
- Keep django-health-check (/health-check/) as the external UptimeRobot monitor.
…-dev3

Values-schema migration (dependency alias kept as `app`):

- Drop bundled subcharts (postgresql/minio/redis/rabbitmq); infra is supplied
  externally (alpha DB/S3/cache secrets come from user-provided secrets).
- ingress -> api.ingress; argoHook.hooks -> hooks.jobs (hook: Sync +
  sync-waves 10/20/25, wait-for-resources gates db-migrate/collect-static);
  worker.beat -> worker.addons.beat (Recreate); queueCommandPrefix /
  queueDefaultResources -> queueDefaults.*; operators extraEnvVars list ->
  env map (DragonflyDB kept via extraManifests).
- db-migrate/collect-static inherit chart defaults; only wait-for-resources
  overrides the command (--db --cache [--minio]).
- alpha create-users uses the hooks `files` mechanism (dev3): script mounted
  via a per-job ConfigMap at /etc/hook-files and piped into `manage.py shell`.
- Enable probes in base values: api /healthz/*, worker/beat banjo-celery-probe
  heartbeat (RAM emptyDir); omit replicaCount (no KEDA).
- Regenerate alpha-1 + staging snapshots; helm template renders both.
Stock django_celery_beat DatabaseScheduler never touches the beat
heartbeat file, so BANJO_CELERY_HEARTBEAT_FILE had no writer and the
banjo-celery-probe liveness check always saw a missing/stale file.
setup_worker_heartbeat only wires the worker bootstep, not beat.

Switch beat's --scheduler to the heartbeat-aware subclass and
regenerate snapshots.
@thenav56 thenav56 force-pushed the feat/banjo-helm-migration branch from a5ce686 to e5fc5d7 Compare July 7, 2026 08:55
@thenav56 thenav56 marked this pull request as ready for review July 7, 2026 09:05
@thenav56 thenav56 merged commit cf7671c into develop Jul 7, 2026
5 checks passed
@thenav56 thenav56 deleted the feat/banjo-helm-migration branch July 7, 2026 09:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant