@@ -9,6 +9,9 @@ global_job_config:
99 env_vars :
1010 - name : LIBRDKAFKA_VERSION
1111 value : v2.14.0
12+ # TODO KIP-932: Remove LIBRDKAFKA_BRANCH once LIBRDKAFKA_VERSION includes share consumer support
13+ - name : LIBRDKAFKA_BRANCH
14+ value : dev_kip-932_queues-for-kafka
1215 prologue :
1316 commands :
1417 - checkout
@@ -32,6 +35,7 @@ blocks:
3235 - export ARCH=x64
3336 - sem-version python 3.11
3437 - pip install uv
38+ # TODO KIP-932: Add LIBRDKAFKA_BRANCH fallback for share consumer support
3539 - PIP_INSTALL_OPTIONS="--user" tools/wheels/build-wheels.sh "${LIBRDKAFKA_VERSION#v}" wheelhouse 2.16.2
3640 - tar -czf wheelhouse-macOS-${ARCH}.tgz wheelhouse
3741 - artifact push workflow wheelhouse-macOS-${ARCH}.tgz --destination artifacts/wheels-${OS_NAME}-${ARCH}.tgz/
@@ -57,6 +61,7 @@ blocks:
5761 - export ARCH=x64
5862 - sem-version python 3.13
5963 - pip install uv
64+ # TODO KIP-932: Add LIBRDKAFKA_BRANCH fallback for share consumer support
6065 - PIP_INSTALL_OPTIONS="--user" tools/wheels/build-wheels.sh "${LIBRDKAFKA_VERSION#v}" wheelhouse
6166 - tar -czf wheelhouse-macOS-${ARCH}-py313-plus.tgz wheelhouse
6267 - artifact push workflow wheelhouse-macOS-${ARCH}-py313-plus.tgz --destination artifacts/wheels-${OS_NAME}-${ARCH}-py313-plus.tgz/
@@ -80,6 +85,7 @@ blocks:
8085 - export ARCH=arm64
8186 - sem-version python 3.11
8287 - pip install uv
88+ # TODO KIP-932: Add LIBRDKAFKA_BRANCH fallback for share consumer support
8389 - PIP_INSTALL_OPTIONS="--user" tools/wheels/build-wheels.sh "${LIBRDKAFKA_VERSION#v}" wheelhouse 2.16.2
8490 - tar -czf wheelhouse-macOS-${ARCH}.tgz wheelhouse
8591 - artifact push workflow wheelhouse-macOS-${ARCH}.tgz --destination artifacts/wheels-${OS_NAME}-${ARCH}.tgz/
@@ -107,6 +113,7 @@ blocks:
107113 - export ARCH=arm64
108114 - sem-version python 3.13
109115 - pip install uv
116+ # TODO KIP-932: Add LIBRDKAFKA_BRANCH fallback for share consumer support
110117 - PIP_INSTALL_OPTIONS="--user" tools/wheels/build-wheels.sh "${LIBRDKAFKA_VERSION#v}" wheelhouse
111118 - tar -czf wheelhouse-macOS-${ARCH}-py313-plus.tgz wheelhouse
112119 - artifact push workflow wheelhouse-macOS-${ARCH}-py313-plus.tgz --destination artifacts/wheels-${OS_NAME}-${ARCH}-py313-plus.tgz/
@@ -128,6 +135,7 @@ blocks:
128135 - export ARCH=arm64
129136 - sem-version python 3.13
130137 - pip install uv
138+ # TODO KIP-932: Add LIBRDKAFKA_BRANCH fallback for share consumer support
131139 - ./tools/wheels/build-wheels.sh "${LIBRDKAFKA_VERSION#v}" wheelhouse
132140 - tar -czf wheelhouse-linux-${ARCH}.tgz wheelhouse
133141 - artifact push workflow wheelhouse-linux-${ARCH}.tgz --destination artifacts/wheels-${OS_NAME}-${ARCH}.tgz/
@@ -149,6 +157,7 @@ blocks:
149157 - export ARCH=x64
150158 - sem-version python 3.11
151159 - pip install uv
160+ # TODO KIP-932: Add LIBRDKAFKA_BRANCH fallback for share consumer support
152161 - ./tools/wheels/build-wheels.sh "${LIBRDKAFKA_VERSION#v}" wheelhouse
153162 - tar -czf wheelhouse-linux-${ARCH}.tgz wheelhouse
154163 - artifact push workflow wheelhouse-linux-${ARCH}.tgz --destination artifacts/wheels-${OS_NAME}-${ARCH}.tgz/
@@ -181,6 +190,7 @@ blocks:
181190 commands :
182191 - sem-version python 3.11.9
183192 - bash tools/mingw-w64/semaphore_commands.sh
193+ # TODO KIP-932: Add LIBRDKAFKA_BRANCH fallback for share consumer support
184194 - bash tools/wheels/install-librdkafka.sh $env:LIBRDKAFKA_VERSION.TrimStart("v") dest
185195 - tools/wheels/build-wheels.bat x64 win_amd64 dest wheelhouse
186196 - tar -czf wheelhouse-windows-${Env:ARCH}.tgz wheelhouse
@@ -199,10 +209,15 @@ blocks:
199209 - export ARCH=x64
200210 - ' [[ -z $DOCKERHUB_APIKEY ]] || docker login --username $DOCKERHUB_USER --password $DOCKERHUB_APIKEY'
201211 - sudo apt-get update -qq && sudo apt-get install -y -qq clang-format
212+ # TODO KIP-932: matrix the Python version (3.12, 3.13, 3.14)
213+ # across these jobs. Currently every job pins 3.11, which leaves
214+ # version-specific issues in the C extension undetected until users hit
215+ # them.
202216 jobs :
203217 - name : Build and Tests with 'classic' group protocol
204218 commands :
205219 - sem-version python 3.11
220+ - sem-version java 17
206221 - pip install uv
207222 # use a virtualenv
208223 - uv venv _venv --python "$(command -v python)" && source _venv/bin/activate
@@ -221,6 +236,7 @@ blocks:
221236 - name : Build, Test, and Report coverage
222237 commands :
223238 - sem-version python 3.11
239+ - sem-version java 17
224240 - pip install uv
225241 # use a virtualenv
226242 - uv venv _venv --python "$(command -v python)" && source _venv/bin/activate
@@ -245,6 +261,7 @@ blocks:
245261 commands :
246262 - export ARCH=arm64
247263 - sem-version python 3.11
264+ - sem-version java 17
248265 - pip install uv
249266 # use a virtualenv
250267 - uv venv _venv --python "$(command -v python)" && source _venv/bin/activate
@@ -319,9 +336,15 @@ blocks:
319336 # Install existing test requirements
320337 - uv pip install -r requirements/requirements-tests-install.txt
321338
339+ # TODO KIP-932: Remove LIBRDKAFKA_BRANCH fallback once LIBRDKAFKA_VERSION includes share consumer support
322340 # Build and install confluent-kafka from source
323341 - lib_dir=dest/runtimes/$OS_NAME-$ARCH/native
324- - tools/wheels/install-librdkafka.sh "${LIBRDKAFKA_VERSION#v}" dest
342+ - |
343+ if [[ -n $LIBRDKAFKA_BRANCH ]]; then
344+ tools/wheels/build-librdkafka-branch.sh "$LIBRDKAFKA_BRANCH" dest
345+ else
346+ tools/wheels/install-librdkafka.sh "${LIBRDKAFKA_VERSION#v}" dest
347+ fi
325348 - export CFLAGS="$CFLAGS -I${PWD}/dest/build/native/include"
326349 - export LDFLAGS="$LDFLAGS -L${PWD}/${lib_dir}"
327350 - export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$PWD/$lib_dir"
0 commit comments