fedimint_gateway_server/envs.rs
1/// Environment variable that specifies the directory of the gateway's database.
2pub const FM_GATEWAY_DATA_DIR_ENV: &str = "FM_GATEWAY_DATA_DIR";
3
4/// Environment variable that specifies the address the gateway's HTTP server
5/// should listen on.
6pub const FM_GATEWAY_LISTEN_ADDR_ENV: &str = "FM_GATEWAY_LISTEN_ADDR";
7
8/// Environment variable that specifies the URL that clients can use to make
9/// requests to the gateway.
10pub const FM_GATEWAY_API_ADDR_ENV: &str = "FM_GATEWAY_API_ADDR";
11
12/// Environment variable that specifies the bcrypt password hash.
13pub const FM_GATEWAY_BCRYPT_PASSWORD_HASH_ENV: &str = "FM_GATEWAY_BCRYPT_PASSWORD_HASH";
14
15/// Environment variable that specifies the bcrypt password hash for the gateway
16/// liquidity manager.
17pub const FM_GATEWAY_LIQUIDITY_MANAGER_BCRYPT_PASSWORD_HASH_ENV: &str =
18 "FM_GATEWAY_LIQUIDITY_MANAGER_BCRYPT_PASSWORD_HASH";
19
20/// Environment variable that specifies that Bitcoin network that the gateway
21/// should use. Must match the network of the Lightning node.
22pub const FM_GATEWAY_NETWORK_ENV: &str = "FM_GATEWAY_NETWORK";
23
24/// Environment variable that instructs the gateway how many route hints to
25/// include in LNv1 invoices.
26pub const FM_NUMBER_OF_ROUTE_HINTS_ENV: &str = "FM_NUMBER_OF_ROUTE_HINTS";
27
28/// Environment variable that specifies the mnemonic that the gateway should use
29/// for ecash and the LDK Node should use for onchain funds. If not set, a
30/// mnemonic will be generated. This environment variable can be used for
31/// recovering from an existing mnemonic.
32pub const FM_GATEWAY_MNEMONIC_ENV: &str = "FM_GATEWAY_MNEMONIC";
33
34/// Environment variable that instructs the gateway to run in "debug mode",
35/// which allows errors to return to clients without redacting private
36/// information.
37pub const FM_DEBUG_GATEWAY_ENV: &str = "FM_DEBUG_GATEWAY";
38
39/// Environment variable that instructs the gateway to skip waiting for the
40/// bitcoin node to sync to the chain.
41pub const FM_GATEWAY_SKIP_WAIT_FOR_SYNC_ENV: &str = "FM_GATEWAY_SKIP_WAIT_FOR_SYNC";
42
43/// Environment variable to select database backend (rocksdb or cursed-redb)
44pub const FM_DB_BACKEND_ENV: &str = "FM_DB_BACKEND";
45
46/// The username to use when connecting to a bitcoin node over RPC
47pub const FM_BITCOIND_USERNAME_ENV: &str = "FM_BITCOIND_USERNAME";
48
49/// The password to use when connecting to a bitcoin node over RPC
50pub const FM_BITCOIND_PASSWORD_ENV: &str = "FM_BITCOIND_PASSWORD";
51
52/// The URL to use when connecting to a bitcoin node over RPC.
53/// Should not include authentication parameters: (e.g `http://127.0.0.1:8332`)
54pub const FM_BITCOIND_URL_ENV: &str = "FM_BITCOIND_URL";
55
56/// The URL to use when connecting to an Esplora server for bitcoin blockchain
57/// data
58pub const FM_ESPLORA_URL_ENV: &str = "FM_ESPLORA_URL";
59
60/// Environment variable for customizing the default routing fees
61pub const FM_DEFAULT_ROUTING_FEES_ENV: &str = "FM_DEFAULT_ROUTING_FEES";
62
63/// Environment variable for customizing the default transaction fees
64pub const FM_DEFAULT_TRANSACTION_FEES_ENV: &str = "FM_DEFAULT_TRANSACTION_FEES";
65
66/// Environment variable that specifies the address the gateway's Iroh endpoint
67/// should listen on.
68pub const FM_GATEWAY_IROH_LISTEN_ADDR_ENV: &str = "FM_GATEWAY_IROH_LISTEN_ADDR";
69
70/// Environment variable that specifies the address the gateway's metrics server
71/// should listen on. If not set, metrics server will bind to localhost on the
72/// UI port + 1.
73pub const FM_GATEWAY_METRICS_LISTEN_ADDR_ENV: &str = "FM_GATEWAY_METRICS_LISTEN_ADDR";
74
75/// Environment variable that instructs the gateway to generate a mnemonic if
76/// one has not already been set.
77pub const FM_GATEWAY_SKIP_SETUP_ENV: &str = "FM_GATEWAY_SKIP_SETUP";