## ===== xapi_db (Database) stuff =====
# Database URL with a privileged user (not root) credentials.
DB_SERVER_URL="postgresql://user:password@host:port"
# Database name.
DB_NAME="xapi"
# Database connection pool configuration options parameters
DB_MAX_CONNECTIONS = 16
DB_MIN_CONNECTIONS = 4
DB_ACQUIRE_TIMEOUT_SECS = 8
DB_IDLE_TIMEOUT_SECS = 8
DB_MAX_LIFETIME_SECS = 8
# Convenience for `sqlx` command line tool
DATABASE_URL="${DB_SERVER_URL}/${DB_NAME}"
## Maximum number of Statements to return.
DB_STATEMENTS_PAGE_LEN = 20
## Filter views parameters
# When the cleaner task scheduler kicks in, at most this number of stale filter
# views registration IDs are processed at a time. Default is 50.
#
# TTL_BATCH_LEN = 50
# Number of seconds a filter view registration identifier remains valid after
# it's created. Default is 30.
#
# TTL_SECS = 30
# Number of seconds the cleaner task sleeps between runs. Default is 60.
#
# TTL_INTERVAL_SECS = 60
## Multipart temp file cleaner parameters
# Number of seconds the cleaner task sleeps between runs. Default is 10.
#
# MFC_INTERVAL_SECS = 10
## ===== xapi_lrs (LaRS) stuff =====
# Host IPv4 and port number where LaRS will be listening for connections.
LRS_HOST = "127.0.0.1"
LRS_PORT = 9000
# IMPORTANT (rsn) 20241024 - ensure it matches the value used in `migrations`
# DEPRECATED (since 0.1.5) - Use LRS_ROOT_EMAIL instead.
LRS_AUTHORITY_IFI = "admin@my.xapi.net"
# Mode of operation of this server. Read the "USERS.md" document for an explanation
# about the three alternatives.
LRS_MODE = "legacy"
# The root user's `user_id` and `password` properties which when combined form
# the _RootUser_ Basic Authentication (BA) access credentials. Only the `user_id`
# part, named `LRS_ROOT_EMAIL`, is given a default value that is an alias to the
# (now deprecated) `LRS_AUTHORITY_IFI` property. The password value part should
# be set in `.env` otherwise the server will only operate in Legacy mode.
LRS_ROOT_EMAIL = "${LRS_AUTHORITY_IFI}"
# LRS_ROOT_PASSWORD
# Controls the size of an in-memory cache of recently authenticated users.
LRS_USER_CACHE_LEN = 100
## How URLs generated by LaRS will be seen from the outside.
LRS_EXTERNAL_URL="https://localhost/xapi/"
# Default language tag to use by Extension handlers when a parameter (usually
# named `language`) was missing from the request. See the documentation of the
# "GET multiple" handler in the _Verb_ extension for an example.
EXT_DEFAULT_LANGUAGE="en"
# Boolean flag that controls how a Statement's JWS signature is verified.
# When set to FALSE (the default) a Statement is deemed to be correcly signed
# if it's "equivalent" to the one deserialized from the JWS Payload.
# When set to TRUE and the JWS Header has an 'x5c' property containing at least
# one X.509 certificate, then a Statement is deemed to be correctly signed if
# additionally the certificates in the chain ('x5c' array)...
# 1. Are at the time of processing the request within their validity period,
# 2. Each certificate's issuer's distinguished name matches the subject's
# distinguished name of the subsequent certificate in the chain.
# 3. Every certificate is signed by the subsequent one.
# 4. The JWS signature correctly matches the same generated using the RSA Public
# Key contained in the 1st certificate.
JWS_STRICT=false
## ===== workspace stuff =====
## https://github.com/secretkeysio/jelly-actix-web-starter/blob/trunk/.env.example
# Just force these here to make life easier. ;P
RUST_BACKTRACE=1
RUST_LOG="error"