From cddef1a50a48e7cb60a69762a579b95e0018aa17 Mon Sep 17 00:00:00 2001 From: HugoCasa Date: Sun, 13 Aug 2023 01:04:45 +0200 Subject: [PATCH] fix: powershell escape backticks (#2044) * fix: powershell escape backticks * fix: less boilerplate --- backend/windmill-worker/src/worker.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/backend/windmill-worker/src/worker.rs b/backend/windmill-worker/src/worker.rs index cdd950630b..e112e4717c 100644 --- a/backend/windmill-worker/src/worker.rs +++ b/backend/windmill-worker/src/worker.rs @@ -1672,7 +1672,10 @@ async fn handle_powershell_job( .collect::>(); let pwsh_args = args_owned.iter().map(|(n, v)| format!("--{n} {v}")).join(" "); - let content = content.replace('$', r"\$"); // escape powershell variables + let content = content + .replace('$', r"\$") // escape powershell variables + .replace("`", r"\`"); // escape powershell backticks + write_file(job_dir, "main.sh", &format!("set -e\ncat > script.ps1 << EOF\n{content}\nEOF\npwsh -File script.ps1 {pwsh_args}\necho \"\"\nsleep 0.02")).await?; let token = client.get_token().await; let mut reserved_variables = get_reserved_variables(job, &token, db).await?;