Migrate secrets all the env file
This commit is contained in:
parent
b35c79761f
commit
b62d6db866
33
src/main.rs
33
src/main.rs
@ -3,7 +3,6 @@ use sqlx::{Connection, PgPool};
|
||||
use toggl::TogglApi;
|
||||
use worker::Worker;
|
||||
|
||||
mod sensitive;
|
||||
mod server;
|
||||
mod toggl;
|
||||
mod worker;
|
||||
@ -43,18 +42,40 @@ struct TableSummary {
|
||||
tag_ids: Vec<u64>,
|
||||
}
|
||||
|
||||
struct Environment {
|
||||
database_url: String,
|
||||
api_token: String,
|
||||
default_workspace_id: u64,
|
||||
}
|
||||
|
||||
impl Environment {
|
||||
fn from_env() -> Self {
|
||||
let database_url = std::env::var("DATABASE_URL").expect("DATABASE_URL must be set");
|
||||
let api_token = std::env::var("API_TOKEN").expect("API_TOKEN must be set");
|
||||
let default_workspace_id = std::env::var("DEFAULT_WORKSPACE_ID")
|
||||
.expect("DEFAULT_WORKSPACE_ID must be set")
|
||||
.parse()
|
||||
.expect("DEFAULT_WORKSPACE_ID must be a number");
|
||||
|
||||
Self {
|
||||
database_url,
|
||||
api_token,
|
||||
default_workspace_id,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#[tokio::main]
|
||||
async fn main() {
|
||||
dotenv::dotenv().expect("Failed to load .env file");
|
||||
|
||||
// Init tracing
|
||||
tracing_subscriber::fmt::init();
|
||||
let env_config = Environment::from_env();
|
||||
|
||||
let toggl_api = TogglApi::new(sensitive::API_TOKEN, sensitive::WORKSPACE_ID);
|
||||
|
||||
let database_url = std::env::var("DATABASE_URL").expect("DATABASE_URL must be set");
|
||||
|
||||
let mut db = PgPool::connect(&database_url).await.unwrap();
|
||||
let toggl_api = TogglApi::new(&env_config.api_token, env_config.default_workspace_id);
|
||||
let mut db = PgPool::connect(&env_config.database_url).await.unwrap();
|
||||
|
||||
sqlx::migrate!("./migrations")
|
||||
.run(&db)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user