Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
groundtruth
command
Command groundtruth runs the groundtruth server: a self-hosted drift detector for Terraform and OpenTofu.
|
Command groundtruth runs the groundtruth server: a self-hosted drift detector for Terraform and OpenTofu. |
|
internal
|
|
|
alerting
Package alerting notifies configured destinations (a generic webhook or Slack) when a workspace's drift status changes, and logs every delivery attempt.
|
Package alerting notifies configured destinations (a generic webhook or Slack) when a workspace's drift status changes, and logs every delivery attempt. |
|
auth
Package auth implements groundtruth's dashboard authentication: password hashing, opaque database-backed sessions, and the HTTP middleware that enforces them.
|
Package auth implements groundtruth's dashboard authentication: password hashing, opaque database-backed sessions, and the HTTP middleware that enforces them. |
|
buildinfo
Package buildinfo exposes version metadata set at build time via -ldflags.
|
Package buildinfo exposes version metadata set at build time via -ldflags. |
|
checks
Package checks runs a drift check against a workspace and persists the result, shared by both the synchronous "check now" HTTP endpoint and (from phase 5 on) the periodic scheduler - so there's exactly one place that decides how a check's outcome becomes database rows.
|
Package checks runs a drift check against a workspace and persists the result, shared by both the synchronous "check now" HTTP endpoint and (from phase 5 on) the periodic scheduler - so there's exactly one place that decides how a check's outcome becomes database rows. |
|
config
Package config loads groundtruth's runtime configuration from environment variables.
|
Package config loads groundtruth's runtime configuration from environment variables. |
|
drift
Package drift turns a raw *tfjson.Plan from a refresh-only Terraform plan into groundtruth's own, already-redacted representation - the only form of a plan that's ever persisted or returned by the API.
|
Package drift turns a raw *tfjson.Plan from a refresh-only Terraform plan into groundtruth's own, already-redacted representation - the only form of a plan that's ever persisted or returned by the API. |
|
httpapi
Package httpapi wires groundtruth's HTTP routes: the JSON API under /api, a health check for container orchestrators, and the embedded SPA for everything else.
|
Package httpapi wires groundtruth's HTTP routes: the JSON API under /api, a health check for container orchestrators, and the embedded SPA for everything else. |
|
scheduler
Package scheduler periodically runs drift checks for every enabled workspace that's due, bounding how many run at once.
|
Package scheduler periodically runs drift checks for every enabled workspace that's due, bounding how many run at once. |
|
store
Package store owns groundtruth's SQLite database: connecting to it, running its versioned migrations, and (via the sqlc subpackage) running type-safe queries against it.
|
Package store owns groundtruth's SQLite database: connecting to it, running its versioned migrations, and (via the sqlc subpackage) running type-safe queries against it. |
|
store/migrations
Package migrations embeds groundtruth's versioned SQL schema migrations so they ship inside the binary instead of as loose files on disk.
|
Package migrations embeds groundtruth's versioned SQL schema migrations so they ship inside the binary instead of as loose files on disk. |
|
store/storetest
Package storetest gives tests a real, migrated, temporary SQLite database — matching this project's testing philosophy of exercising a real database rather than mocking the DB layer.
|
Package storetest gives tests a real, migrated, temporary SQLite database — matching this project's testing philosophy of exercising a real database rather than mocking the DB layer. |
|
terraform
Package terraform runs terraform/tofu plans safely: each check gets an isolated, disposable working directory, credentials are read fresh from an operator-supplied file and never persisted, and no shell is ever invoked.
|
Package terraform runs terraform/tofu plans safely: each check gets an isolated, disposable working directory, credentials are read fresh from an operator-supplied file and never persisted, and no shell is ever invoked. |
|
webassets
Package webassets embeds the built frontend (web/dist, copied here by `make build-frontend`) into the Go binary.
|
Package webassets embeds the built frontend (web/dist, copied here by `make build-frontend`) into the Go binary. |
Click to show internal directories.
Click to hide internal directories.



