Skip to content

Commit 3c1953b

Browse files
committed
ci: set up matrix to build on Ubuntu 22.04 x64 and Ubuntu 22.04 ARM
1 parent 5f041dd commit 3c1953b

File tree

1 file changed

+17
-10
lines changed

1 file changed

+17
-10
lines changed

.github/workflows/ci.yml

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,12 @@ concurrency:
1515
cancel-in-progress: true
1616

1717
jobs:
18-
build-ubuntu-X64:
19-
runs-on: ubuntu-22.04
18+
build-ubuntu:
19+
strategy:
20+
fail-fast: false
21+
matrix:
22+
os: [ubuntu-22.04, ubuntu-22.04-arm]
23+
runs-on: ${{ matrix.os }}
2024
outputs:
2125
eras: ${{ steps.eras-test-lab.outputs.eras }}
2226
steps:
@@ -32,6 +36,7 @@ jobs:
3236

3337
# We separate the build in 2 steps as we want to avoid side effects with Rust feature unification.
3438
- name: Cargo build - Tooling
39+
if: matrix.os == 'ubuntu-22.04'
3540
shell: bash
3641
run: cargo build --release --bin mithril-end-to-end --bin load-aggregator --features bundle_tls
3742

@@ -57,6 +62,7 @@ jobs:
5762
if-no-files-found: error
5863

5964
- name: Publish End-to-end runner (${{ runner.os }}-${{ runner.arch }})
65+
if: matrix.os == 'ubuntu-22.04'
6066
uses: actions/upload-artifact@v4
6167
with:
6268
name: mithril-tooling-${{ runner.os }}-${{ runner.arch }}
@@ -66,6 +72,7 @@ jobs:
6672
if-no-files-found: error
6773

6874
- name: Prepare test lab eras
75+
if: matrix.os == 'ubuntu-22.04'
6976
id: eras-test-lab
7077
run: |
7178
ERAS=$(./target/release/mithril-aggregator era list --json)
@@ -326,12 +333,12 @@ jobs:
326333

327334
e2e:
328335
runs-on: ubuntu-24.04
329-
needs: [build-ubuntu-X64]
336+
needs: [build-ubuntu]
330337
strategy:
331338
fail-fast: false
332339
matrix:
333340
mode: ["std"]
334-
era: ${{ fromJSON(needs.build-ubuntu-X64.outputs.eras) }}
341+
era: ${{ fromJSON(needs.build-ubuntu.outputs.eras) }}
335342
next_era: [""]
336343
cardano_node_version: ["10.3.1", "10.4.1"]
337344
hard_fork_latest_era_at_epoch: [0]
@@ -341,32 +348,32 @@ jobs:
341348
include:
342349
# Include a test for partial decentralization with leader/follower signer registration and P2P signature registration
343350
- mode: "leader-follower"
344-
era: ${{ fromJSON(needs.build-ubuntu-X64.outputs.eras)[0] }}
351+
era: ${{ fromJSON(needs.build-ubuntu.outputs.eras)[0] }}
345352
next_era: [""]
346353
cardano_node_version: "10.3.1"
347354
hard_fork_latest_era_at_epoch: 0
348355
run_id: "#1"
349356
extra_args: "--number-of-aggregators=2 --use-relays --relay-signer-registration-mode=passthrough --relay-signature-registration-mode=p2p"
350357
# Include a test for full dedentralization P2P signer registration and P2P signature registration
351358
- mode: "decentralized"
352-
era: ${{ fromJSON(needs.build-ubuntu-X64.outputs.eras)[0] }}
359+
era: ${{ fromJSON(needs.build-ubuntu.outputs.eras)[0] }}
353360
next_era: ""
354361
cardano_node_version: "10.3.1"
355362
hard_fork_latest_era_at_epoch: 0
356363
run_id: "#1"
357364
extra_args: "--number-of-aggregators=2 --use-relays --relay-signer-registration-mode=p2p --relay-signature-registration-mode=p2p"
358365
# Include a test for the era switch without regenesis
359366
- mode: "std"
360-
era: ${{ fromJSON(needs.build-ubuntu-X64.outputs.eras)[0] }}
361-
next_era: ${{ fromJSON(needs.build-ubuntu-X64.outputs.eras)[1] }}
367+
era: ${{ fromJSON(needs.build-ubuntu.outputs.eras)[0] }}
368+
next_era: ${{ fromJSON(needs.build-ubuntu.outputs.eras)[1] }}
362369
cardano_node_version: "10.3.1"
363370
hard_fork_latest_era_at_epoch: 0
364371
run_id: "#1"
365372
extra_args: ""
366373
# Include a test for the era switch with regenesis
367374
- mode: "std"
368-
era: ${{ fromJSON(needs.build-ubuntu-X64.outputs.eras)[0] }}
369-
next_era: ${{ fromJSON(needs.build-ubuntu-X64.outputs.eras)[1] }}
375+
era: ${{ fromJSON(needs.build-ubuntu.outputs.eras)[0] }}
376+
next_era: ${{ fromJSON(needs.build-ubuntu.outputs.eras)[1] }}
370377
cardano_node_version: "10.3.1"
371378
hard_fork_latest_era_at_epoch: 0
372379
run_id: "#1"

0 commit comments

Comments
 (0)