@@ -18,14 +18,16 @@ jobs:
1818 runs-on : ubuntu-latest
1919 outputs :
2020 cache-key : ${{ steps.cache-key.outputs.cache-key }}
21+ matrix-alpine : ${{ steps.alpine.outputs.matrix }}
22+ matrix-ubuntu : ${{ steps.ubuntu.outputs.matrix }}
2123 steps :
2224 - uses : actions/checkout@v5
2325 with :
2426 fetch-depth : 0
2527
2628 - name : Install packages
2729 run : |
28- python3 -m pip install license-expression
30+ python3 -m pip install license-expression PyYAML
2931 python3 -m pip install --pre meson
3032
3133 - name : Calculate cache key
@@ -59,26 +61,61 @@ jobs:
5961 run : |
6062 ./tools/fake_tty.py ./tools/sanity_checks.py
6163
62- Ubuntu :
63- name : Ubuntu (${{ matrix.platform }})
64- runs-on : ${{ matrix.runner }}
65- needs : prelude
66- strategy :
67- fail-fast : false
68- matrix :
69- include :
64+ - name : Build Ubuntu matrix
65+ id : ubuntu
66+ shell : python tools/filter_matrix.py {0}
67+ run : |
7068 - platform: aarch64
7169 runner: ubuntu-24.04-arm
7270 python: 3.8
7371 - platform: ppc64le
7472 runner: ubuntu-24.04-ppc64le
7573 python: 3.13
74+ selfhosted: true
7675 - platform: s390x
7776 runner: ubuntu-24.04-s390x
7877 python: 3.13
78+ selfhosted: true
7979 - platform: x86_64
8080 runner: ubuntu-latest
8181 python: 3.13
82+
83+ - name : Build Alpine matrix
84+ id : alpine
85+ shell : python tools/filter_matrix.py {0}
86+ run : |
87+ - platform: aarch64
88+ runner: ubuntu-24.04-arm
89+ apk-tools-url: 'https://gitlab.alpinelinux.org/api/v4/projects/5/packages/generic/v2.14.7/aarch64/apk.static#!sha256!27a975638ddc95a411c9f17c63383e335da9edf6bb7de2281d950c291a11f878'
90+ - platform: armv7
91+ runner: ubuntu-24.04-arm
92+ apk-tools-url: 'https://gitlab.alpinelinux.org/api/v4/projects/5/packages/generic/v2.14.7/aarch64/apk.static#!sha256!27a975638ddc95a411c9f17c63383e335da9edf6bb7de2281d950c291a11f878'
93+ - platform: ppc64le
94+ runner: ubuntu-24.04-ppc64le
95+ apk-tools-url: 'https://gitlab.alpinelinux.org/api/v4/projects/5/packages/generic/v2.14.7/ppc64le/apk.static#!sha256!96ba92b49c8cc97fad06f0dfe3c50ec25c3344890e479999ded8752bf9e80d7f'
96+ selfhosted: true
97+ - platform: riscv64
98+ runner: ubuntu-24.04-arm
99+ apk-tools-url: 'https://gitlab.alpinelinux.org/api/v4/projects/5/packages/generic/v2.14.7/aarch64/apk.static#!sha256!27a975638ddc95a411c9f17c63383e335da9edf6bb7de2281d950c291a11f878'
100+ - platform: s390x
101+ runner: ubuntu-24.04-s390x
102+ apk-tools-url: 'https://gitlab.alpinelinux.org/api/v4/projects/5/packages/generic/v2.14.7/s390x/apk.static#!sha256!368996f2908ec8f10f1de500bc97a9bd1c3b0b46ce0bd44983ac09862cbab6d5'
103+ selfhosted: true
104+ - platform: x86
105+ runner: ubuntu-latest
106+ apk-tools-url: 'https://gitlab.alpinelinux.org/api/v4/projects/5/packages/generic/v2.14.7/x86_64/apk.static#!sha256!bdd044e0fd6cc388c5e571e1093efa5f35f7767cc5aa338b0a2576a429009a62'
107+ - platform: x86_64
108+ runner: ubuntu-latest
109+ apk-tools-url: 'https://gitlab.alpinelinux.org/api/v4/projects/5/packages/generic/v2.14.7/x86_64/apk.static#!sha256!bdd044e0fd6cc388c5e571e1093efa5f35f7767cc5aa338b0a2576a429009a62'
110+
111+ Ubuntu :
112+ name : Ubuntu (${{ matrix.platform }})
113+ runs-on : ${{ matrix.runner }}
114+ needs : prelude
115+ strategy :
116+ fail-fast : false
117+ matrix :
118+ include : ${{ fromJson(needs.prelude.outputs.matrix-ubuntu) }}
82119 steps :
83120 - uses : actions/checkout@v5
84121 with :
@@ -124,28 +161,7 @@ jobs:
124161 strategy :
125162 fail-fast : false
126163 matrix :
127- include :
128- - platform : aarch64
129- runner : ubuntu-24.04-arm
130- apk-tools-url : ' https://gitlab.alpinelinux.org/api/v4/projects/5/packages/generic/v2.14.7/aarch64/apk.static#!sha256!27a975638ddc95a411c9f17c63383e335da9edf6bb7de2281d950c291a11f878'
131- - platform : armv7
132- runner : ubuntu-24.04-arm
133- apk-tools-url : ' https://gitlab.alpinelinux.org/api/v4/projects/5/packages/generic/v2.14.7/aarch64/apk.static#!sha256!27a975638ddc95a411c9f17c63383e335da9edf6bb7de2281d950c291a11f878'
134- - platform : ppc64le
135- runner : ubuntu-24.04-ppc64le
136- apk-tools-url : ' https://gitlab.alpinelinux.org/api/v4/projects/5/packages/generic/v2.14.7/ppc64le/apk.static#!sha256!96ba92b49c8cc97fad06f0dfe3c50ec25c3344890e479999ded8752bf9e80d7f'
137- - platform : riscv64
138- runner : ubuntu-24.04-arm
139- apk-tools-url : ' https://gitlab.alpinelinux.org/api/v4/projects/5/packages/generic/v2.14.7/aarch64/apk.static#!sha256!27a975638ddc95a411c9f17c63383e335da9edf6bb7de2281d950c291a11f878'
140- - platform : s390x
141- runner : ubuntu-24.04-s390x
142- apk-tools-url : ' https://gitlab.alpinelinux.org/api/v4/projects/5/packages/generic/v2.14.7/s390x/apk.static#!sha256!368996f2908ec8f10f1de500bc97a9bd1c3b0b46ce0bd44983ac09862cbab6d5'
143- - platform : x86
144- runner : ubuntu-latest
145- apk-tools-url : ' https://gitlab.alpinelinux.org/api/v4/projects/5/packages/generic/v2.14.7/x86_64/apk.static#!sha256!bdd044e0fd6cc388c5e571e1093efa5f35f7767cc5aa338b0a2576a429009a62'
146- - platform : x86_64
147- runner : ubuntu-latest
148- apk-tools-url : ' https://gitlab.alpinelinux.org/api/v4/projects/5/packages/generic/v2.14.7/x86_64/apk.static#!sha256!bdd044e0fd6cc388c5e571e1093efa5f35f7767cc5aa338b0a2576a429009a62'
164+ include : ${{ fromJson(needs.prelude.outputs.matrix-alpine) }}
149165 steps :
150166 - uses : actions/checkout@v5
151167 with :
0 commit comments