Server Core
Core server configuration variables.
- Name:
CROW_ADMIN - Description: List of admin users. Applies to forge sign-in only; single sign-on uses
CROW_OIDC_ADMIN_GROUPS. - Default: none
ADMIN_TOKEN
Section titled “ADMIN_TOKEN”- Name:
CROW_ADMIN_TOKEN - Description: Opaque secret (at least 32 characters) seeded at startup as a full-admin API token for automation.
Owned by the dedicated
crow-adminsystem user. Changing the value rotates the credential and revokes the previous one on next boot. - Default: none
- Name:
CROW_HOST - Description: Server fully qualified URL. Format:
<scheme>://<host>[/<prefix path>] - Default: none
- Name:
CROW_OPEN - Description: Enable open user registration, through a forge or through single sign-on.
- Default:
false
- Name:
CROW_ORGS - Description: List of approved organizations.
- Default: none
REPO_OWNERS
Section titled “REPO_OWNERS”- Name:
CROW_REPO_OWNERS - Description: Repositories by those owners will be allowed to be used in Crow.
- Default: none
SERVER_ADDR
Section titled “SERVER_ADDR”- Name:
CROW_SERVER_ADDR - Description: Server address.
- Default:
:8000
TRUSTED_PROXIES
Section titled “TRUSTED_PROXIES”- Name:
CROW_TRUSTED_PROXIES - Description: Comma-separated IP addresses or CIDR ranges of the reverse proxies whose
X-Forwarded-ForandX-Real-IPheaders are trusted for the client IP. Unset trusts every peer, which lets clients spoof their IP and get around the per-IP limit on LDAP sign-in. An invalid entry stops the server from starting. - Default: none
FORGE_LOGIN_DISABLED
Section titled “FORGE_LOGIN_DISABLED”- Name:
CROW_FORGE_LOGIN_DISABLED - Description: Disable forge OAuth sign-in; forge accounts can still be linked. Requires OIDC or LDAP sign-in, otherwise the server refuses to start.
- Default:
false
SERVER_ADDR_TLS
Section titled “SERVER_ADDR_TLS”- Name:
CROW_SERVER_ADDR_TLS - Description: Port HTTPS with TLS.
- Default:
:443
SERVER_CERT
Section titled “SERVER_CERT”- Name:
CROW_SERVER_CERT - Description: Server SSL cert path.
- Default: none
SERVER_KEY
Section titled “SERVER_KEY”- Name:
CROW_SERVER_KEY - Description: Server SSL key path.
- Default: none
SERVER_WEBHOOK_HOST
Section titled “SERVER_WEBHOOK_HOST”- Name:
CROW_EXPERT_WEBHOOK_HOST - Description: Fully qualified Crow server URL called by forge’s webhooks. Format:
<scheme>://<host>[/<prefix path>]. For experts only! - Default: none
GRPC_ADDR
Section titled “GRPC_ADDR”- Name:
CROW_GRPC_ADDR - Description: gRPC address.
- Default:
:9000
METRICS_SERVER_ADDR
Section titled “METRICS_SERVER_ADDR”- Name:
CROW_METRICS_SERVER_ADDR - Description: Metrics server address.
- Default: none
ENABLE_SWAGGER
Section titled “ENABLE_SWAGGER”- Name:
CROW_ENABLE_SWAGGER - Description: Enable Swagger API documentation.
- Default:
true
ENABLE_HA
Section titled “ENABLE_HA”- Name:
CROW_ENABLE_HA - Description: Enable high availability mode with database-backed queue.
- Default:
false
QUEUE_LOCK_TTL
Section titled “QUEUE_LOCK_TTL”- Name:
CROW_QUEUE_LOCK_TTL - Description: Time-to-live for the queue processing leader election lock in High Availability mode. If the leader node fails, other nodes must wait this duration before acquiring the lock.
- Default:
30s
CRON_LOCK_TTL
Section titled “CRON_LOCK_TTL”- Name:
CROW_CRON_LOCK_TTL - Description: Time-to-live for the cron scheduler leader election lock in High Availability mode. If the leader node fails, other nodes must wait this duration before acquiring the lock.
- Default:
90s
SCHEDULING_STRATEGY
Section titled “SCHEDULING_STRATEGY”- Name:
CROW_SCHEDULING_STRATEGY - Description: How the server distributes workflows across agents that are equally eligible (same labels, same priority). One of
least-loaded,pack,round-robinorrandom. Applies to both the single-instance and High Availability queues. See Scheduling strategy. - Default:
least-loaded
AGENT_AUTO_RESTART
Section titled “AGENT_AUTO_RESTART”- Name:
CROW_AGENT_AUTO_RESTART - Description: Restart agents that accept remote restarts (
CROW_AGENT_REMOTE_UPDATE=restart) without an admin asking. One ofoff,outdated(agents on an older protocol version than the server) orrelease(agents on any other release). Each agent is asked at most once per server release. See Rolling Restarts. - Default:
off
AGENT_AUTO_RESTART_MAX_PARALLEL
Section titled “AGENT_AUTO_RESTART_MAX_PARALLEL”- Name:
CROW_AGENT_AUTO_RESTART_MAX_PARALLEL - Description: How many agents may drain for a queued or automatic restart at the same time. Restarts an admin requests for a single agent are not limited.
- Default:
1
METRICS_PRESERVE_DELETED
Section titled “METRICS_PRESERVE_DELETED”- Name:
CROW_METRICS_PRESERVE_DELETED - Description: Keep a repository’s or organization’s pipelines and workflows when it is removed, so historic data stays in the metrics dashboard instead of disappearing. When disabled, removing a repo or org purges its pipelines and workflows (the pre-6.x behavior). See Metrics dashboard.
- Default:
true
KEEPALIVE_MIN_TIME
Section titled “KEEPALIVE_MIN_TIME”- Name:
CROW_KEEPALIVE_MIN_TIME - Description: Server-side enforcement policy on the minimum amount of time a client should wait before sending a keepalive ping.
- Default: none
SESSION_EXPIRES
Section titled “SESSION_EXPIRES”- Name:
CROW_SESSION_EXPIRES - Description: Session expiration time.
- Default:
72h
STATUS_CONTEXT
Section titled “STATUS_CONTEXT”- Name:
CROW_STATUS_CONTEXT - Description: Status context prefix.
- Default:
ci/crow
STATUS_CONTEXT_FORMAT
Section titled “STATUS_CONTEXT_FORMAT”- Name:
CROW_STATUS_CONTEXT_FORMAT - Description: Status context format.
- Default:
{{ .context }}/{{ .event }}/{{ .workflow }}{{if not (eq .axis_id 0)}}/{{.axis_id}}{{end}}
DISABLE_VERSION_CHECK
Section titled “DISABLE_VERSION_CHECK”- Name:
CROW_DISABLE_VERSION_CHECK - Description: Disable version check in admin web UI.
- Default:
false
DISABLE_USER_AGENT_REGISTRATION
Section titled “DISABLE_USER_AGENT_REGISTRATION”- Name:
CROW_DISABLE_USER_AGENT_REGISTRATION - Description: Disable user registered agents.
- Default:
false
MIGRATIONS_ALLOW_LONG
Section titled “MIGRATIONS_ALLOW_LONG”- Name:
CROW_MIGRATIONS_ALLOW_LONG - Description: Allow long-running migrations.
- Default:
false
CUSTOM_CSS_FILE
Section titled “CUSTOM_CSS_FILE”- Name:
CROW_CUSTOM_CSS_FILE - Description: File path for the server to serve a custom .CSS file, used for customizing the UI.
- Default: none
CUSTOM_JS_FILE
Section titled “CUSTOM_JS_FILE”- Name:
CROW_CUSTOM_JS_FILE - Description: File path for the server to serve a custom .JS file, used for customizing the UI.
- Default: none
CUSTOM_THEMES
Section titled “CUSTOM_THEMES”- Name:
CROW_CUSTOM_THEMES - Description: Comma-separated file paths or
http(s)://URLs of CSS or JSON files with additional UI themes, offered to users next to the bundled themes. A theme with the id of a bundled theme replaces it. Sources are read and validated at startup, and the server refuses to start if one is invalid; URLs that cannot be fetched are skipped with an error log. See Admin-provided themes for the formats. - Default: none
WWW_PROXY
Section titled “WWW_PROXY”- Name:
CROW_DEV_WWW_PROXY - Description: Serve the website by using a proxy (used for development).
- Default: none
ENVIRONMENT
Section titled “ENVIRONMENT”- Name:
CROW_ENVIRONMENT - Description: Environment variables.
- Default: none
NETWORK
Section titled “NETWORK”- Name:
CROW_NETWORK - Description: Networks.
- Default: none
VOLUME
Section titled “VOLUME”- Name:
CROW_VOLUME - Description: Volumes.
- Default: none
CONTAINER_NAME_SCHEME
Section titled “CONTAINER_NAME_SCHEME”- Name:
CROW_CONTAINER_NAME_SCHEME - Description: Determines the naming scheme type for containers. Possible values are
descriptiveandhash. Thedescriptivescheme uses format<owner>-<repo>-<pipeline>-<workflow>-<stepname>-<stepnumber>for readability and uniqueness. - Default:
descriptive
CONFIG_SERVICE_ENDPOINT
Section titled “CONFIG_SERVICE_ENDPOINT”- Name:
CROW_CONFIG_SERVICE_ENDPOINT - Description: URL used for calling configuration service endpoint.
- Default: none
MAX_MATRIX_SIZE
Section titled “MAX_MATRIX_SIZE”- Name:
CROW_MAX_MATRIX_SIZE - Description: Maximum number of matrix permutations allowed per pipeline. Set to 0 for unlimited.
- Default:
25
PROMETHEUS_AUTH_TOKEN
Section titled “PROMETHEUS_AUTH_TOKEN”- Name:
CROW_PROMETHEUS_AUTH_TOKEN - Description: Token to secure Prometheus metrics endpoint.
- Default: none
PROCLOG_ENABLED
Section titled “PROCLOG_ENABLED”- Name:
CROW_PROCLOG_ENABLED - Description: Master switch for process logs. When
false, ingest endpoints are unavailable, the SSE stream returns empty, and the janitor does not run. - Default:
true
PROCLOG_MAX_ROWS_PER_SOURCE
Section titled “PROCLOG_MAX_ROWS_PER_SOURCE”- Name:
CROW_PROCLOG_MAX_ROWS_PER_SOURCE - Description: Maximum process-log rows retained per (source_type, source_id). Older rows are trimmed by the janitor.
- Default:
5000
PROCLOG_JANITOR_INTERVAL
Section titled “PROCLOG_JANITOR_INTERVAL”- Name:
CROW_PROCLOG_JANITOR_INTERVAL - Description: How often the process-log janitor trims rows that exceed
CROW_PROCLOG_MAX_ROWS_PER_SOURCE. - Default:
5m
PROCLOG_POLL_INTERVAL
Section titled “PROCLOG_POLL_INTERVAL”- Name:
CROW_PROCLOG_POLL_INTERVAL - Description: Database poll cadence for the SSE stream when pushing live entries to the client.
- Default:
100ms
APPROVAL_GATE_TIMEOUT_DEFAULT
Section titled “APPROVAL_GATE_TIMEOUT_DEFAULT”- Name:
CROW_APPROVAL_GATE_TIMEOUT_DEFAULT - Description: Default workflow approval gate timeout applied when YAML omits
approval.timeout. See Approval gates. - Default:
24h
APPROVAL_GATE_TIMEOUT_MAX
Section titled “APPROVAL_GATE_TIMEOUT_MAX”- Name:
CROW_APPROVAL_GATE_TIMEOUT_MAX - Description: Hard upper bound on per-gate timeout. YAML values above this fail lint.
- Default:
168h
APPROVAL_GATE_SWEEP_INTERVAL
Section titled “APPROVAL_GATE_SWEEP_INTERVAL”- Name:
CROW_APPROVAL_GATE_SWEEP_INTERVAL - Description: How often the approval gate timeout sweeper runs. Clamped to a minimum of 5s.
- Default:
30s