fix generator template

This commit is contained in:
2025-04-17 22:05:58 +04:00
parent 2b668ba89f
commit a94f8e2bfd
6 changed files with 36 additions and 9 deletions

View File

@@ -8,11 +8,15 @@ use toml_edit::DocumentMut;
use tracing_subscriber::{fmt, layer::SubscriberExt, util::SubscriberInitExt, EnvFilter};
#[derive(Parser, Debug)]
struct Args {
pub struct Args {
#[clap(short, long, default_value = "generator.toml")]
config: String,
#[clap(short, long, env = "DATABASE_URL")]
database_url: String,
#[clap(short, long)]
workdir: Option<String>,
#[clap(short, long, default_value = "true")]
rustfmt: bool,
}
#[tokio::main]
@@ -24,11 +28,15 @@ async fn main() -> Result<()> {
.with(EnvFilter::from_default_env())
.init();
let args = Args::parse();
tracing::info!(?args);
let config = fs::read_to_string(args.config).await?;
tracing::info!(?args);
// change workdir
if let Some(workdir) = &args.workdir {
std::env::set_current_dir(workdir)?;
}
let config = fs::read_to_string(&args.config).await?;
let root_config = config.parse::<DocumentMut>()?;
generator::generate(&args.database_url, root_config).await?;
generator::generate(args, root_config).await?;
Ok(())
}