Skip to content

Conversation

@a5dur
Copy link
Contributor

@a5dur a5dur commented Nov 10, 2025

Added installation steps for qsv with error handling and fallback to musl version.

The GitHub Actions workflow runs inside the ckan/ckan-dev:2.11 Docker container, which is based on Debian 12 (Bookworm). This environment has:
GLIBC version 2.36 (system C library)

However, the latest qsv 9.1.0 GNU binary was compiled against:
GLIBC version 2.39 (requirement)

This version mismatch causes the GNU binary to fail with
/usr/local/bin/qsvdp: /lib/x86_64-linux-gnu/libc.so.6: version 'GLIBC_2.39' not found

This PR tries to install the GNU version of qsv, if GNU version fails due to GLIBC mismatch, automatically download and install the musl version

@jqnatividad , discontinuing the musl version for next qsv releases won't be a good idea

Future-proofing: When CKAN eventually updates their container base image to a newer Debian/Ubuntu version with GLIBC 2.39+, the workflow will automatically use the GNU version without code changes

Testing

Tested in Debian 12 container (GLIBC 2.36) - correctly falls back to musl
Tested in Ubuntu 24.04 environment (GLIBC 2.39) - successfully uses GNU version See Run
Both versions pass all DataPusher+ qsv integration tests

Changes Made

Updated qsv version from 7.1.0 to 9.1.0

  • Added GLIBC compatibility detection
  • automatic fallback mechanism
  • Added detailed logging for debugging

Added installation steps for qsv with error handling and fallback to musl version.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant