---
source: src/config/mod.rs
expression: config
---
environment = 'test'
[app]
name = 'Test'
shutdown-on-error = true
[lifecycle-handler]
default-enable = true
[lifecycle-handler.db-migration]
priority = 0
[lifecycle-handler.db-graceful-shutdown]
priority = 10000
[health-check]
default-enable = true
[health-check.max-duration]
startup = 60000
api = 1000
cli = 10000
[health-check.database]
[health-check.sidekiq]
[health-check.smtp]
[service]
default-enable = true
[service.http]
scheme = 'http'
host = '127.0.0.1'
port = 3000
[service.http.middleware]
default-enable = true
[service.http.middleware.sensitive-request-headers]
priority = -10000
header-names = [
'authorization',
'refresh-token',
'x-refresh-token',
'proxy-authorization',
'cookie',
'set-cookie',
]
[service.http.middleware.sensitive-response-headers]
priority = 10000
header-names = [
'authorization',
'refresh-token',
'x-refresh-token',
'proxy-authorization',
'cookie',
'set-cookie',
]
[service.http.middleware.set-request-id]
priority = -9990
header-name = 'request-id'
[service.http.middleware.propagate-request-id]
priority = 9990
header-name = 'request-id'
[service.http.middleware.tracing]
priority = -9980
request-headers-allow-all = false
response-headers-allow-all = false
query-params-allow-all = false
request-header-names = []
response-header-names = []
query-param-names = []
[service.http.middleware.catch-panic]
priority = 0
[service.http.middleware.response-compression]
priority = 0
[service.http.middleware.request-decompression]
priority = -9960
[service.http.middleware.timeout]
priority = 0
timeout = 10000
[service.http.middleware.size-limit]
priority = -9970
limit = '5 MB'
[service.http.middleware.cors]
priority = -9950
preset = 'restrictive'
max-age = 3600000
[service.http.middleware.request-response-logging]
priority = 0
max-len = 1000
[service.http.middleware.cache-control]
priority = 0
max-age = 604800
[service.http.middleware.cache-control.content-types]
[service.http.middleware.etag]
priority = 0
[service.http.initializer]
default-enable = true
[service.http.initializer.normalize-path]
priority = 10000
[service.http.default-routes]
default-enable = true
[service.http.default-routes.ping]
route = '_ping'
[service.http.default-routes.health]
route = '_health'
[service.http.default-routes.api-schema]
route = '_docs/api.json'
[service.http.default-routes.scalar]
route = '_docs'
[service.http.default-routes.redoc]
route = '_docs/redoc'
[service.grpc]
scheme = 'http'
host = '127.0.0.1'
port = 3001
[service.worker.enqueue-config]
[service.worker.worker-config]
timeout = true
max-duration = 60000
max-retries = 25
[service.worker.worker-config.pg]
success-action = 'delete'
failure-action = 'archive'
[service.worker.sidekiq]
num-workers = 16
balance-strategy = 'round-robin'
[service.worker.sidekiq.queue-config]
[service.worker.sidekiq.redis]
uri = 'redis://invalid_host:1234'
[service.worker.sidekiq.redis.enqueue-pool]
[service.worker.sidekiq.redis.fetch-pool]
[service.worker.sidekiq.periodic]
stale-cleanup = 'auto-clean-stale'
[service.worker.pg]
num-workers = 16
balance-strategy = 'round-robin'
[service.worker.pg.queue-config]
[service.worker.pg.queue-fetch-config]
error-delay = 10000
empty-delay = 10000
[service.worker.pg.periodic]
enable = true
stale-cleanup = 'auto-clean-stale'
[auth.jwt]
secret = 'secret-test'
[auth.jwt.claims]
audience = []
required-claims = []
[tracing]
level = 'debug'
format = 'compact'
trace-propagation = true
trace-filters = [
'h2=warn',
'tower::buffer::worker=warn',
'opentelemetry_sdk=warn',
'opentelemetry-otlp=warn',
'hyper_util::client::legacy::connect::http=warn',
]
[database]
uri = 'postgres://example:example@invalid_host:5432/example_test'
auto-migrate = true
temporary-test-db = false
temporary-test-db-clean-up = true
connect-timeout = 1000
connect-lazy = true
acquire-timeout = 1000
min-connections = 0
max-connections = 10
test-on-checkout = true
retry-connection = true
enable-statement-logging = false
[email]
from = 'no-reply@example.com'
[email.smtp.connection]
uri = 'smtps://username:password@smtp.example.com:425'
[email.sendgrid]
api-key = 'api-key'
sandbox = true
https-only = true
[testing]
catch-panic = true