]> Untitled Git - lemmy.git/commitdiff
Fix overriding config vars with underscore from environment
authorFelix Ableitner <me@nutomic.com>
Sat, 28 Dec 2019 11:11:06 +0000 (12:11 +0100)
committerFelix Ableitner <me@nutomic.com>
Sat, 28 Dec 2019 11:11:06 +0000 (12:11 +0100)
README.md
server/src/settings.rs

index fa35788d9c97aa581711b4c8e33b4cd2c580a1e1..143bfaa79f67b73725769880a5761532d4133c91 100644 (file)
--- a/README.md
+++ b/README.md
@@ -231,7 +231,7 @@ into your local `config.hjson` file.
 
 Additionally, you can override any config files with environment variables. These have the same name as the config
 options, and are prefixed with `LEMMY_`. For example, you can override the `database.password` with 
-`LEMMY_DATABASE_PASSWORD=my_password`.
+`LEMMY__DATABASE__POOL_SIZE=10`.
 
 An additional option `LEMMY_DATABASE_URL` is available, which can be used with a PostgreSQL connection string like
 `postgres://lemmy:password@lemmy_db:5432/lemmy`, passing all connection details at once.
index 7da19c0f797d4d6a663d7f870b46c1b4648c0d81..446bf04fad179c01f65ca1f8ed4721210b17ab0a 100644 (file)
@@ -70,7 +70,10 @@ impl Settings {
 
     // Add in settings from the environment (with a prefix of LEMMY)
     // Eg.. `LEMMY_DEBUG=1 ./target/app` would set the `debug` key
-    s.merge(Environment::with_prefix("LEMMY").separator("_"))?;
+    // Note: we need to use double underscore here, because otherwise variables containing
+    //       underscore cant be set from environmnet.
+    // https://github.com/mehcode/config-rs/issues/73
+    s.merge(Environment::with_prefix("LEMMY").separator("__"))?;
 
     return s.try_into();
   }