@@ -52,38 +52,55 @@ jobs:
5252 path : wheelhouse/*.whl
5353
5454 build_wheels_linux :
55- name : Build wheels on ${{ matrix.os }}
56- runs-on : ${{ matrix.os }}
57- strategy :
58- matrix :
59- os : [ubuntu-latest]
60-
61- steps :
62- - uses : actions/checkout@v4.2.2
63- - name : Build wheels
64- uses : pypa/cibuildwheel@v3.0.1
65- env :
66- CIBW_MANYLINUX_X86_64_IMAGE : quay.io/pypa/manylinux_2_28_x86_64
67- CIBW_SKIP : " *-musllinux_* pp* *-*linux_{aarch64,ppc64le}"
68- # CIBW_BUILD: cp37*
69- CIBW_REPAIR_WHEEL_COMMAND_LINUX :
70- auditwheel repair
71- --exclude libdb2.so.1
72- --exclude libDB2xml4c.so.58
73- --exclude libm.so.6
74- --exclude libcrypt.so.1
75- --exclude libpam.so.0
76- --exclude librt.so.1
77- --exclude libpthread.so.0
78- --exclude libc.so.6
79- --exclude libdl.so.2
80- --wheel-dir {dest_dir}
81- {wheel}
55+ name : Build wheels on ${{ matrix.os }}
56+ runs-on : ${{ matrix.os }}
57+ strategy :
58+ matrix :
59+ os : [ubuntu-latest]
60+
61+ steps :
62+ - uses : actions/checkout@v4.2.2
63+
64+ - name : Build wheels
65+ uses : pypa/cibuildwheel@v3.0.1
66+ env :
67+ CIBW_MANYLINUX_X86_64_IMAGE : quay.io/pypa/manylinux_2_28_x86_64
68+ CIBW_SKIP : " *-musllinux_* pp* *-*linux_{aarch64,ppc64le}"
69+
70+ # Install IBM DB2 CLI driver *inside* the manylinux container
71+ CIBW_BEFORE_ALL_LINUX : |
72+ curl -LO https://public.dhe.ibm.com/ibmdl/export/pub/software/data/db2/drivers/odbc_cli/linuxx64_odbc_cli.tar.gz
73+ mkdir -p /opt/ibm
74+ tar -xzf linuxx64_odbc_cli.tar.gz -C /opt/ibm
75+ export IBM_DB_HOME=/opt/ibm/clidriver
76+ export LD_LIBRARY_PATH=$IBM_DB_HOME/lib:$LD_LIBRARY_PATH
77+ pip install --upgrade auditwheel
78+
79+ # Set env vars for build inside the container
80+ CIBW_ENVIRONMENT : >
81+ IBM_DB_HOME=/opt/ibm/clidriver
82+ LD_LIBRARY_PATH=/opt/ibm/clidriver/lib:$LD_LIBRARY_PATH
83+
84+ # Repair wheel and exclude driver-specific libs
85+ CIBW_REPAIR_WHEEL_COMMAND_LINUX : >
86+ auditwheel repair
87+ --exclude libdb2.so.1
88+ --exclude libDB2xml4c.so.58
89+ --exclude libm.so.6
90+ --exclude libcrypt.so.1
91+ --exclude libpam.so.0
92+ --exclude librt.so.1
93+ --exclude libpthread.so.0
94+ --exclude libc.so.6
95+ --exclude libdl.so.2
96+ --wheel-dir {dest_dir}
97+ {wheel}
98+
99+ - uses : actions/upload-artifact@v4.6.2
100+ with :
101+ name : ibmdb-wheels-${{ matrix.os }}
102+ path : wheelhouse/*.whl
82103
83- - uses : actions/upload-artifact@v4.6.2
84- with :
85- name : ibmdb-wheels-${{ matrix.os }}
86- path : wheelhouse/*.whl
87104
88105 build_wheels_macos_arm64 :
89106 name : Build wheels on macOS ARM64
0 commit comments