diff --git a/conformance/run.sh b/conformance/run.sh index 6a9fa59..38f0faf 100755 --- a/conformance/run.sh +++ b/conformance/run.sh @@ -137,8 +137,14 @@ run_chainsaw() { log "Running Chainsaw over ${#dirs[@]} test dir(s) with pinned ${CHAINSAW_VERSION}" # Chainsaw writes JUnit per config/chainsaw-config.yaml (report.* under _artifacts). + # --report-path is passed ABSOLUTE (overriding the config's relative `_artifacts`) so the report + # write succeeds regardless of the caller's CWD — otherwise chainsaw's relative path resolves + # against $PWD and fails ("open _artifacts/chainsaw-report.xml: no such file") when run.sh is + # invoked from the repo root instead of conformance/. + mkdir -p "${ARTIFACTS}" chainsaw test \ --config "${CONF_ROOT}/config/chainsaw-config.yaml" \ + --report-path "${ARTIFACTS}" \ "${test_dir_args[@]}" # Normalize whatever chainsaw named the report to a stable path CI collects.