diff --git a/did_router/src/database.rs b/did_router/src/database.rs index b2a28a5..c3651ee 100644 --- a/did_router/src/database.rs +++ b/did_router/src/database.rs @@ -1,8 +1,9 @@ use diesel::prelude::*; use diesel::pg::PgConnection; use diesel::result::Error; -use dotenvy::dotenv; +use dotenvy::{from_path}; use std::env; +use std::path::Path; use serde::{Serialize}; use diesel_derive_enum::DbEnum; use std::str::FromStr; @@ -49,7 +50,8 @@ pub struct NewDid<'a> { } pub fn connect() -> PgConnection { - dotenv().ok(); + let env_path = Path::new("/etc/did_router.conf"); + from_path(env_path).expect("env file missed"); let database_url = env::var("DATABASE_URL").expect("DATABASE_URL must be set"); PgConnection::establish(&database_url) diff --git a/did_router/src/httapi.rs b/did_router/src/httapi.rs index c5f24df..b93c766 100644 --- a/did_router/src/httapi.rs +++ b/did_router/src/httapi.rs @@ -1,5 +1,6 @@ -use dotenvy::dotenv; +use dotenvy::{from_path}; use std::env; +use std::path::Path; use xml_builder::{XMLBuilder, XMLElement, XMLVersion}; use super::database as db; use super::database::{DidTargetType, Did}; @@ -42,7 +43,9 @@ pub fn external_number(did: Did) -> XMLElement { } pub fn no_service(_did: Did) -> XMLElement { - dotenv().ok(); + let env_path = Path::new("/etc/did_router.conf"); + from_path(env_path).expect("env file missed"); + let sound_path = env::var("SOUND_PATH").expect("SOUND_PATH must be set"); let no_service_path = format!("{}/no_service.wav", sound_path); let mut work = XMLElement::new("work"); @@ -53,7 +56,9 @@ pub fn no_service(_did: Did) -> XMLElement { } pub fn night_mode(_did: Did) -> XMLElement { - dotenv().ok(); + let env_path = Path::new("/etc/did_router.conf"); + from_path(env_path).expect("env file missed"); + let sound_path = env::var("SOUND_PATH").expect("SOUND_PATH must be set"); let night_mode_path = format!("{}/night_mode.wav", sound_path);