rake-compiler-dock 1.10.0 → 1.11.0.rc1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,106 +1,822 @@
1
- name: Publish docker images to GHCR
2
- concurrency:
3
- group: "${{github.workflow}}-${{github.ref}}"
4
- cancel-in-progress: true
1
+ # This file is generated. Please edit publish-images.yml.erb instead!
2
+
3
+
4
+ name: Weekly publish docker images to GHCR
5
5
  on:
6
6
  workflow_dispatch:
7
7
  schedule:
8
8
  - cron: "0 3 * * 3" # At 03:00 on Wednesday # https://crontab.guru/#0_3_*_*_3
9
9
 
10
- jobs:
11
- build:
12
- name: build native
10
+
11
+ concurrency:
12
+ group: "${{github.workflow}}-${{github.ref}}"
13
+ cancel-in-progress: true
14
+
15
+ jobs:
16
+
17
+ aarch64-linux-musl:
18
+ name: "build aarch64-linux-musl ${{ matrix.os }}"
19
+ needs: common-7f790bc
20
+ strategy:
21
+ fail-fast: false
22
+ matrix:
23
+ os:
24
+ - ubuntu-latest
25
+ - ubuntu-24.04-arm
26
+ runs-on: ${{ matrix.os }}
27
+ steps:
28
+ - uses: actions/checkout@v4
29
+
30
+ - uses: ruby/setup-ruby@v1
31
+ with:
32
+ ruby-version: "3.4"
33
+ bundler-cache: true
34
+
35
+ - name: Fetch docker buildx layer cache
36
+ uses: actions/cache@v4
37
+ with:
38
+ path: tmp/build-cache-${{ runner.arch }}
39
+ key: ${{ runner.os }}-on-${{ runner.arch }}-aarch64-linux-musl-${{ github.sha }}
40
+ restore-keys: |
41
+ ${{ runner.os }}-on-${{ runner.arch }}-aarch64-linux-musl
42
+ ${{ runner.os }}-on-${{ runner.arch }}-common-7f790bc
43
+ enableCrossOsArchive: true
44
+ - name: Build the image layers aarch64-linux-musl on ${{ runner.arch }}
45
+ env:
46
+ RCD_TASK_DEPENDENCIES: "false"
47
+ run: |
48
+ # Change docker to a cache-able driver
49
+ docker buildx create --driver docker-container --use
50
+ bundle exec rake build:common-723ac6e RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,compression=zstd,dest=tmp/build-cache-new"
51
+ - name: Update and prune docker buildx layer cache
52
+ run: |
53
+ rm -rf tmp/build-cache-${{ runner.arch }}
54
+ mv tmp/build-cache-new tmp/build-cache-${{ runner.arch }}
55
+
56
+ common-7f790bc:
57
+ name: "build common-7f790bc ${{ matrix.os }}"
58
+ needs: common-8c26987
59
+ strategy:
60
+ fail-fast: false
61
+ matrix:
62
+ os:
63
+ - ubuntu-latest
64
+ - ubuntu-24.04-arm
65
+ runs-on: ${{ matrix.os }}
66
+ steps:
67
+ - uses: actions/checkout@v4
68
+
69
+ - uses: ruby/setup-ruby@v1
70
+ with:
71
+ ruby-version: "3.4"
72
+ bundler-cache: true
73
+
74
+ - name: Fetch docker buildx layer cache
75
+ uses: actions/cache@v4
76
+ with:
77
+ path: tmp/build-cache-${{ runner.arch }}
78
+ key: ${{ runner.os }}-on-${{ runner.arch }}-common-7f790bc-${{ github.sha }}
79
+ restore-keys: |
80
+ ${{ runner.os }}-on-${{ runner.arch }}-common-7f790bc
81
+ ${{ runner.os }}-on-${{ runner.arch }}-common-8c26987
82
+ enableCrossOsArchive: true
83
+ - name: Build the image layers common-7f790bc on ${{ runner.arch }}
84
+ env:
85
+ RCD_TASK_DEPENDENCIES: "false"
86
+ run: |
87
+ # Change docker to a cache-able driver
88
+ docker buildx create --driver docker-container --use
89
+ bundle exec rake build:common-7f790bc RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,compression=zstd,dest=tmp/build-cache-new"
90
+ - name: Update and prune docker buildx layer cache
91
+ run: |
92
+ rm -rf tmp/build-cache-${{ runner.arch }}
93
+ mv tmp/build-cache-new tmp/build-cache-${{ runner.arch }}
94
+
95
+ arm-linux-musl:
96
+ name: "build arm-linux-musl ${{ matrix.os }}"
97
+ needs: common-7f790bc
98
+ strategy:
99
+ fail-fast: false
100
+ matrix:
101
+ os:
102
+ - ubuntu-latest
103
+ - ubuntu-24.04-arm
104
+ runs-on: ${{ matrix.os }}
105
+ steps:
106
+ - uses: actions/checkout@v4
107
+
108
+ - uses: ruby/setup-ruby@v1
109
+ with:
110
+ ruby-version: "3.4"
111
+ bundler-cache: true
112
+
113
+ - name: Fetch docker buildx layer cache
114
+ uses: actions/cache@v4
115
+ with:
116
+ path: tmp/build-cache-${{ runner.arch }}
117
+ key: ${{ runner.os }}-on-${{ runner.arch }}-arm-linux-musl-${{ github.sha }}
118
+ restore-keys: |
119
+ ${{ runner.os }}-on-${{ runner.arch }}-arm-linux-musl
120
+ ${{ runner.os }}-on-${{ runner.arch }}-common-7f790bc
121
+ enableCrossOsArchive: true
122
+ - name: Build the image layers arm-linux-musl on ${{ runner.arch }}
123
+ env:
124
+ RCD_TASK_DEPENDENCIES: "false"
125
+ run: |
126
+ # Change docker to a cache-able driver
127
+ docker buildx create --driver docker-container --use
128
+ bundle exec rake build:common-fbc527a RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,compression=zstd,dest=tmp/build-cache-new"
129
+ - name: Update and prune docker buildx layer cache
130
+ run: |
131
+ rm -rf tmp/build-cache-${{ runner.arch }}
132
+ mv tmp/build-cache-new tmp/build-cache-${{ runner.arch }}
133
+
134
+ x86-linux-musl:
135
+ name: "build x86-linux-musl ${{ matrix.os }}"
136
+ needs: common-7f790bc
137
+ strategy:
138
+ fail-fast: false
139
+ matrix:
140
+ os:
141
+ - ubuntu-latest
142
+ - ubuntu-24.04-arm
143
+ runs-on: ${{ matrix.os }}
144
+ steps:
145
+ - uses: actions/checkout@v4
146
+
147
+ - uses: ruby/setup-ruby@v1
148
+ with:
149
+ ruby-version: "3.4"
150
+ bundler-cache: true
151
+
152
+ - name: Fetch docker buildx layer cache
153
+ uses: actions/cache@v4
154
+ with:
155
+ path: tmp/build-cache-${{ runner.arch }}
156
+ key: ${{ runner.os }}-on-${{ runner.arch }}-x86-linux-musl-${{ github.sha }}
157
+ restore-keys: |
158
+ ${{ runner.os }}-on-${{ runner.arch }}-x86-linux-musl
159
+ ${{ runner.os }}-on-${{ runner.arch }}-common-7f790bc
160
+ enableCrossOsArchive: true
161
+ - name: Build the image layers x86-linux-musl on ${{ runner.arch }}
162
+ env:
163
+ RCD_TASK_DEPENDENCIES: "false"
164
+ run: |
165
+ # Change docker to a cache-able driver
166
+ docker buildx create --driver docker-container --use
167
+ bundle exec rake build:common-63da253 RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,compression=zstd,dest=tmp/build-cache-new"
168
+ - name: Update and prune docker buildx layer cache
169
+ run: |
170
+ rm -rf tmp/build-cache-${{ runner.arch }}
171
+ mv tmp/build-cache-new tmp/build-cache-${{ runner.arch }}
172
+
173
+ x86_64-linux-musl:
174
+ name: "build x86_64-linux-musl ${{ matrix.os }}"
175
+ needs: common-7f790bc
176
+ strategy:
177
+ fail-fast: false
178
+ matrix:
179
+ os:
180
+ - ubuntu-latest
181
+ - ubuntu-24.04-arm
182
+ runs-on: ${{ matrix.os }}
183
+ steps:
184
+ - uses: actions/checkout@v4
185
+
186
+ - uses: ruby/setup-ruby@v1
187
+ with:
188
+ ruby-version: "3.4"
189
+ bundler-cache: true
190
+
191
+ - name: Fetch docker buildx layer cache
192
+ uses: actions/cache@v4
193
+ with:
194
+ path: tmp/build-cache-${{ runner.arch }}
195
+ key: ${{ runner.os }}-on-${{ runner.arch }}-x86_64-linux-musl-${{ github.sha }}
196
+ restore-keys: |
197
+ ${{ runner.os }}-on-${{ runner.arch }}-x86_64-linux-musl
198
+ ${{ runner.os }}-on-${{ runner.arch }}-common-7f790bc
199
+ enableCrossOsArchive: true
200
+ - name: Build the image layers x86_64-linux-musl on ${{ runner.arch }}
201
+ env:
202
+ RCD_TASK_DEPENDENCIES: "false"
203
+ run: |
204
+ # Change docker to a cache-able driver
205
+ docker buildx create --driver docker-container --use
206
+ bundle exec rake build:common-dc7239b RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,compression=zstd,dest=tmp/build-cache-new"
207
+ - name: Update and prune docker buildx layer cache
208
+ run: |
209
+ rm -rf tmp/build-cache-${{ runner.arch }}
210
+ mv tmp/build-cache-new tmp/build-cache-${{ runner.arch }}
211
+
212
+ arm64-darwin:
213
+ name: "build arm64-darwin ${{ matrix.os }}"
214
+ needs: common-d1f4370
215
+ strategy:
216
+ fail-fast: false
217
+ matrix:
218
+ os:
219
+ - ubuntu-latest
220
+ - ubuntu-24.04-arm
221
+ runs-on: ${{ matrix.os }}
222
+ steps:
223
+ - uses: actions/checkout@v4
224
+
225
+ - uses: ruby/setup-ruby@v1
226
+ with:
227
+ ruby-version: "3.4"
228
+ bundler-cache: true
229
+
230
+ - name: Fetch docker buildx layer cache
231
+ uses: actions/cache@v4
232
+ with:
233
+ path: tmp/build-cache-${{ runner.arch }}
234
+ key: ${{ runner.os }}-on-${{ runner.arch }}-arm64-darwin-${{ github.sha }}
235
+ restore-keys: |
236
+ ${{ runner.os }}-on-${{ runner.arch }}-arm64-darwin
237
+ ${{ runner.os }}-on-${{ runner.arch }}-common-d1f4370
238
+ enableCrossOsArchive: true
239
+ - name: Build the image layers arm64-darwin on ${{ runner.arch }}
240
+ env:
241
+ RCD_TASK_DEPENDENCIES: "false"
242
+ run: |
243
+ # Change docker to a cache-able driver
244
+ docker buildx create --driver docker-container --use
245
+ bundle exec rake build:common-2829589 RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,compression=zstd,dest=tmp/build-cache-new"
246
+ - name: Update and prune docker buildx layer cache
247
+ run: |
248
+ rm -rf tmp/build-cache-${{ runner.arch }}
249
+ mv tmp/build-cache-new tmp/build-cache-${{ runner.arch }}
250
+
251
+ common-d1f4370:
252
+ name: "build common-d1f4370 ${{ matrix.os }}"
253
+ needs: common-8c26987
254
+ strategy:
255
+ fail-fast: false
256
+ matrix:
257
+ os:
258
+ - ubuntu-latest
259
+ - ubuntu-24.04-arm
260
+ runs-on: ${{ matrix.os }}
261
+ steps:
262
+ - uses: actions/checkout@v4
263
+
264
+ - uses: ruby/setup-ruby@v1
265
+ with:
266
+ ruby-version: "3.4"
267
+ bundler-cache: true
268
+
269
+ - name: Fetch docker buildx layer cache
270
+ uses: actions/cache@v4
271
+ with:
272
+ path: tmp/build-cache-${{ runner.arch }}
273
+ key: ${{ runner.os }}-on-${{ runner.arch }}-common-d1f4370-${{ github.sha }}
274
+ restore-keys: |
275
+ ${{ runner.os }}-on-${{ runner.arch }}-common-d1f4370
276
+ ${{ runner.os }}-on-${{ runner.arch }}-common-8c26987
277
+ enableCrossOsArchive: true
278
+ - name: Build the image layers common-d1f4370 on ${{ runner.arch }}
279
+ env:
280
+ RCD_TASK_DEPENDENCIES: "false"
281
+ run: |
282
+ # Change docker to a cache-able driver
283
+ docker buildx create --driver docker-container --use
284
+ bundle exec rake build:common-d1f4370 RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,compression=zstd,dest=tmp/build-cache-new"
285
+ - name: Update and prune docker buildx layer cache
286
+ run: |
287
+ rm -rf tmp/build-cache-${{ runner.arch }}
288
+ mv tmp/build-cache-new tmp/build-cache-${{ runner.arch }}
289
+
290
+ x86_64-darwin:
291
+ name: "build x86_64-darwin ${{ matrix.os }}"
292
+ needs: common-d1f4370
293
+ strategy:
294
+ fail-fast: false
295
+ matrix:
296
+ os:
297
+ - ubuntu-latest
298
+ - ubuntu-24.04-arm
299
+ runs-on: ${{ matrix.os }}
300
+ steps:
301
+ - uses: actions/checkout@v4
302
+
303
+ - uses: ruby/setup-ruby@v1
304
+ with:
305
+ ruby-version: "3.4"
306
+ bundler-cache: true
307
+
308
+ - name: Fetch docker buildx layer cache
309
+ uses: actions/cache@v4
310
+ with:
311
+ path: tmp/build-cache-${{ runner.arch }}
312
+ key: ${{ runner.os }}-on-${{ runner.arch }}-x86_64-darwin-${{ github.sha }}
313
+ restore-keys: |
314
+ ${{ runner.os }}-on-${{ runner.arch }}-x86_64-darwin
315
+ ${{ runner.os }}-on-${{ runner.arch }}-common-d1f4370
316
+ enableCrossOsArchive: true
317
+ - name: Build the image layers x86_64-darwin on ${{ runner.arch }}
318
+ env:
319
+ RCD_TASK_DEPENDENCIES: "false"
320
+ run: |
321
+ # Change docker to a cache-able driver
322
+ docker buildx create --driver docker-container --use
323
+ bundle exec rake build:common-bc54075 RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,compression=zstd,dest=tmp/build-cache-new"
324
+ - name: Update and prune docker buildx layer cache
325
+ run: |
326
+ rm -rf tmp/build-cache-${{ runner.arch }}
327
+ mv tmp/build-cache-new tmp/build-cache-${{ runner.arch }}
328
+
329
+ aarch64-linux-gnu:
330
+ name: "build aarch64-linux-gnu ${{ matrix.os }}"
331
+ needs: common-8c26987
332
+ strategy:
333
+ fail-fast: false
334
+ matrix:
335
+ os:
336
+ - ubuntu-latest
337
+ - ubuntu-24.04-arm
338
+ runs-on: ${{ matrix.os }}
339
+ steps:
340
+ - uses: actions/checkout@v4
341
+
342
+ - uses: ruby/setup-ruby@v1
343
+ with:
344
+ ruby-version: "3.4"
345
+ bundler-cache: true
346
+
347
+ - name: Fetch docker buildx layer cache
348
+ uses: actions/cache@v4
349
+ with:
350
+ path: tmp/build-cache-${{ runner.arch }}
351
+ key: ${{ runner.os }}-on-${{ runner.arch }}-aarch64-linux-gnu-${{ github.sha }}
352
+ restore-keys: |
353
+ ${{ runner.os }}-on-${{ runner.arch }}-aarch64-linux-gnu
354
+ ${{ runner.os }}-on-${{ runner.arch }}-common-8c26987
355
+ enableCrossOsArchive: true
356
+ - name: Build the image layers aarch64-linux-gnu on ${{ runner.arch }}
357
+ env:
358
+ RCD_TASK_DEPENDENCIES: "false"
359
+ run: |
360
+ # Change docker to a cache-able driver
361
+ docker buildx create --driver docker-container --use
362
+ bundle exec rake build:common-b45d14a RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,compression=zstd,dest=tmp/build-cache-new"
363
+ - name: Update and prune docker buildx layer cache
364
+ run: |
365
+ rm -rf tmp/build-cache-${{ runner.arch }}
366
+ mv tmp/build-cache-new tmp/build-cache-${{ runner.arch }}
367
+
368
+ common-8c26987:
369
+ name: "build common-8c26987 ${{ matrix.os }}"
370
+ needs: common-8a6d861
371
+ strategy:
372
+ fail-fast: false
373
+ matrix:
374
+ os:
375
+ - ubuntu-latest
376
+ - ubuntu-24.04-arm
377
+ runs-on: ${{ matrix.os }}
378
+ steps:
379
+ - uses: actions/checkout@v4
380
+
381
+ - uses: ruby/setup-ruby@v1
382
+ with:
383
+ ruby-version: "3.4"
384
+ bundler-cache: true
385
+
386
+ - name: Fetch docker buildx layer cache
387
+ uses: actions/cache@v4
388
+ with:
389
+ path: tmp/build-cache-${{ runner.arch }}
390
+ key: ${{ runner.os }}-on-${{ runner.arch }}-common-8c26987-${{ github.sha }}
391
+ restore-keys: |
392
+ ${{ runner.os }}-on-${{ runner.arch }}-common-8c26987
393
+ ${{ runner.os }}-on-${{ runner.arch }}-common-8a6d861
394
+ enableCrossOsArchive: true
395
+ - name: Build the image layers common-8c26987 on ${{ runner.arch }}
396
+ env:
397
+ RCD_TASK_DEPENDENCIES: "false"
398
+ run: |
399
+ # Change docker to a cache-able driver
400
+ docker buildx create --driver docker-container --use
401
+ bundle exec rake build:common-8c26987 RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,compression=zstd,dest=tmp/build-cache-new"
402
+ - name: Update and prune docker buildx layer cache
403
+ run: |
404
+ rm -rf tmp/build-cache-${{ runner.arch }}
405
+ mv tmp/build-cache-new tmp/build-cache-${{ runner.arch }}
406
+
407
+ aarch64-mingw-ucrt:
408
+ name: "build aarch64-mingw-ucrt ${{ matrix.os }}"
409
+ needs: common-8c26987
410
+ strategy:
411
+ fail-fast: false
412
+ matrix:
413
+ os:
414
+ - ubuntu-latest
415
+ - ubuntu-24.04-arm
416
+ runs-on: ${{ matrix.os }}
417
+ steps:
418
+ - uses: actions/checkout@v4
419
+
420
+ - uses: ruby/setup-ruby@v1
421
+ with:
422
+ ruby-version: "3.4"
423
+ bundler-cache: true
424
+
425
+ - name: Fetch docker buildx layer cache
426
+ uses: actions/cache@v4
427
+ with:
428
+ path: tmp/build-cache-${{ runner.arch }}
429
+ key: ${{ runner.os }}-on-${{ runner.arch }}-aarch64-mingw-ucrt-${{ github.sha }}
430
+ restore-keys: |
431
+ ${{ runner.os }}-on-${{ runner.arch }}-aarch64-mingw-ucrt
432
+ ${{ runner.os }}-on-${{ runner.arch }}-common-8c26987
433
+ enableCrossOsArchive: true
434
+ - name: Build the image layers aarch64-mingw-ucrt on ${{ runner.arch }}
435
+ env:
436
+ RCD_TASK_DEPENDENCIES: "false"
437
+ run: |
438
+ # Change docker to a cache-able driver
439
+ docker buildx create --driver docker-container --use
440
+ bundle exec rake build:common-2378386 RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,compression=zstd,dest=tmp/build-cache-new"
441
+ - name: Update and prune docker buildx layer cache
442
+ run: |
443
+ rm -rf tmp/build-cache-${{ runner.arch }}
444
+ mv tmp/build-cache-new tmp/build-cache-${{ runner.arch }}
445
+
446
+ arm-linux-gnu:
447
+ name: "build arm-linux-gnu ${{ matrix.os }}"
448
+ needs: common-8c26987
449
+ strategy:
450
+ fail-fast: false
451
+ matrix:
452
+ os:
453
+ - ubuntu-latest
454
+ - ubuntu-24.04-arm
455
+ runs-on: ${{ matrix.os }}
456
+ steps:
457
+ - uses: actions/checkout@v4
458
+
459
+ - uses: ruby/setup-ruby@v1
460
+ with:
461
+ ruby-version: "3.4"
462
+ bundler-cache: true
463
+
464
+ - name: Fetch docker buildx layer cache
465
+ uses: actions/cache@v4
466
+ with:
467
+ path: tmp/build-cache-${{ runner.arch }}
468
+ key: ${{ runner.os }}-on-${{ runner.arch }}-arm-linux-gnu-${{ github.sha }}
469
+ restore-keys: |
470
+ ${{ runner.os }}-on-${{ runner.arch }}-arm-linux-gnu
471
+ ${{ runner.os }}-on-${{ runner.arch }}-common-8c26987
472
+ enableCrossOsArchive: true
473
+ - name: Build the image layers arm-linux-gnu on ${{ runner.arch }}
474
+ env:
475
+ RCD_TASK_DEPENDENCIES: "false"
476
+ run: |
477
+ # Change docker to a cache-able driver
478
+ docker buildx create --driver docker-container --use
479
+ bundle exec rake build:common-8fd4771 RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,compression=zstd,dest=tmp/build-cache-new"
480
+ - name: Update and prune docker buildx layer cache
481
+ run: |
482
+ rm -rf tmp/build-cache-${{ runner.arch }}
483
+ mv tmp/build-cache-new tmp/build-cache-${{ runner.arch }}
484
+
485
+ x64-mingw-ucrt:
486
+ name: "build x64-mingw-ucrt ${{ matrix.os }}"
487
+ needs: common-8c26987
488
+ strategy:
489
+ fail-fast: false
490
+ matrix:
491
+ os:
492
+ - ubuntu-latest
493
+ - ubuntu-24.04-arm
494
+ runs-on: ${{ matrix.os }}
495
+ steps:
496
+ - uses: actions/checkout@v4
497
+
498
+ - uses: ruby/setup-ruby@v1
499
+ with:
500
+ ruby-version: "3.4"
501
+ bundler-cache: true
502
+
503
+ - name: Fetch docker buildx layer cache
504
+ uses: actions/cache@v4
505
+ with:
506
+ path: tmp/build-cache-${{ runner.arch }}
507
+ key: ${{ runner.os }}-on-${{ runner.arch }}-x64-mingw-ucrt-${{ github.sha }}
508
+ restore-keys: |
509
+ ${{ runner.os }}-on-${{ runner.arch }}-x64-mingw-ucrt
510
+ ${{ runner.os }}-on-${{ runner.arch }}-common-8c26987
511
+ enableCrossOsArchive: true
512
+ - name: Build the image layers x64-mingw-ucrt on ${{ runner.arch }}
513
+ env:
514
+ RCD_TASK_DEPENDENCIES: "false"
515
+ run: |
516
+ # Change docker to a cache-able driver
517
+ docker buildx create --driver docker-container --use
518
+ bundle exec rake build:common-fad6604 RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,compression=zstd,dest=tmp/build-cache-new"
519
+ - name: Update and prune docker buildx layer cache
520
+ run: |
521
+ rm -rf tmp/build-cache-${{ runner.arch }}
522
+ mv tmp/build-cache-new tmp/build-cache-${{ runner.arch }}
523
+
524
+ x64-mingw32:
525
+ name: "build x64-mingw32 ${{ matrix.os }}"
526
+ needs: common-8c26987
527
+ strategy:
528
+ fail-fast: false
529
+ matrix:
530
+ os:
531
+ - ubuntu-latest
532
+ - ubuntu-24.04-arm
533
+ runs-on: ${{ matrix.os }}
534
+ steps:
535
+ - uses: actions/checkout@v4
536
+
537
+ - uses: ruby/setup-ruby@v1
538
+ with:
539
+ ruby-version: "3.4"
540
+ bundler-cache: true
541
+
542
+ - name: Fetch docker buildx layer cache
543
+ uses: actions/cache@v4
544
+ with:
545
+ path: tmp/build-cache-${{ runner.arch }}
546
+ key: ${{ runner.os }}-on-${{ runner.arch }}-x64-mingw32-${{ github.sha }}
547
+ restore-keys: |
548
+ ${{ runner.os }}-on-${{ runner.arch }}-x64-mingw32
549
+ ${{ runner.os }}-on-${{ runner.arch }}-common-8c26987
550
+ enableCrossOsArchive: true
551
+ - name: Build the image layers x64-mingw32 on ${{ runner.arch }}
552
+ env:
553
+ RCD_TASK_DEPENDENCIES: "false"
554
+ run: |
555
+ # Change docker to a cache-able driver
556
+ docker buildx create --driver docker-container --use
557
+ bundle exec rake build:common-c435c44 RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,compression=zstd,dest=tmp/build-cache-new"
558
+ - name: Update and prune docker buildx layer cache
559
+ run: |
560
+ rm -rf tmp/build-cache-${{ runner.arch }}
561
+ mv tmp/build-cache-new tmp/build-cache-${{ runner.arch }}
562
+
563
+ x86-linux-gnu:
564
+ name: "build x86-linux-gnu ${{ matrix.os }}"
565
+ needs: common-8c26987
566
+ strategy:
567
+ fail-fast: false
568
+ matrix:
569
+ os:
570
+ - ubuntu-latest
571
+ - ubuntu-24.04-arm
572
+ runs-on: ${{ matrix.os }}
573
+ steps:
574
+ - uses: actions/checkout@v4
575
+
576
+ - uses: ruby/setup-ruby@v1
577
+ with:
578
+ ruby-version: "3.4"
579
+ bundler-cache: true
580
+
581
+ - name: Fetch docker buildx layer cache
582
+ uses: actions/cache@v4
583
+ with:
584
+ path: tmp/build-cache-${{ runner.arch }}
585
+ key: ${{ runner.os }}-on-${{ runner.arch }}-x86-linux-gnu-${{ github.sha }}
586
+ restore-keys: |
587
+ ${{ runner.os }}-on-${{ runner.arch }}-x86-linux-gnu
588
+ ${{ runner.os }}-on-${{ runner.arch }}-common-8c26987
589
+ enableCrossOsArchive: true
590
+ - name: Build the image layers x86-linux-gnu on ${{ runner.arch }}
591
+ env:
592
+ RCD_TASK_DEPENDENCIES: "false"
593
+ run: |
594
+ # Change docker to a cache-able driver
595
+ docker buildx create --driver docker-container --use
596
+ bundle exec rake build:common-cda3746 RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,compression=zstd,dest=tmp/build-cache-new"
597
+ - name: Update and prune docker buildx layer cache
598
+ run: |
599
+ rm -rf tmp/build-cache-${{ runner.arch }}
600
+ mv tmp/build-cache-new tmp/build-cache-${{ runner.arch }}
601
+
602
+ x86-mingw32:
603
+ name: "build x86-mingw32 ${{ matrix.os }}"
604
+ needs: common-8c26987
605
+ strategy:
606
+ fail-fast: false
607
+ matrix:
608
+ os:
609
+ - ubuntu-latest
610
+ - ubuntu-24.04-arm
611
+ runs-on: ${{ matrix.os }}
612
+ steps:
613
+ - uses: actions/checkout@v4
614
+
615
+ - uses: ruby/setup-ruby@v1
616
+ with:
617
+ ruby-version: "3.4"
618
+ bundler-cache: true
619
+
620
+ - name: Fetch docker buildx layer cache
621
+ uses: actions/cache@v4
622
+ with:
623
+ path: tmp/build-cache-${{ runner.arch }}
624
+ key: ${{ runner.os }}-on-${{ runner.arch }}-x86-mingw32-${{ github.sha }}
625
+ restore-keys: |
626
+ ${{ runner.os }}-on-${{ runner.arch }}-x86-mingw32
627
+ ${{ runner.os }}-on-${{ runner.arch }}-common-8c26987
628
+ enableCrossOsArchive: true
629
+ - name: Build the image layers x86-mingw32 on ${{ runner.arch }}
630
+ env:
631
+ RCD_TASK_DEPENDENCIES: "false"
632
+ run: |
633
+ # Change docker to a cache-able driver
634
+ docker buildx create --driver docker-container --use
635
+ bundle exec rake build:common-697f3ca RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,compression=zstd,dest=tmp/build-cache-new"
636
+ - name: Update and prune docker buildx layer cache
637
+ run: |
638
+ rm -rf tmp/build-cache-${{ runner.arch }}
639
+ mv tmp/build-cache-new tmp/build-cache-${{ runner.arch }}
640
+
641
+ x86_64-linux-gnu:
642
+ name: "build x86_64-linux-gnu ${{ matrix.os }}"
643
+ needs: common-8c26987
644
+ strategy:
645
+ fail-fast: false
646
+ matrix:
647
+ os:
648
+ - ubuntu-latest
649
+ - ubuntu-24.04-arm
650
+ runs-on: ${{ matrix.os }}
651
+ steps:
652
+ - uses: actions/checkout@v4
653
+
654
+ - uses: ruby/setup-ruby@v1
655
+ with:
656
+ ruby-version: "3.4"
657
+ bundler-cache: true
658
+
659
+ - name: Fetch docker buildx layer cache
660
+ uses: actions/cache@v4
661
+ with:
662
+ path: tmp/build-cache-${{ runner.arch }}
663
+ key: ${{ runner.os }}-on-${{ runner.arch }}-x86_64-linux-gnu-${{ github.sha }}
664
+ restore-keys: |
665
+ ${{ runner.os }}-on-${{ runner.arch }}-x86_64-linux-gnu
666
+ ${{ runner.os }}-on-${{ runner.arch }}-common-8c26987
667
+ enableCrossOsArchive: true
668
+ - name: Build the image layers x86_64-linux-gnu on ${{ runner.arch }}
669
+ env:
670
+ RCD_TASK_DEPENDENCIES: "false"
671
+ run: |
672
+ # Change docker to a cache-able driver
673
+ docker buildx create --driver docker-container --use
674
+ bundle exec rake build:common-7b065f9 RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,compression=zstd,dest=tmp/build-cache-new"
675
+ - name: Update and prune docker buildx layer cache
676
+ run: |
677
+ rm -rf tmp/build-cache-${{ runner.arch }}
678
+ mv tmp/build-cache-new tmp/build-cache-${{ runner.arch }}
679
+
680
+ common-8a6d861:
681
+ name: "build common-8a6d861 ${{ matrix.os }}"
682
+
683
+ strategy:
684
+ fail-fast: false
685
+ matrix:
686
+ os:
687
+ - ubuntu-latest
688
+ - ubuntu-24.04-arm
689
+ runs-on: ${{ matrix.os }}
690
+ steps:
691
+ - uses: actions/checkout@v4
692
+
693
+ - uses: ruby/setup-ruby@v1
694
+ with:
695
+ ruby-version: "3.4"
696
+ bundler-cache: true
697
+
698
+ - name: Fetch docker buildx layer cache
699
+ uses: actions/cache@v4
700
+ with:
701
+ path: tmp/build-cache-${{ runner.arch }}
702
+ key: ${{ runner.os }}-on-${{ runner.arch }}-common-8a6d861-${{ github.sha }}
703
+ restore-keys: |
704
+ ${{ runner.os }}-on-${{ runner.arch }}-common-8a6d861
705
+ ${{ runner.os }}-on-${{ runner.arch }}-
706
+ enableCrossOsArchive: true
707
+ - name: Build the image layers common-8a6d861 on ${{ runner.arch }}
708
+ env:
709
+ RCD_TASK_DEPENDENCIES: "false"
710
+ run: |
711
+ # Change docker to a cache-able driver
712
+ docker buildx create --driver docker-container --use
713
+ bundle exec rake build:common-8a6d861 RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,compression=zstd,dest=tmp/build-cache-new"
714
+ - name: Update and prune docker buildx layer cache
715
+ run: |
716
+ rm -rf tmp/build-cache-${{ runner.arch }}
717
+ mv tmp/build-cache-new tmp/build-cache-${{ runner.arch }}
718
+
719
+ jruby:
720
+ name: "build jruby ${{ matrix.os }}"
721
+ needs: common-8a6d861
13
722
  strategy:
14
723
  fail-fast: false
15
724
  matrix:
16
725
  os:
17
726
  - ubuntu-latest
18
727
  - ubuntu-24.04-arm
19
- platform:
20
- - aarch64-linux-gnu
21
- - aarch64-linux-musl
22
- - aarch64-mingw-ucrt
23
- - arm-linux-gnu
24
- - arm-linux-musl
25
- - arm64-darwin
26
- - jruby
27
- - x64-mingw-ucrt
28
- - x64-mingw32
29
- - x86-linux-gnu
30
- - x86-linux-musl
31
- - x86-mingw32
32
- - x86_64-darwin
33
- - x86_64-linux-gnu
34
- - x86_64-linux-musl
35
728
  runs-on: ${{ matrix.os }}
36
729
  steps:
37
730
  - uses: actions/checkout@v4
731
+
38
732
  - uses: ruby/setup-ruby@v1
39
733
  with:
40
- ruby-version: "3.3"
734
+ ruby-version: "3.4"
41
735
  bundler-cache: true
42
736
 
43
737
  - name: Fetch docker buildx layer cache
44
738
  uses: actions/cache@v4
45
739
  with:
46
740
  path: tmp/build-cache-${{ runner.arch }}
47
- key: ${{ runner.os }}-on-${{ runner.arch }}-${{ matrix.platform }}-buildx-${{ github.sha }}
48
- restore-keys: ${{ runner.os }}-on-${{ runner.arch }}-${{ matrix.platform }}-buildx
741
+ key: ${{ runner.os }}-on-${{ runner.arch }}-jruby-${{ github.sha }}
742
+ restore-keys: |
743
+ ${{ runner.os }}-on-${{ runner.arch }}-jruby
744
+ ${{ runner.os }}-on-${{ runner.arch }}-common-8a6d861
49
745
  enableCrossOsArchive: true
50
- - name: Change docker to a cache-able driver
746
+ - name: Build the image layers jruby on ${{ runner.arch }}
747
+ env:
748
+ RCD_TASK_DEPENDENCIES: "false"
51
749
  run: |
750
+ # Change docker to a cache-able driver
52
751
  docker buildx create --driver docker-container --use
53
- bundle exec rake build:${{ matrix.platform }} RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,dest=tmp/build-cache-new"
54
- - name: Show docker images
55
- run: docker images
752
+ bundle exec rake build:common-58bf949 RCD_DOCKER_BUILD="docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-${{ runner.arch }} --cache-to=type=local,compression=zstd,dest=tmp/build-cache-new"
56
753
  - name: Update and prune docker buildx layer cache
57
754
  run: |
58
755
  rm -rf tmp/build-cache-${{ runner.arch }}
59
756
  mv tmp/build-cache-new tmp/build-cache-${{ runner.arch }}
60
757
 
758
+
61
759
  push:
62
760
  name: push
63
- needs: build
761
+ needs: [aarch64-linux-gnu,aarch64-linux-musl,aarch64-mingw-ucrt,arm-linux-gnu,arm-linux-musl,arm64-darwin,x64-mingw-ucrt,x64-mingw32,x86-linux-gnu,x86-linux-musl,x86-mingw32,x86_64-darwin,x86_64-linux-gnu,x86_64-linux-musl,jruby]
64
762
  strategy:
65
763
  fail-fast: false
66
764
  matrix:
67
765
  platform:
766
+
68
767
  - aarch64-linux-gnu
768
+
69
769
  - aarch64-linux-musl
770
+
70
771
  - aarch64-mingw-ucrt
772
+
71
773
  - arm-linux-gnu
774
+
72
775
  - arm-linux-musl
776
+
73
777
  - arm64-darwin
74
- - jruby
778
+
75
779
  - x64-mingw-ucrt
780
+
76
781
  - x64-mingw32
782
+
77
783
  - x86-linux-gnu
784
+
78
785
  - x86-linux-musl
786
+
79
787
  - x86-mingw32
788
+
80
789
  - x86_64-darwin
790
+
81
791
  - x86_64-linux-gnu
792
+
82
793
  - x86_64-linux-musl
83
- runs-on: ubuntu-latest
794
+
795
+ - jruby
796
+
797
+ runs-on: ubuntu-24.04-arm
84
798
  steps:
85
799
  - uses: actions/checkout@v4
86
- - name: Use X64 cache from primary pipeline
800
+
801
+ - name: Use X64 cache from tree pipeline of ${{ matrix.platform }}
87
802
  uses: actions/cache/restore@v4
88
803
  with:
89
804
  path: tmp/build-cache-X64
90
- key: ${{ runner.os }}-on-X64-${{ matrix.platform }}-buildx-${{ github.sha }}
91
- restore-keys: ${{ runner.os }}-on-X64-${{ matrix.platform }}-buildx
805
+ key: ${{ runner.os }}-on-X64-${{ matrix.platform }}-${{ github.sha }}
806
+ restore-keys: ${{ runner.os }}-on-X64-${{ matrix.platform }}
92
807
  enableCrossOsArchive: true
93
- - name: Use ARM64 cache from primary pipeline
808
+ - name: Use ARM64 cache from tree pipeline of ${{ matrix.platform }}
94
809
  uses: actions/cache/restore@v4
95
810
  with:
96
811
  path: tmp/build-cache-ARM64
97
- key: ${{ runner.os }}-on-ARM64-${{ matrix.platform }}-buildx-${{ github.sha }}
98
- restore-keys: ${{ runner.os }}-on-ARM64-${{ matrix.platform }}-buildx
812
+ key: ${{ runner.os }}-on-ARM64-${{ matrix.platform }}-${{ github.sha }}
813
+ restore-keys: ${{ runner.os }}-on-ARM64-${{ matrix.platform }}
99
814
  enableCrossOsArchive: true
100
815
  fail-on-cache-miss: true
816
+
101
817
  - uses: ruby/setup-ruby@v1
102
818
  with:
103
- ruby-version: "3.3"
819
+ ruby-version: "3.4"
104
820
  bundler-cache: true
105
821
  - uses: docker/login-action@v3
106
822
  with:
@@ -110,7 +826,8 @@ jobs:
110
826
  - name: Use cache and push docker image
111
827
  env:
112
828
  RCD_IMAGE_VERSION: snapshot
113
- RCD_DOCKER_BUILD: docker buildx build --cache-from=type=local,src=tmp/build-cache-X64 --cache-from=type=local,src=tmp/build-cache-ARM64 --cache-to=type=local,dest=tmp/build-cache-new
829
+ RCD_DOCKER_BUILD: docker buildx build --cache-from=type=local,compression=zstd,src=tmp/build-cache-X64 --cache-from=type=local,compression=zstd,src=tmp/build-cache-ARM64
830
+ RCD_TASK_DEPENDENCIES: "false"
114
831
  run: |
115
832
  docker buildx create --driver docker-container --use
116
- bundle exec rake release:${{matrix.platform}}
833
+ bundle exec rake release:${{ matrix.platform }}