Skip to content

Commit 8a95a0f

Browse files
committed
Add other architectures (including aarch64) to build. Standardized on build names and properties. Fixes #538
1 parent fdb100a commit 8a95a0f

File tree

1 file changed

+47
-13
lines changed

1 file changed

+47
-13
lines changed

.github/workflows/build.yml

Lines changed: 47 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ on: push
44
jobs:
55
build-internal-apt:
66
timeout-minutes: 5
7-
name: Build in ${{ matrix.compiler }} (${{ matrix.os }})
7+
name: Build in ${{ matrix.compiler }}-${{ matrix.version }} (${{ matrix.os }})
88
runs-on: ${{ matrix.os }}
99
strategy:
1010
matrix:
@@ -31,7 +31,7 @@ jobs:
3131

3232
build-external-pacman:
3333
timeout-minutes: 5
34-
name: Build in ${{ matrix.compiler }} (${{ matrix.container }})
34+
name: Build in ${{ matrix.compiler }}-default (${{ matrix.container }})
3535
runs-on: ubuntu-20.04
3636
container:
3737
image: ${{ matrix.container }}
@@ -57,7 +57,7 @@ jobs:
5757

5858
build-external-apt-gcc:
5959
timeout-minutes: 5
60-
name: Build in GCC
60+
name: Build in gcc-${{ matrix.version }} (${{ matrix.container }})
6161
runs-on: ubuntu-20.04
6262
container:
6363
image: ${{ matrix.container }}
@@ -79,7 +79,7 @@ jobs:
7979

8080
build-external-apt-clang:
8181
timeout-minutes: 5
82-
name: Build in Clang
82+
name: Build in clang-${{ matrix.version }} (${{ matrix.container }})
8383
runs-on: ubuntu-20.04
8484
container:
8585
image: ${{ matrix.container }}
@@ -101,7 +101,7 @@ jobs:
101101

102102
build-external-yum-gcc:
103103
timeout-minutes: 10
104-
name: Build in default GCC
104+
name: Build in gcc-default
105105
runs-on: ubuntu-20.04
106106
container:
107107
image: ${{ matrix.container }}
@@ -124,7 +124,7 @@ jobs:
124124

125125
build-external-yum-clang:
126126
timeout-minutes: 10
127-
name: Build in default Clang
127+
name: Build in clang-default
128128
runs-on: ubuntu-20.04
129129
container:
130130
image: ${{ matrix.container }}
@@ -147,7 +147,7 @@ jobs:
147147

148148
build-external-centos7-gcc:
149149
timeout-minutes: 10
150-
name: Build in GCC
150+
name: Build in gcc-${{ matrix.version }} (${{ matrix.container }})
151151
runs-on: ubuntu-20.04
152152
container:
153153
image: ${{ matrix.container }}
@@ -167,11 +167,11 @@ jobs:
167167

168168
build-mac-gcc:
169169
timeout-minutes: 10
170-
name: Build in GCC
171-
runs-on: ${{ matrix.os }}
170+
name: Build in gcc-${{ matrix.version }} (${{ matrix.container }})
171+
runs-on: ${{ matrix.container }}
172172
strategy:
173173
matrix:
174-
os: [ "macOS-10.15" ]
174+
container: [ "macOS-10.15" ]
175175
version: [ "9", "10", "11" ]
176176
steps:
177177
- uses: actions/checkout@v2
@@ -186,11 +186,11 @@ jobs:
186186

187187
build-mac-xcode:
188188
timeout-minutes: 15
189-
name: Build in Xcode
190-
runs-on: ${{ matrix.os }}
189+
name: Build in Xcode-${{ matrix.version }} (${{ matrix.container }})
190+
runs-on: ${{ matrix.container }}
191191
strategy:
192192
matrix:
193-
os: [ "macOS-10.15" ]
193+
container: [ "macOS-10.15" ]
194194
version: [ "10.3" ]
195195
steps:
196196
- uses: actions/checkout@v2
@@ -202,3 +202,37 @@ jobs:
202202
echo "CXX=clang++" >> $GITHUB_ENV
203203
- name: Install and Test
204204
run: (./install.sh && make tests test-installation)
205+
206+
build-other-arch-gcc:
207+
timeout-minutes: 15
208+
name: Build in gcc-${{ matrix.version }} (${{ matrix.container }} - ${{ matrix.arch }})
209+
runs-on: ubuntu-20.04
210+
strategy:
211+
matrix:
212+
container: [ "bullseye" ]
213+
version: [ "10" ]
214+
arch: [ "aarch64", "s390x", "ppc64le" ] # , "armv6", "armv7" -- 32 bits archs, currently not supported by ngs
215+
steps:
216+
- uses: actions/[email protected]
217+
- uses: uraimo/[email protected]
218+
name: Run commands
219+
id: runcmd
220+
with:
221+
arch: ${{ matrix.arch }}
222+
distro: ${{ matrix.container }}
223+
# Not required, but speeds up builds by storing container images in GitHub package registry.
224+
githubToken: ${{ github.token }}
225+
# Mount the local folder as /ngs in the container
226+
dockerRunArgs: |
227+
--volume "${PWD}:/ngs"
228+
env: |
229+
CC: gcc-${{ matrix.version }}
230+
CXX: g++-${{ matrix.version }}
231+
install: |
232+
apt-get update
233+
apt-get install -y man sudo g++-${{ matrix.version }}
234+
235+
# Set an output parameter `uname` for use in subsequent steps
236+
run: |
237+
cd /ngs && ./install.sh && make tests test-installation
238+
uname -a

0 commit comments

Comments
 (0)