@@ -114,7 +114,7 @@ jobs:
114114 name : scripts-${{ needs.source.outputs.gem_version }}
115115 - name : Install build environment
116116 env :
117- SUPPORTED_RUBY_VERSIONS : " 3.1 3.2 3.3"
117+ SUPPORTED_RUBY_VERSIONS : " 3.1 3.2 3.3 3.4 "
118118 run : |
119119 bash bin/jenkins/install-rubies.sh
120120 - uses : actions/download-artifact@v4
@@ -123,7 +123,7 @@ jobs:
123123 name : couchbase-${{ needs.source.outputs.gem_version }}
124124 - name : Build gem
125125 env :
126- SUPPORTED_RUBY_VERSIONS : " 3.1 3.2 3.3"
126+ SUPPORTED_RUBY_VERSIONS : " 3.1 3.2 3.3 3.4 "
127127 BUNDLE_ALLOW_ROOT : true
128128 run : |
129129 bash bin/jenkins/build-gem.sh
@@ -135,14 +135,15 @@ jobs:
135135
136136 build_linux_x86_64 :
137137 needs : source
138- runs-on : ubuntu-20 .04
138+ runs-on : ubuntu-22 .04
139139 strategy :
140140 fail-fast : false
141141 matrix :
142142 ruby :
143143 - ' 3.1'
144144 - ' 3.2'
145145 - ' 3.3'
146+ - ' 3.4'
146147 steps :
147148 -
uses :
hendrikmuhs/[email protected] 148149 with :
@@ -190,9 +191,13 @@ jobs:
190191 with :
191192 path : pkg/binary/3.3
192193 name : couchbase-${{ needs.source.outputs.gem_version }}-x86_64-linux-3.3
194+ - uses : actions/download-artifact@v4
195+ with :
196+ path : pkg/binary/3.4
197+ name : couchbase-${{ needs.source.outputs.gem_version }}-x86_64-linux-3.4
193198 - uses : ruby/setup-ruby@v1
194199 with :
195- ruby-version : 3.3
200+ ruby-version : 3.4
196201 - name : Repackage
197202 run : |
198203 ruby bin/jenkins/repackage-extension.rb
@@ -202,6 +207,80 @@ jobs:
202207 path : |
203208 pkg/fat/*.gem
204209
210+ build_linux_aarch64 :
211+ needs : source
212+ runs-on : ubuntu-22.04-arm
213+ strategy :
214+ fail-fast : false
215+ matrix :
216+ ruby :
217+ - ' 3.1'
218+ - ' 3.2'
219+ - ' 3.3'
220+ - ' 3.4'
221+ steps :
222+ -
uses :
hendrikmuhs/[email protected] 223+ with :
224+ max-size : 2G
225+ key : ${{ github.job }}-${{ matrix.ruby }}
226+ - uses : ruby/setup-ruby@v1
227+ with :
228+ ruby-version : ${{ matrix.ruby }}
229+ - uses : actions/download-artifact@v4
230+ with :
231+ name : couchbase-${{ needs.source.outputs.gem_version }}
232+ - name : Precompile
233+ env :
234+ CB_STATIC_BORINGSSL : 1
235+ CB_STATIC_STDLIB : 1
236+ CB_REMOVE_EXT_DIRECTORY : 1
237+ run : |
238+ gem install gem-compiler
239+ gem compile --strip --prune couchbase-${{ needs.source.outputs.gem_version }}.gem
240+ - uses : actions/upload-artifact@v4
241+ with :
242+ retention-days : 1
243+ name : couchbase-${{ needs.source.outputs.gem_version }}-aarch64-linux-${{ matrix.ruby }}
244+ path : |
245+ *-aarch64-linux.gem
246+
247+ repackage_linux_aarch64 :
248+ needs :
249+ - source
250+ - build_linux_aarch64
251+ runs-on : ubuntu-22.04-arm
252+ steps :
253+ - uses : actions/download-artifact@v4
254+ with :
255+ name : scripts-${{ needs.source.outputs.gem_version }}
256+ - uses : actions/download-artifact@v4
257+ with :
258+ path : pkg/binary/3.1
259+ name : couchbase-${{ needs.source.outputs.gem_version }}-aarch64-linux-3.1
260+ - uses : actions/download-artifact@v4
261+ with :
262+ path : pkg/binary/3.2
263+ name : couchbase-${{ needs.source.outputs.gem_version }}-aarch64-linux-3.2
264+ - uses : actions/download-artifact@v4
265+ with :
266+ path : pkg/binary/3.3
267+ name : couchbase-${{ needs.source.outputs.gem_version }}-aarch64-linux-3.3
268+ - uses : actions/download-artifact@v4
269+ with :
270+ path : pkg/binary/3.4
271+ name : couchbase-${{ needs.source.outputs.gem_version }}-aarch64-linux-3.4
272+ - uses : ruby/setup-ruby@v1
273+ with :
274+ ruby-version : 3.4
275+ - name : Repackage
276+ run : |
277+ ruby bin/jenkins/repackage-extension.rb
278+ - uses : actions/upload-artifact@v4
279+ with :
280+ name : couchbase-${{ needs.source.outputs.gem_version }}-aarch64-linux
281+ path : |
282+ pkg/fat/*.gem
283+
205284 build_macos_arm64 :
206285 needs : source
207286 runs-on : macos-14
@@ -212,6 +291,7 @@ jobs:
212291 - ' 3.1'
213292 - ' 3.2'
214293 - ' 3.3'
294+ - ' 3.4'
215295 steps :
216296 -
uses :
hendrikmuhs/[email protected] 217297 with :
@@ -281,6 +361,7 @@ jobs:
281361 - ' 3.1'
282362 - ' 3.2'
283363 - ' 3.3'
364+ - ' 3.4'
284365 steps :
285366 -
uses :
hendrikmuhs/[email protected] 286367 with :
@@ -353,6 +434,7 @@ jobs:
353434 - ' 3.1'
354435 - ' 3.2'
355436 - ' 3.3'
437+ - ' 3.4'
356438 steps :
357439 - uses : actions/download-artifact@v4
358440 with :
@@ -413,6 +495,7 @@ jobs:
413495 - ' 3.1'
414496 - ' 3.2'
415497 - ' 3.3'
498+ - ' 3.4'
416499 steps :
417500 - uses : actions/download-artifact@v4
418501 with :
@@ -476,6 +559,7 @@ jobs:
476559 - ' 3.1'
477560 - ' 3.2'
478561 - ' 3.3'
562+ - ' 3.4'
479563 steps :
480564 - uses : actions/download-artifact@v4
481565 with :
@@ -631,6 +715,7 @@ jobs:
631715 - ' 3.1'
632716 - ' 3.2'
633717 - ' 3.3'
718+ - ' 3.4'
634719 steps :
635720 - uses : ruby/setup-ruby@v1
636721 with :
@@ -711,6 +796,7 @@ jobs:
711796 # - '3.1'
712797 # - '3.2'
713798 # - '3.3'
799+ # - '3.4'
714800 # steps:
715801 # - uses: actions/download-artifact@v4
716802 # with:
0 commit comments