refactor: Factor out read_config_template from setup as well

This commit is contained in:
Kiril Kovachev 2025-05-08 23:48:05 +01:00
parent d5c3e55613
commit 36dae8ca6e

View File

@ -47,12 +47,16 @@ enum Action {
Run, Run,
} }
fn read_config_template() -> Result<String, std::io::Error> {
std::fs::read_to_string(CONFIG_TEMPLATE_PATH).or(Err(std::io::Error::new(std::io::ErrorKind::NotFound, format!("Unable to find {}; did you execute the script from the same directory?", CONFIG_TEMPLATE_PATH))))
}
fn fill_config_template(config_template: String, args: SetupArgs) -> String { fn fill_config_template(config_template: String, args: SetupArgs) -> String {
formatx!(config_template, args.api_url, args.rest_url, args.username, args.botpassword, args.oauth2_token).unwrap() formatx!(config_template, args.api_url, args.rest_url, args.username, args.botpassword, args.oauth2_token).unwrap()
} }
fn setup(args: SetupArgs) -> Result<(), std::io::Error> { fn setup(args: SetupArgs) -> Result<(), std::io::Error> {
let config_template = std::fs::read_to_string(CONFIG_TEMPLATE_PATH).or(Err(std::io::Error::new(std::io::ErrorKind::NotFound, format!("Unable to find {}; did you execute the script from the same directory?", CONFIG_TEMPLATE_PATH))))?; let config_template = read_config_template()?;
let filled_in_config = fill_config_template(config_template, args); let filled_in_config = fill_config_template(config_template, args);
let path = get_bot_config_path(); let path = get_bot_config_path();
std::fs::write(&path, filled_in_config)?; std::fs::write(&path, filled_in_config)?;