Skip to content

Commit 618d6bf

Browse files
committed
Add latest node version and update librdkafka on each build
1 parent 9612dff commit 618d6bf

File tree

3 files changed

+61
-2
lines changed

3 files changed

+61
-2
lines changed

.semaphore/semaphore.yml

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ global_job_config:
2828
- git submodule update --init --recursive
2929
- cd deps/librdkafka
3030
- git fetch origin
31+
- git pull origin master
3132
- cd ../../
3233
- cache clear
3334

@@ -153,6 +154,15 @@ blocks:
153154
- npx node-pre-gyp package
154155
- ls build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}
155156
- artifact push workflow "build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}" --destination "releases/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}"
157+
- name: "Release: latest: 22"
158+
commands:
159+
- sem-version node 22.2.0
160+
- export NODE_ABI=127
161+
- export ARTIFACT_KEY="confluent-kafka-javascript-${SEMAPHORE_GIT_TAG_NAME}-node-v${NODE_ABI}-${PLATFORM}-${LIBC}-${ARCHITECTURE}.tar.gz"
162+
- npm install # node-pre-gyp will fallback to build here, because new tag implies no release yet.
163+
- npx node-pre-gyp package
164+
- ls build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}
165+
- artifact push workflow "build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}" --destination "releases/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}"
156166

157167
- name: "Linux arm64: Release"
158168
dependencies: [ ]
@@ -200,6 +210,15 @@ blocks:
200210
- npx node-pre-gyp package
201211
- ls build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}
202212
- artifact push workflow "build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}" --destination "releases/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}"
213+
- name: "Release: latest: 22"
214+
commands:
215+
- sem-version node 22.2.0
216+
- export NODE_ABI=127
217+
- export ARTIFACT_KEY="confluent-kafka-javascript-${SEMAPHORE_GIT_TAG_NAME}-node-v${NODE_ABI}-${PLATFORM}-${LIBC}-${ARCHITECTURE}.tar.gz"
218+
- npm install # node-pre-gyp will fallback to build here, because new tag implies no release yet.
219+
- npx node-pre-gyp package
220+
- ls build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}
221+
- artifact push workflow "build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}" --destination "releases/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}"
203222

204223
- name: "Linux amd64 musl: Release"
205224
dependencies: [ ]
@@ -241,6 +260,15 @@ blocks:
241260
- docker run -v "$(pwd):/v" node:21-alpine /v/.semaphore/build-docker.sh
242261
- ls build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}
243262
- artifact push workflow "build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}" --destination "releases/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}"
263+
- name: "Release: latest: 22"
264+
commands:
265+
- sem-version node 22.2.0
266+
- export NODE_ABI=127
267+
- export ARTIFACT_KEY="confluent-kafka-javascript-${SEMAPHORE_GIT_TAG_NAME}-node-v${NODE_ABI}-${PLATFORM}-${LIBC}-${ARCHITECTURE}.tar.gz"
268+
- npm install # node-pre-gyp will fallback to build here, because new tag implies no release yet.
269+
- npx node-pre-gyp package
270+
- ls build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}
271+
- artifact push workflow "build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}" --destination "releases/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}"
244272

245273
- name: "Linux arm64 musl: Release"
246274
dependencies: [ ]
@@ -282,6 +310,15 @@ blocks:
282310
- docker run -v "$(pwd):/v" node:21-alpine /v/.semaphore/build-docker.sh
283311
- ls build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}
284312
- artifact push workflow "build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}" --destination "releases/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}"
313+
- name: "Release: latest: 22"
314+
commands:
315+
- sem-version node 22.2.0
316+
- export NODE_ABI=127
317+
- export ARTIFACT_KEY="confluent-kafka-javascript-${SEMAPHORE_GIT_TAG_NAME}-node-v${NODE_ABI}-${PLATFORM}-${LIBC}-${ARCHITECTURE}.tar.gz"
318+
- npm install # node-pre-gyp will fallback to build here, because new tag implies no release yet.
319+
- npx node-pre-gyp package
320+
- ls build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}
321+
- artifact push workflow "build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}" --destination "releases/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}"
285322

286323
- name: "macOS arm64/m1: Release"
287324
dependencies: [ ]
@@ -326,6 +363,15 @@ blocks:
326363
- npx node-pre-gyp package
327364
- ls build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}
328365
- artifact push workflow "build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}" --destination "releases/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}"
366+
- name: "Release: latest: 22"
367+
commands:
368+
- sem-version node 22.2.0
369+
- export NODE_ABI=127
370+
- export ARTIFACT_KEY="confluent-kafka-javascript-${SEMAPHORE_GIT_TAG_NAME}-node-v${NODE_ABI}-${PLATFORM}-${LIBC}-${ARCHITECTURE}.tar.gz"
371+
- npm install # node-pre-gyp will fallback to build here, because new tag implies no release yet.
372+
- npx node-pre-gyp package
373+
- ls build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}
374+
- artifact push workflow "build/stage/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}" --destination "releases/${SEMAPHORE_GIT_TAG_NAME}/${ARTIFACT_KEY}"
329375

330376
- name: "Windows x64: Release"
331377
dependencies: [ ]
@@ -402,6 +448,19 @@ blocks:
402448
- npx node-pre-gyp package
403449
- ls "build/stage/${env:SEMAPHORE_GIT_TAG_NAME}/${env:ARTIFACT_KEY}"
404450
- artifact push workflow "build/stage/${env:SEMAPHORE_GIT_TAG_NAME}/${env:ARTIFACT_KEY}" --destination "releases/${env:SEMAPHORE_GIT_TAG_NAME}/${env:ARTIFACT_KEY}"
451+
- name: "Release: latest: 22"
452+
commands:
453+
- Invoke-WebRequest "https://nodejs.org/dist/v22.2.0/node-v22.2.0-x64.msi" -OutFile node.msi
454+
- msiexec /qn /l* node-log.txt /i node.msi
455+
- node --version
456+
- pip install setuptools
457+
- $env:NODE_ABI = 127
458+
- $env:ARTIFACT_KEY = "confluent-kafka-javascript-${env:SEMAPHORE_GIT_TAG_NAME}-node-v${env:NODE_ABI}-${env:PLATFORM}-${env:LIBC}-${env:ARCHITECTURE}.tar.gz"
459+
- echo "$env:ARTIFACT_KEY"
460+
- npm install # node-pre-gyp will fallback to build here, because new tag implies no release yet.
461+
- npx node-pre-gyp package
462+
- ls "build/stage/${env:SEMAPHORE_GIT_TAG_NAME}/${env:ARTIFACT_KEY}"
463+
- artifact push workflow "build/stage/${env:SEMAPHORE_GIT_TAG_NAME}/${env:ARTIFACT_KEY}" --destination "releases/${env:SEMAPHORE_GIT_TAG_NAME}/${env:ARTIFACT_KEY}"
405464

406465
- name: 'Packaging: tar all release artifacts'
407466
dependencies:

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ To use **Schema Registry**, use the existing [kafkajs/confluent-schema-registry]
2727

2828
The following configurations are supported for this early access preview:
2929

30-
* Any supported version of Node.js (The two LTS versions, 18 and 20, and the latest version, 21).
30+
* Any supported version of Node.js (The two LTS versions, 18 and 20, and the latest versions, 21 and 22).
3131
* Linux (x64 and arm64) - both glibc and musl/alpine.
3232
* macOS - arm64/m1.
3333
* Windows - x64 (experimentally available in EA).

deps/librdkafka

Submodule librdkafka updated 88 files

0 commit comments

Comments
 (0)