diff --git a/src/util/config.rs b/src/util/config.rs index dd12d12..97dd99c 100644 --- a/src/util/config.rs +++ b/src/util/config.rs @@ -1 +1,32 @@ +use std::{path::PathBuf, collections::HashMap}; + use serde_yaml; + +#[derive(Default)] +struct Config { + executable_paths: HashMap, + + input_path: PathBuf, + output_path: PathBuf, + + toolchains: Vec, +} + +#[derive(Default)] +struct Toolchain { + name: String, + steps: Vec, +} + +#[derive(Default)] +struct Step { + name: String, + + executable_path: Option, // if None then we use the current executable path + arguments: Vec, // special string $INPUT corresponds to previous step output + output: String, // the output file name +} + +pub fn parse_config(path: PathBuf) { + +}