From f207f774de017105a34b8729cf53a015d5bd53d2 Mon Sep 17 00:00:00 2001 From: MichaelFisher1997 Date: Sat, 28 Feb 2026 02:21:57 +0000 Subject: [PATCH] fix: parse terraform output JSON robustly in enroll step Handle setup-terraform wrapper prefixes by decoding from first JSON object before reading VM outputs. --- .gitea/workflows/terraform-apply.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.gitea/workflows/terraform-apply.yml b/.gitea/workflows/terraform-apply.yml index c18bd2b..626ddce 100644 --- a/.gitea/workflows/terraform-apply.yml +++ b/.gitea/workflows/terraform-apply.yml @@ -108,8 +108,11 @@ jobs: if not token_id or not token_secret: raise SystemExit("Missing Proxmox token id/secret") - with open("tfoutputs.json", "r", encoding="utf-8") as f: - outputs = json.load(f) + raw_outputs = open("tfoutputs.json", "rb").read().decode("utf-8", "ignore") + start = raw_outputs.find("{") + if start == -1: + raise SystemExit("Could not find JSON payload in terraform output") + outputs = json.JSONDecoder().raw_decode(raw_outputs[start:])[0] targets = [] for output_name in ("alpaca_vm_ids", "llama_vm_ids"): -- 2.49.1