From 8c5f63620ccc2a499f8418dbf140b00f189fba61 Mon Sep 17 00:00:00 2001 From: Sean Whalen <44679+seanthegeek@users.noreply.github.com> Date: Wed, 20 May 2026 09:38:15 -0400 Subject: [PATCH] Fix Validate-dashboards CI: heredoc was redirecting itself to stdin (#773) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit `echo "$response" | python3 - <<'PY' ... PY` redirected the heredoc to python3's stdin (where it was correctly read as the script body), but sys.stdin was then at EOF when the script called json.load(sys.stdin) — so the assertion blew up with 'Expecting value: line 1 column 1' even when Kibana's import had succeeded. Pass the response via env var instead. The OSD ndjson import itself was working all along (successCount: 26, success: true); only the assertion step was broken, so master has been showing a red Validate-dashboards run since the workflow was introduced. --- .github/workflows/dashboards.yml | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/.github/workflows/dashboards.yml b/.github/workflows/dashboards.yml index 3e7731a..33efcf4 100644 --- a/.github/workflows/dashboards.yml +++ b/.github/workflows/dashboards.yml @@ -74,9 +74,13 @@ jobs: -H 'kbn-xsrf: true' \ --form file=@dashboards/opensearch/opensearch_dashboards.ndjson) echo "$response" | python3 -m json.tool - echo "$response" | python3 - <<'PY' - import json, sys - d = json.load(sys.stdin) + # Pass the response via env, not stdin: `python3 - <