Skip to main content

Application topology

info

For information on the new architecture, as well as determining whether you are using the new or the legacy GitGuardian architecture, explore the New GitGuardian Architecture page.

GitGuardian application consists of several Kubernetes resources.

New GitGuardian architecture

Each nginx pod runs an nginx container serving the dashboard frontend and acting as a proxy for the backend, and a number of different containers serving all backend tasks.

KindDeployment NameUsage
FrontnginxDashboard Frontend and proxy for backend
Backendwebapp-app_exporterOpen Metrics Exporter for applicative metrics
Backendwebapp-hookVCS webhooks events receiver
Backendwebapp-internal_apiBackend for the Dashboard
Backendwebapp-internal_api_longBackend for the Dashboard (no timeout)
Backendwebapp-public_apiPublic API and GGshield scans
Backendwebapp-honeytokenBackend for honeytoken
SchedulerbeatCelery Beat task scheduler
Workerworker-emailWorkers for queues: email, notifier
Workerworker-reportsWorkers for PDF reports
Workerworker-longWorkers for long tasks: check/install health, asynchronous cleanup tasks, validity check, ...
Workerworker-scannersWorkers for historical scans used for VCS (Version Control System)
Workerworker-scanners_odsWorkers for historical scans used for productivity tools (Slack, Jira Cloud, Confluence, ...)
Workerworker-long-odsWorkers for long tasks for productivity tools (Slack, Jira Cloud, Confluence, ...)
Workerworker-long-ods-ioWorkers for long tasks specialized in Input/Output operations for productivity tools
Workerworker-workerWorkers for queues: celery (default), check_run, realtime and realtime_retry for VCS, honeytoken, report
Workerworker-realtime_odsWorkers for queues: realtime and realtime_retry for productivity tools
Jobpre-deployPre-deployment job performing database migrations
Jobpost-deployPost-deployment job performing long data migrations
ReplicatedreplicatedLicense management and usage data collection
ReplicatedkotsadmKOTS Admin Console (KOTS-based installation only)
info

We have set a 30-days TTL (Time To Live) for pre-deploy and post-deploy jobs to allow for log retrieval if needed. It is recommended not to delete these pods, as they can be useful for troubleshooting.

Legacy GitGuardian architecture

Each gitguardian-app pod runs an nginx container serving the dashboard frontend and acting as a proxy for the backend, and an app container serving all backend tasks.

KindDeployment nameUsage
Front + Backendgitguardian-appDashboard, Public API (ggshield), VCS webhooks events receiver
Backendgitguardian-exporterOpen Metrics Exporter for applicative metrics
Schedulergitguardian-beatCelery beat task scheduler
Workergitguardian-emailWorkers for queues: email, notifier
Workergitguardian-long-tasksWorkers for long tasks: check/install health, asynchronous cleanup tasks, validity check, ...
Workergitguardian-scannerWorkers for historical scans
Workergitguardian-workerWorkers for queues: celery (default), check_run, realtime, realtime_retry, honeytoken, report
Jobgitguardian-migrationDeployment job performing database migrations
ReplicatedreplicatedLicense management and usage data collection
ReplicatedkotsadmKOTS Admin Console

How can I help you ?