Make database connections configurable by environment variables (#768)

* Make env DB_MAX_SIZE and DB_MIN_IDLE recognizable

* Make database max size and minimum idle configurable

* Restore file permission

* Fail fast
This commit is contained in:
KITAITI Makoto
2020-05-07 02:27:59 +09:00
committed by GitHub
parent dabe904642
commit 3be842c653
2 changed files with 16 additions and 3 deletions
+6 -3
View File
@@ -55,10 +55,13 @@ fn init_pool() -> Option<DbPool> {
}
let manager = ConnectionManager::<Connection>::new(CONFIG.database_url.as_str());
let pool = DbPool::builder()
let mut builder = DbPool::builder()
.connection_customizer(Box::new(PragmaForeignKey))
.build(manager)
.ok()?;
.min_idle(CONFIG.db_min_idle);
if let Some(max_size) = CONFIG.db_max_size {
builder = builder.max_size(max_size);
};
let pool = builder.build(manager).ok()?;
Instance::cache_local(&pool.get().unwrap());
Some(pool)
}