Skip to content

Configuration

The Sidecar is configured entirely through environment variables. This chapter is the reference; for how to run it, see Deployment.

Core

Variable Default Description
APP_HOST localhost Bind address. Set to 0.0.0.0 in a container.
BACKEND_PORT 8080 HTTP port the Sidecar listens on.
SPRING_PROFILES_ACTIVE prod Active configuration profile.

Database

The Sidecar requires its own PostgreSQL database — never share a schema with Tower.

Variable Default Description
ALETYX_DC_TOWER_SIDECAR_DB_URL (required) JDBC URL, e.g. jdbc:postgresql://sidecar-postgres:5432/decision_tower_sidecar.
ALETYX_DC_TOWER_SIDECAR_DB_USERNAME (required) Database user.
ALETYX_DC_TOWER_SIDECAR_DB_PASSWORD (required) Database password. Source from a secret manager.

Tower callbacks

How the Sidecar reaches Tower Core. The secret must match the value configured on Tower.

Variable Default Description
ALETYX_DC_TOWER_SIDECAR_TOWER_CALLBACK_URL (required) Base URL of Tower Core, e.g. http://decision-control-tower:8080.
ALETYX_OIDC_CALLBACK_SECRET (empty) Shared secret authenticating Sidecar → Tower callbacks. Must match Tower. Rotate on both sides simultaneously.

Integrations (optional)

These variables configure the example actions. An action only runs if the workflow includes it — there is no single "integrations" switch. Git push additionally has its own master switch (…GITHUB_ENABLED, default false); Slack has no enable flag and simply stays inactive until a token and channel are set. With the shipped defaults, an approved promotion performs no outbound Git or messaging calls.

Never ship credentials in the image

Provide tokens only through environment variables / your secret manager. Do not bake them into configuration files or images — a token committed to a repository will be detected and revoked.

Git versioning

Commits the promoted model's files to a Git repository on approval. See Git Model Versioning.

Variable Default Description
ALETYX_DC_TOWER_SIDECAR_GITHUB_ENABLED false Master switch. When false, the Git step is a no-op and no model is fetched.
ALETYX_DC_TOWER_SIDECAR_GITHUB_API_URL https://api.github.com Git host API base URL.
ALETYX_DC_TOWER_SIDECAR_GITHUB_TOKEN (empty) Access token with Contents: read and write on the target repository.
ALETYX_DC_TOWER_SIDECAR_GITHUB_REPO (empty) Target repository in owner/repo form.
ALETYX_DC_TOWER_SIDECAR_GITHUB_BRANCH main Branch to commit to.
ALETYX_DC_TOWER_SIDECAR_GITHUB_COMMITTER_NAME Aletyx Tower Commit author/committer name.
ALETYX_DC_TOWER_SIDECAR_GITHUB_COMMITTER_EMAIL tower@aletyx.ai Commit author/committer email.

Messaging (Slack)

Posts a message when a promotion completes.

Variable Default Description
ALETYX_DC_TOWER_SIDECAR_SLACK_API_URL https://slack.com/api Messaging API base URL.
ALETYX_DC_TOWER_SIDECAR_SLACK_TOKEN (empty) Bot token. Blank disables messaging.
ALETYX_DC_TOWER_SIDECAR_SLACK_CHANNEL (empty) Target channel ID. Blank disables messaging.

REST callout

Variable Default Description
ALETYX_DC_TOWER_SIDECAR_HOLIDAYS_API_URL https://date.nager.at Base URL for the example public-REST callout used by the integration workflow.

Next Steps