Skip to content

Commit 77cbab3

Browse files
committed
For initial ubuntu test, expand a few specific configs
We'll test the full matrix in the linux-flavors test
1 parent eb95b2e commit 77cbab3

1 file changed

Lines changed: 91 additions & 3 deletions

File tree

.github/workflows/build.yml

Lines changed: 91 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,62 @@ jobs:
55

66
build-and-test-ubuntu:
77
#if: false # Temporarily disable
8-
name: Build And Test Ubuntu
8+
name: Build And Test Ubuntu ${{ matrix.row }}
99
runs-on: ubuntu-latest
10+
strategy:
11+
fail-fast: false
12+
matrix:
13+
include:
14+
- row: clang-openssl-baseline
15+
compiler: clang
16+
build_dir: build-ci-quick-clang
17+
sanitizer: none
18+
use_webrtc: false
19+
crypto: default
20+
crypto25519: default
21+
targets: "test_connection test_crypto"
22+
run_tests: true
23+
tests: "test_crypto test_connection:suite-quick"
24+
- row: gcc-openssl-crypto
25+
compiler: gcc
26+
build_dir: build-ci-quick-gcc
27+
sanitizer: none
28+
use_webrtc: false
29+
crypto: default
30+
crypto25519: default
31+
targets: "test_crypto"
32+
run_tests: true
33+
tests: "test_crypto"
34+
- row: clang-libsodium
35+
compiler: clang
36+
build_dir: build-ci-quick-sodium
37+
sanitizer: none
38+
use_webrtc: false
39+
crypto: libsodium
40+
crypto25519: libsodium
41+
targets: "test_crypto"
42+
run_tests: true
43+
tests: "test_crypto"
44+
- row: clang-reference-25519
45+
compiler: clang
46+
build_dir: build-ci-quick-ref25519
47+
sanitizer: none
48+
use_webrtc: false
49+
crypto: default
50+
crypto25519: Reference
51+
targets: "test_crypto"
52+
run_tests: true
53+
tests: "test_crypto"
54+
- row: clang-openssl-webrtc
55+
compiler: clang
56+
build_dir: build-ci-quick-webrtc
57+
sanitizer: none
58+
use_webrtc: true
59+
crypto: default
60+
crypto25519: default
61+
targets: "test_crypto"
62+
run_tests: true
63+
tests: "test_crypto"
1064
env:
1165
CI_BUILD: 1
1266
IMAGE: ubuntu
@@ -20,8 +74,42 @@ jobs:
2074
run: |
2175
sudo -E bash .github/install.sh
2276
sudo -E bash .github/install-post.sh
23-
- name: Build and run tests
24-
run: bash .github/build.sh
77+
- name: Build and run selected single config
78+
run: |
79+
set -euo pipefail
80+
81+
args=(
82+
--compiler "${{ matrix.compiler }}"
83+
--build-dir "${{ matrix.build_dir }}"
84+
--sanitizer "${{ matrix.sanitizer }}"
85+
)
86+
87+
if [[ "${{ matrix.use_webrtc }}" == "true" ]]; then
88+
args+=(--use-webrtc)
89+
fi
90+
91+
if [[ "${{ matrix.crypto }}" != "default" ]]; then
92+
args+=(--crypto "${{ matrix.crypto }}")
93+
fi
94+
95+
if [[ "${{ matrix.crypto25519 }}" != "default" ]]; then
96+
args+=(--crypto25519 "${{ matrix.crypto25519 }}")
97+
fi
98+
99+
if [[ -n "${{ matrix.targets }}" ]]; then
100+
read -r -a target_args <<< "${{ matrix.targets }}"
101+
args+=(--targets "${target_args[@]}")
102+
fi
103+
104+
if [[ "${{ matrix.run_tests }}" == "true" ]]; then
105+
args+=(--run-tests)
106+
if [[ -n "${{ matrix.tests }}" ]]; then
107+
read -r -a test_args <<< "${{ matrix.tests }}"
108+
args+=(--tests "${test_args[@]}")
109+
fi
110+
fi
111+
112+
python3 .github/run-single-config.py "${args[@]}"
25113
26114
# Don't do it this way. This causes the main badge to
27115
# go red if one of the flavors fails.

0 commit comments

Comments
 (0)