diff --git a/src/data.rs b/src/data.rs index dd1d470..1fdef9d 100644 --- a/src/data.rs +++ b/src/data.rs @@ -159,6 +159,11 @@ pub(crate) fn shell() -> String { return "/bin/sh".to_string(); } +/// Default id (`-1`) +pub(crate) fn id() -> String { + return "-1".to_string(); +} + /// Default revision (`1`) pub(crate) fn revision() -> String { return "1".to_string(); diff --git a/src/main.rs b/src/main.rs index 9501547..314ae09 100644 --- a/src/main.rs +++ b/src/main.rs @@ -81,7 +81,7 @@ async fn run(config_path: String) { let job_exit_status = run_job(&state.conf, job_id.clone(), job.clone()); sql::log_job( - &mut pg_connection, + pg_connection.as_mut(), start_time, start_time + job_exit_status.duration, job_exit_status.exit_code, @@ -297,6 +297,13 @@ struct State { dependency_map: HashMap>, /// A hashmap mapping all job ids to their jobs jobs: HashMap, + /// The connection to the database + /// + /// Example (from sqlx README, modified) + /// ```ignore + /// sqlx::query("DELETE FROM table").execute(&mut state.conn).await?; + /// ``` + sql: PgConnection, } impl State { @@ -328,6 +335,7 @@ impl State { conf: conf.clone(), jobs: jobs.clone(), dependency_map: State::dependency_map(jobs, conf), + sql: logging::sql::start(5).await, }; }