diff --git a/crates/cuddle-clusters/src/process.rs b/crates/cuddle-clusters/src/process.rs index 4b113b7..12f0dd7 100644 --- a/crates/cuddle-clusters/src/process.rs +++ b/crates/cuddle-clusters/src/process.rs @@ -5,6 +5,7 @@ use std::{ }; use anyhow::Context; +use minijinja::context; use tokio::io::AsyncWriteExt; use tokio_stream::{wrappers::ReadDirStream, StreamExt}; @@ -167,7 +168,17 @@ async fn process_template_file( .ok_or(anyhow::anyhow!("file didn't have a jinja2 format"))?; let mut dest_file = tokio::fs::File::create(dest.join(file_name)).await?; - dest_file.write_all(file.as_bytes()).await?; + + let mut env = minijinja::Environment::new(); + env.add_template(file_name.to_str().unwrap_or_default(), &file) + .context(format!( + "failed to load template at: {}", + template_file.display() + ))?; + let tmpl = env.get_template(file_name.to_str().unwrap_or_default())?; + let rendered = tmpl.render(context! {})?; + + dest_file.write_all(rendered.as_bytes()).await?; Ok(()) } diff --git a/crates/cuddle-clusters/tests/can_run_for_env/expected/dev/test.yaml b/crates/cuddle-clusters/tests/can_run_for_env/expected/dev/test.yaml index 5418072..92dbfb6 100644 --- a/crates/cuddle-clusters/tests/can_run_for_env/expected/dev/test.yaml +++ b/crates/cuddle-clusters/tests/can_run_for_env/expected/dev/test.yaml @@ -3,4 +3,4 @@ some = { thing = "some" } -} +} \ No newline at end of file