dagger_sdk/core/
config.rs1use std::path::PathBuf;
2
3use crate::core::logger::DynLogger;
4
5pub struct Config {
6 pub workdir_path: Option<PathBuf>,
7 pub config_path: Option<PathBuf>,
8 pub timeout_ms: u64,
9 pub execute_timeout_ms: Option<u64>,
10 pub logger: Option<DynLogger>,
11}
12
13impl Default for Config {
14 fn default() -> Self {
15 Self::new(None, None, None, None, None)
16 }
17}
18
19impl Config {
20 pub fn new(
21 workdir_path: Option<PathBuf>,
22 config_path: Option<PathBuf>,
23 timeout_ms: Option<u64>,
24 execute_timeout_ms: Option<u64>,
25 logger: Option<DynLogger>,
26 ) -> Self {
27 Self {
28 workdir_path,
29 config_path,
30 timeout_ms: timeout_ms.unwrap_or(10 * 1000),
31 execute_timeout_ms,
32 logger,
33 }
34 }
35}