Feat/kustomize deployment#361
Closed
jmeegan2 wants to merge 15 commits into
Closed
Conversation
Introduces kustomize/ directory with two deployment overlays: - base: minimal deployment (PostGIS, metadata DB, Superset web, sample data) - full: production overlay adding Redis, Celery workers/beat, and Flux GitOps Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
… overlay Add MailHog as an in-cluster dev SMTP server and a bootstrap Job that seeds the daily Wildfire Proximity Alert via the Superset REST API. Make WEBDRIVER_BASEURL env-configurable and disable alert dry-run mode so alerts actually fire in both Docker Compose and Kustomize deployments. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
… alerts Add MattermostNotification backend handler (stubbed), frontend UI for Mattermost as a notification method, and Dockerfile.chromium for building worker images with Playwright/Chromium. Patch base.py to respect ALERT_REPORTS_NOTIFICATION_METHODS config. Update worker/beat deployments with chromium image tag and MAPBOX_API_KEY from secrets. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…mize fixes - Mattermost notification now posts to real webhook with inline base64 screenshot support for PNG format alerts - Add docker-compose.full.yml with Redis, Celery worker/beat - Add configMapGenerator for superset-config-overrides (WEBDRIVER_TYPE, ALERT_REPORTS_NOTIFICATION_METHODS, PLAYWRIGHT feature flag) - Mount config overrides on web, worker, and beat deployments - Set imagePullPolicy: Always and chromium tag for full overlay - Comment out base image tag (6.0.48) — full overlay overrides with chromium Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Encode PNG screenshots as data URIs and embed in webhook payload. Fails hard if screenshot encoding fails. Includes debug logging for content inspection. Note: large screenshots may exceed Mattermost's default max post size — Bot API file upload needed for production. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…g.py Create superset_config_docker_full.py as a committed override file for the full Docker Compose stack. This keeps upstream superset_config.py clean (zero diff against apache/superset) while preserving GeoSet-specific config: FixedExecutor fallback, cache warmup logging, Mattermost alerts, and webdriver settings. docker-compose.full.yml mounts it as superset_config_docker.py so it's auto-imported by the base config. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…ldfire-alert Rename Dockerfile.chromium to Dockerfile.full and bake the GeoSet config override into the image instead of appending config lines at build time. Remove the wildfire-alert bootstrap job (POC cleanup). Update kustomize image tag from chromium to full. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Collaborator
Author
|
put on back burner |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
SUMMARY
Adds Kustomize deployment support for GeoSet, addressing #336.
The ticket asked for a root-level Kustomize deployment option comparable to the upstream Superset Helm chart, with readable manifests and support for multiple deployment shapes such as lean and production overlays. This PR implements that request with a new
kustomize/directory containing:kustomize/base: lean/dev deployment with namespace, Superset web, metadata Postgres, PostGIS, initialization jobs, sample data ingest, config, and secret examples.kustomize/full: fuller staging/production starting point layered on base with Redis, Celery worker, Celery beat, Superset config overrides, image references, and Flux GitOps manifests.kustomize/README.md: setup, secrets, deploy, validation, port-forwarding, and teardown instructions.Compared to the ticket, this PR keeps the scope focused on Kustomize deployment support. Runtime alert/report additions, Mattermost notification support, Chromium image work, and the full Docker Compose stack were split out to a separate branch so this PR can be reviewed against the original Kustomize request.
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
Not applicable. This is deployment/configuration work.
TESTING INSTRUCTIONS
Validate the Kustomize manifests locally:
Deploy base overlay:
cp kustomize/base/secrets.yaml.example kustomize/base/secrets.yaml # Fill in real secret values in kustomize/base/secrets.yaml kubectl apply -k kustomize/base kubectl -n geoset get pods kubectl -n geoset get svc kubectl -n geoset port-forward svc/superset-web 8088:8088Deploy full overlay:
ADDITIONAL INFORMATION