Skip to content

Commit ceb7d76

Browse files
committed
fix: Update sqllogictest binary build process and adjust working directory
1 parent cd967ba commit ceb7d76

1 file changed

Lines changed: 23 additions & 5 deletions

File tree

.github/workflows/extended.yml

Lines changed: 23 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -169,16 +169,34 @@ jobs:
169169
rust-version: stable
170170
- name: Build sqllogictest binary
171171
run: |
172-
TEST_BIN=$(cargo test --features backtrace,parquet_encryption --profile release-nonlto --test sqllogictests --no-run --message-format=json | sed -n 's/.*"executable":"\([^"]*\)".*/\1/p' | head -n 1)
172+
# Cargo emits test binaries with hashed filenames under target/.../deps.
173+
TEST_BIN=$(cargo build --profile release-nonlto --features backtrace,parquet_encryption --package datafusion-sqllogictest --test sqllogictests --message-format=json | python - <<'PY'
174+
import json
175+
import sys
176+
177+
for line in sys.stdin:
178+
try:
179+
payload = json.loads(line)
180+
except json.JSONDecodeError:
181+
continue
182+
if payload.get("reason") != "compiler-artifact":
183+
continue
184+
target = payload.get("target") or {}
185+
if target.get("name") == "sqllogictests" and "test" in target.get("kind", []):
186+
executable = payload.get("executable")
187+
if executable:
188+
print(executable)
189+
break
190+
PY
191+
)
173192
if [ -z "$TEST_BIN" ]; then
174193
echo "Could not find sqllogictests test binary"
175194
exit 1
176195
fi
177196
echo "TEST_BIN=$TEST_BIN" >> "$GITHUB_ENV"
178197
- name: Run sqllogictest
198+
working-directory: datafusion/sqllogictest
179199
run: |
180-
(
181-
cd datafusion/sqllogictest
182-
"$TEST_BIN" --include-sqlite
183-
)
200+
# sqllogictests expects crate-relative paths for test data.
201+
"$TEST_BIN" --include-sqlite
184202
cargo clean

0 commit comments

Comments
 (0)