]> git.ipfire.org Git - thirdparty/openssl.git/blame - .github/workflows/ci.yml
QUIC QLOG: Use set0
[thirdparty/openssl.git] / .github / workflows / ci.yml
CommitLineData
da1c088f 1# Copyright 2021-2023 The OpenSSL Project Authors. All Rights Reserved.
08d8c2d8
P
2#
3# Licensed under the Apache License 2.0 (the "License"). You may not use
4# this file except in compliance with the License. You can obtain a copy
5# in the file LICENSE in the source distribution or at
6# https://www.openssl.org/source/license.html
7
9524a308
MC
8name: GitHub CI
9
4159ebca 10on: [pull_request, push]
9524a308 11
ae290d8f
DDO
12# for some reason, this does not work:
13# variables:
14# BUILDOPTS: "-j4"
15# HARNESS_JOBS: "${HARNESS_JOBS:-4}"
16
17# for some reason, this does not work:
18# before_script:
19# - make="make -s"
20
c6e7f427
VS
21permissions:
22 contents: read
23
1a74f32d
HL
24env:
25 RUN_CI_TESTS: 1
26
9524a308 27jobs:
8175476b 28 check_update:
834a2d70 29 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
8175476b 30 steps:
49f699b5
RL
31 - name: install unifdef
32 run: |
33 sudo apt-get update
34 sudo apt-get -yq --no-install-suggests --no-install-recommends --force-yes install unifdef
d4231af6 35 - uses: actions/checkout@v4
fd84b9c3
BE
36 with:
37 fetch-depth: 0
8175476b 38 - name: config
8a764202 39 run: ./config --banner=Configured --strict-warnings enable-fips && perl configdata.pm --dump
8175476b
RL
40 - name: make build_generated
41 run: make -s build_generated
42 - name: make update
f97bc7c4 43 run: make update
8175476b
RL
44 - name: git diff
45 run: git diff --exit-code
46
47 check_docs:
834a2d70 48 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
8175476b 49 steps:
d4231af6 50 - uses: actions/checkout@v4
8175476b 51 - name: config
8a764202 52 run: ./config --banner=Configured --strict-warnings enable-fips && perl configdata.pm --dump
8175476b
RL
53 - name: make build_generated
54 run: make -s build_generated
5bac37cb
DDO
55 - name: make doc-nits
56 run: make doc-nits
d1080823
TS
57 - name: make help
58 run: make help
43c2456f
RS
59 - name: make md-nits
60 run: |
61 sudo gem install mdl
62 make md-nits
8175476b 63
a350e3ef
RL
64 # This checks that we use ANSI C language syntax and semantics.
65 # We are not as strict with libraries, but rather adapt to what's
66 # expected to be available in a certain version of each platform.
67 check-ansi:
834a2d70 68 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
a350e3ef 69 steps:
d4231af6 70 - uses: actions/checkout@v4
a350e3ef 71 - name: config
8a764202 72 run: CPPFLAGS=-ansi ./config --banner=Configured no-asm no-makedepend enable-buildtest-c++ enable-fips --strict-warnings -D_DEFAULT_SOURCE && perl configdata.pm --dump
a350e3ef
RL
73 - name: make
74 run: make -s -j4
75
9524a308 76 basic_gcc:
834a2d70 77 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
9524a308 78 steps:
d4231af6 79 - uses: actions/checkout@v4
1ac0464d
TM
80 - name: checkout fuzz/corpora submodule
81 run: git submodule update --init --depth 1 fuzz/corpora
c29cf394
DB
82 - name: localegen
83 run: sudo locale-gen tr_TR.UTF-8
9524a308 84 - name: config
8a764202 85 # enable-quic is on by default, but we leave it here to check we're testing the explicit enable somewhere
1a74f32d 86 run: CC=gcc ./config --banner=Configured enable-fips enable-quic enable-unstable-qlog --strict-warnings && perl configdata.pm --dump
9524a308 87 - name: make
ae290d8f 88 run: make -s -j4
2d374e1c
DM
89 - name: get cpu info
90 run: |
91 cat /proc/cpuinfo
92 ./util/opensslwrap.sh version -c
9524a308 93 - name: make test
ae290d8f 94 run: make test HARNESS_JOBS=${HARNESS_JOBS:-4}
9524a308
MC
95
96 basic_clang:
834a2d70 97 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
9524a308 98 steps:
d4231af6 99 - uses: actions/checkout@v4
1ac0464d
TM
100 - name: checkout fuzz/corpora submodule
101 run: git submodule update --init --depth 1 fuzz/corpora
9524a308 102 - name: config
1a74f32d 103 run: CC=clang ./config --banner=Configured no-fips enable-unstable-qlog --strict-warnings && perl configdata.pm --dump
9524a308 104 - name: make
ae290d8f 105 run: make -s -j4
2d374e1c
DM
106 - name: get cpu info
107 run: |
108 cat /proc/cpuinfo
109 ./util/opensslwrap.sh version -c
9524a308 110 - name: make test
ae290d8f 111 run: make test HARNESS_JOBS=${HARNESS_JOBS:-4}
9524a308 112
6b7a11d8
DM
113 self-hosted:
114 strategy:
115 matrix:
116 os: [freebsd-13.2, ubuntu-arm64-22.04]
117 runs-on: ${{ matrix.os }}-self-hosted
118 continue-on-error: true
119 steps:
120 - uses: actions/checkout@v4
121 - name: config
1a74f32d 122 run: ./config enable-fips enable-ec_nistp_64_gcc_128 enable-md2 enable-rc5 enable-ssl3 enable-ssl3-method enable-trace enable-unstable-qlog
6b7a11d8
DM
123 - name: config dump
124 run: ./configdata.pm --dump
125 - name: make
126 run: make -j4
127 - name: get cpu info
128 run: ./util/opensslwrap.sh version -c
129 - name: make test
130 run: make test HARNESS_JOBS=${HARNESS_JOBS:-4}
131
9524a308 132 minimal:
834a2d70 133 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
9524a308 134 steps:
d4231af6 135 - uses: actions/checkout@v4
1ac0464d
TM
136 - name: checkout fuzz/corpora submodule
137 run: git submodule update --init --depth 1 fuzz/corpora
9524a308 138 - name: config
1a74f32d 139 run: ./config --banner=Configured --strict-warnings no-bulk no-pic no-asm enable-unstable-qlog -DOPENSSL_NO_SECURE_MEMORY -DOPENSSL_SMALL_FOOTPRINT && perl configdata.pm --dump
9524a308 140 - name: make
d0196ddc 141 run: make -j4 # verbose, so no -s here
2d374e1c
DM
142 - name: get cpu info
143 run: |
144 cat /proc/cpuinfo
145 ./util/opensslwrap.sh version -c
9524a308 146 - name: make test
ae290d8f 147 run: make test HARNESS_JOBS=${HARNESS_JOBS:-4}
9524a308 148
e3577add 149 no-deprecated:
834a2d70 150 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
e3577add 151 steps:
d4231af6 152 - uses: actions/checkout@v4
1ac0464d
TM
153 - name: checkout fuzz/corpora submodule
154 run: git submodule update --init --depth 1 fuzz/corpora
e3577add 155 - name: config
1a74f32d 156 run: ./config --banner=Configured --strict-warnings no-deprecated enable-fips enable-unstable-qlog && perl configdata.pm --dump
e3577add
RL
157 - name: make
158 run: make -s -j4
2d374e1c
DM
159 - name: get cpu info
160 run: |
161 cat /proc/cpuinfo
162 ./util/opensslwrap.sh version -c
e3577add
RL
163 - name: make test
164 run: make test HARNESS_JOBS=${HARNESS_JOBS:-4}
165
834a2d70
DM
166 no-shared-ubuntu:
167 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
4a95b70d 168 steps:
d4231af6 169 - uses: actions/checkout@v4
1ac0464d
TM
170 - name: checkout fuzz/corpora submodule
171 run: git submodule update --init --depth 1 fuzz/corpora
4a95b70d 172 - name: config
1a74f32d 173 run: ./config --banner=Configured --strict-warnings no-shared no-fips enable-unstable-qlog && perl configdata.pm --dump
4a95b70d
RL
174 - name: make
175 run: make -s -j4
2d374e1c 176 - name: get cpu info
834a2d70
DM
177 run: |
178 cat /proc/cpuinfo
179 ./util/opensslwrap.sh version -c
180 - name: make test
181 run: make test HARNESS_JOBS=${HARNESS_JOBS:-4}
182
183 no-shared-macos:
184 runs-on: macos-latest
185 if: github.server_url == 'https://github.com'
186 steps:
187 - uses: actions/checkout@v4
188 - name: checkout fuzz/corpora submodule
189 run: git submodule update --init --depth 1 fuzz/corpora
190 - name: config
1a74f32d 191 run: ./config --banner=Configured --strict-warnings no-shared no-fips enable-unstable-qlog && perl configdata.pm --dump
834a2d70
DM
192 - name: make
193 run: make -s -j4
194 - name: get cpu info
195 run: |
196 sysctl machdep.cpu
197 ./util/opensslwrap.sh version -c
4a95b70d
RL
198 - name: make test
199 run: make test HARNESS_JOBS=${HARNESS_JOBS:-4}
200
499f2ae9 201 non-caching:
834a2d70 202 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
499f2ae9 203 steps:
d4231af6 204 - uses: actions/checkout@v4
1ac0464d
TM
205 - name: checkout fuzz/corpora submodule
206 run: git submodule update --init --depth 1 fuzz/corpora
499f2ae9 207 - name: config
1a74f32d 208 run: ./config --banner=Configured --debug enable-asan enable-ubsan no-cached-fetch no-fips no-dtls no-tls1 no-tls1-method no-tls1_1 no-tls1_1-method no-async enable-unstable-qlog && perl configdata.pm --dump
499f2ae9
P
209 - name: make
210 run: make -s -j4
2d374e1c
DM
211 - name: get cpu info
212 run: |
213 cat /proc/cpuinfo
214 ./util/opensslwrap.sh version -c
499f2ae9 215 - name: make test
e6f0c8d3 216 run: make test HARNESS_JOBS=${HARNESS_JOBS:-4} OPENSSL_TEST_RAND_ORDER=0 TESTS="-test_fuzz* -test_ssl_* -test_sslapi -test_evp -test_cmp_http -test_verify -test_cms -test_store -test_enc -[01][0-9]"
499f2ae9 217
a5a4dac9 218 address_ub_sanitizer:
834a2d70 219 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
9524a308 220 steps:
d4231af6 221 - uses: actions/checkout@v4
1ac0464d
TM
222 - name: checkout fuzz/corpora submodule
223 run: git submodule update --init --depth 1 fuzz/corpora
9524a308 224 - name: config
1a74f32d 225 run: ./config --banner=Configured --debug enable-asan enable-ubsan enable-rc5 enable-md2 enable-ec_nistp_64_gcc_128 enable-fips enable-unstable-qlog && perl configdata.pm --dump
9524a308 226 - name: make
ae290d8f 227 run: make -s -j4
2d374e1c
DM
228 - name: get cpu info
229 run: |
230 cat /proc/cpuinfo
231 ./util/opensslwrap.sh version -c
9524a308 232 - name: make test
ae290d8f 233 run: make test HARNESS_JOBS=${HARNESS_JOBS:-4} OPENSSL_TEST_RAND_ORDER=0
9524a308 234
27d88270 235 fuzz_tests:
834a2d70 236 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
27d88270
MC
237 steps:
238 - uses: actions/checkout@v4
239 - name: checkout fuzz/corpora submodule
240 run: git submodule update --init --depth 1 fuzz/corpora
241 - name: config
1a74f32d 242 run: ./config --banner=Configured --debug -DPEDANTIC -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION enable-asan enable-ubsan enable-rc5 enable-md2 enable-ec_nistp_64_gcc_128 enable-weak-ssl-ciphers enable-ssl3 enable-ssl3-method enable-nextprotoneg enable-unstable-qlog && perl configdata.pm --dump
27d88270
MC
243 - name: make
244 run: make -s -j4
245 - name: get cpu info
246 run: |
247 cat /proc/cpuinfo
248 ./util/opensslwrap.sh version -c
249 - name: make test
250 run: make test HARNESS_JOBS=${HARNESS_JOBS:-4} OPENSSL_TEST_RAND_ORDER=0 TESTS="test_fuzz*"
251
a5a4dac9 252 memory_sanitizer:
834a2d70 253 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
a5a4dac9 254 steps:
d4231af6 255 - uses: actions/checkout@v4
1ac0464d
TM
256 - name: checkout fuzz/corpora submodule
257 run: git submodule update --init --depth 1 fuzz/corpora
a5a4dac9
P
258 - name: config
259 # --debug -O1 is to produce a debug build that runs in a reasonable amount of time
1a74f32d 260 run: CC=clang ./config --banner=Configured --debug -O1 -fsanitize=memory -DOSSL_SANITIZE_MEMORY -fno-optimize-sibling-calls enable-rc5 enable-md2 enable-ec_nistp_64_gcc_128 enable-fips enable-unstable-qlog && perl configdata.pm --dump
a5a4dac9
P
261 - name: make
262 run: make -s -j4
2d374e1c
DM
263 - name: get cpu info
264 run: |
265 cat /proc/cpuinfo
266 ./util/opensslwrap.sh version -c
a5a4dac9
P
267 - name: make test
268 run: make test HARNESS_JOBS=${HARNESS_JOBS:-4} OPENSSL_TEST_RAND_ORDER=0
269
f94a9169 270 threads_sanitizer:
834a2d70 271 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
f94a9169 272 steps:
d4231af6 273 - uses: actions/checkout@v4
1ac0464d
TM
274 - name: checkout fuzz/corpora submodule
275 run: git submodule update --init --depth 1 fuzz/corpora
f94a9169 276 - name: config
1a74f32d 277 run: CC=clang ./config --banner=Configured no-fips enable-unstable-qlog --strict-warnings -fsanitize=thread && perl configdata.pm --dump
f94a9169
MC
278 - name: make
279 run: make -s -j4
2d374e1c
DM
280 - name: get cpu info
281 run: |
282 cat /proc/cpuinfo
283 ./util/opensslwrap.sh version -c
f94a9169 284 - name: make test
5cccc0af 285 run: make V=1 TESTS="test_threads test_internal_provider test_provfetch test_provider test_pbe test_evp_kdf test_pkcs12 test_store test_evp test_quic*" test HARNESS_JOBS=${HARNESS_JOBS:-4}
f94a9169 286
9524a308 287 enable_non-default_options:
834a2d70 288 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
9524a308 289 steps:
d4231af6 290 - uses: actions/checkout@v4
1ac0464d
TM
291 - name: checkout fuzz/corpora submodule
292 run: git submodule update --init --depth 1 fuzz/corpora
c9eb4598
TM
293 - name: modprobe tls
294 run: sudo modprobe tls
9524a308 295 - name: config
1a74f32d 296 run: ./config --banner=Configured --strict-warnings no-ec enable-ssl-trace enable-zlib enable-zlib-dynamic enable-crypto-mdebug enable-egd enable-ktls enable-fips no-threads enable-unstable-qlog && perl configdata.pm --dump
9524a308 297 - name: make
ae290d8f 298 run: make -s -j4
2d374e1c
DM
299 - name: get cpu info
300 run: |
301 cat /proc/cpuinfo
302 ./util/opensslwrap.sh version -c
9524a308 303 - name: make test
ae290d8f 304 run: make test HARNESS_JOBS=${HARNESS_JOBS:-4}
9524a308 305
5cd00422 306 full_featured:
834a2d70 307 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
a5d8a2f8 308 steps:
d4231af6 309 - uses: actions/checkout@v4
1ac0464d
TM
310 - name: checkout fuzz/corpora submodule
311 run: git submodule update --init --depth 1 fuzz/corpora
a5d8a2f8
DB
312 - name: modprobe tls
313 run: sudo modprobe tls
4ede274c
NH
314 - name: Enable sctp
315 run: sudo modprobe sctp
316 - name: Enable auth in sctp
317 run: sudo sysctl -w net.sctp.auth_enable=1
318 - name: install extra config support
319 run: sudo apt-get -y install libsctp-dev abigail-tools libzstd-dev zstd
a5d8a2f8 320 - name: config
1a74f32d 321 run: ./config --banner=Configured --strict-warnings enable-ktls enable-fips enable-egd enable-ec_nistp_64_gcc_128 enable-md2 enable-rc5 enable-sctp enable-ssl3 enable-ssl3-method enable-trace enable-zlib enable-zstd enable-unstable-qlog && perl configdata.pm --dump
a5d8a2f8
DB
322 - name: make
323 run: make -s -j4
2d374e1c
DM
324 - name: get cpu info
325 run: |
326 cat /proc/cpuinfo
327 ./util/opensslwrap.sh version -c
a5d8a2f8
DB
328 - name: make test
329 run: make test HARNESS_JOBS=${HARNESS_JOBS:-4}
330
11c7874d 331 no-legacy:
834a2d70 332 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
11c7874d 333 steps:
d4231af6 334 - uses: actions/checkout@v4
1ac0464d
TM
335 - name: checkout fuzz/corpora submodule
336 run: git submodule update --init --depth 1 fuzz/corpora
11c7874d 337 - name: config
1a74f32d 338 run: ./config --banner=Configured --strict-warnings no-legacy enable-fips enable-unstable-qlog && perl configdata.pm --dump
11c7874d
P
339 - name: make
340 run: make -s -j4
2d374e1c
DM
341 - name: get cpu info
342 run: |
343 cat /proc/cpuinfo
344 ./util/opensslwrap.sh version -c
11c7874d
P
345 - name: make test
346 run: make test HARNESS_JOBS=${HARNESS_JOBS:-4}
347
a67c7010 348 legacy:
834a2d70 349 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
9524a308 350 steps:
d4231af6 351 - uses: actions/checkout@v4
1ac0464d
TM
352 - name: checkout fuzz/corpora submodule
353 run: git submodule update --init --depth 1 fuzz/corpora
9524a308 354 - name: config
1a74f32d 355 run: ./config --banner=Configured -Werror --debug no-afalgeng no-shared enable-crypto-mdebug enable-rc5 enable-md2 enable-ssl3 enable-ssl3-method enable-weak-ssl-ciphers enable-zlib enable-ec_nistp_64_gcc_128 no-fips enable-unstable-qlog && perl configdata.pm --dump
9524a308 356 - name: make
ae290d8f 357 run: make -s -j4
2d374e1c
DM
358 - name: get cpu info
359 run: |
360 cat /proc/cpuinfo
361 ./util/opensslwrap.sh version -c
9524a308 362 - name: make test
ae290d8f 363 run: make test HARNESS_JOBS=${HARNESS_JOBS:-4}
4605b34d 364
266a3553
RL
365 # out-of-source-and-install checks multiple things at the same time:
366 # - That building, testing and installing works from an out-of-source
367 # build tree
368 # - That building, testing and installing works with a read-only source
369 # tree
834a2d70
DM
370 out-of-readonly-source-and-install-ubuntu:
371 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
4605b34d 372 steps:
d4231af6 373 - uses: actions/checkout@v4
266a3553
RL
374 with:
375 path: ./source
1ac0464d
TM
376 - name: checkout fuzz/corpora submodule
377 run: git submodule update --init --depth 1 fuzz/corpora
266a3553
RL
378 working-directory: ./source
379 - name: make source read-only
380 run: chmod -R a-w ./source
381 - name: create build and install directories
4605b34d
RL
382 run: |
383 mkdir ./build
384 mkdir ./install
385 - name: config
266a3553 386 run: |
1a74f32d 387 ../source/config --banner=Configured enable-fips enable-quic enable-unstable-qlog enable-acvp-tests --strict-warnings --prefix=$(cd ../install; pwd)
266a3553 388 perl configdata.pm --dump
4605b34d
RL
389 working-directory: ./build
390 - name: make
391 run: make -s -j4
392 working-directory: ./build
2d374e1c 393 - name: get cpu info
834a2d70
DM
394 run: |
395 cat /proc/cpuinfo
396 ./util/opensslwrap.sh version -c
397 working-directory: ./build
398 - name: make test
399 run: make test HARNESS_JOBS=${HARNESS_JOBS:-4}
400 working-directory: ./build
401 - name: make install
402 run: make install
403 working-directory: ./build
404
405 out-of-readonly-source-and-install-macos:
406 runs-on: macos-latest
407 if: github.server_url == 'https://github.com'
408 steps:
409 - uses: actions/checkout@v4
410 with:
411 path: ./source
412 - name: checkout fuzz/corpora submodule
413 run: git submodule update --init --depth 1 fuzz/corpora
414 working-directory: ./source
415 - name: make source read-only
416 run: chmod -R a-w ./source
417 - name: create build and install directories
418 run: |
419 mkdir ./build
420 mkdir ./install
421 - name: config
422 run: |
1a74f32d 423 ../source/config --banner=Configured enable-fips enable-quic enable-unstable-qlog enable-acvp-tests --strict-warnings --prefix=$(cd ../install; pwd)
834a2d70
DM
424 perl configdata.pm --dump
425 working-directory: ./build
426 - name: make
427 run: make -s -j4
428 working-directory: ./build
429 - name: get cpu info
430 run: |
431 sysctl machdep.cpu
432 ./util/opensslwrap.sh version -c
2d374e1c 433 working-directory: ./build
4605b34d
RL
434 - name: make test
435 run: make test HARNESS_JOBS=${HARNESS_JOBS:-4}
436 working-directory: ./build
437 - name: make install
438 run: make install
439 working-directory: ./build
b414c811 440
996d2693 441 external-tests:
834a2d70 442 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
996d2693 443 steps:
d4231af6 444 - uses: actions/checkout@v4
996d2693
TM
445 with:
446 submodules: recursive
447 - name: package installs
448 run: |
449 sudo apt-get update
dd62ec27 450 sudo apt-get -yq install bison gettext keyutils ldap-utils libldap2-dev libkeyutils-dev python3 python3-paste python3-pyrad slapd tcsh python3-virtualenv virtualenv python3-kdcproxy
b414c811
TM
451 - name: install cpanm and Test2::V0 for gost_engine testing
452 uses: perl-actions/install-with-cpanm@v1
453 with:
454 install: Test2::V0
cd0aca53
TM
455 - name: setup hostname workaround
456 run: sudo hostname localhost
996d2693 457 - name: config
d0364dcc 458 run: ./config --banner=Configured --strict-warnings --debug no-afalgeng enable-rc5 enable-md2 enable-ssl3 enable-ssl3-method enable-weak-ssl-ciphers enable-zlib enable-ec_nistp_64_gcc_128 enable-external-tests no-fips && perl configdata.pm --dump
996d2693
TM
459 - name: make
460 run: make -s -j4
2d374e1c
DM
461 - name: get cpu info
462 run: |
463 cat /proc/cpuinfo
464 ./util/opensslwrap.sh version -c
a7a041c2
TM
465 - name: test external gost-engine
466 run: make test TESTS="test_external_gost_engine"
467 - name: test external krb5
468 run: make test TESTS="test_external_krb5"
e66c4172
DB
469 - name: test external_tlsfuzzer
470 run: make test TESTS="test_external_tlsfuzzer"
fa66f62e
MB
471 - name: test external oqs-provider
472 run: make test TESTS="test_external_oqsprovider"
a938f004
PK
473
474 external-test-pyca:
834a2d70 475 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
a938f004
PK
476 strategy:
477 matrix:
478 RUST:
479 - 1.51.0
480 PYTHON:
481 - 3.9
482 steps:
d4231af6 483 - uses: actions/checkout@v4
a938f004
PK
484 with:
485 submodules: recursive
486 - name: Configure OpenSSL
d0364dcc 487 run: ./config --banner=Configured --strict-warnings --debug enable-external-tests && perl configdata.pm --dump
a938f004
PK
488 - name: make
489 run: make -s -j4
490 - name: Setup Python
51c85496 491 uses: actions/setup-python@v5.0.0
a938f004
PK
492 with:
493 python-version: ${{ matrix.PYTHON }}
cd5911a6 494 - uses: dtolnay/rust-toolchain@master
a938f004 495 with:
a938f004 496 toolchain: ${{ matrix.RUST }}
2d374e1c
DM
497 - name: get cpu info
498 run: |
499 cat /proc/cpuinfo
500 ./util/opensslwrap.sh version -c
a938f004 501 - name: test external pyca
94471ccf 502 run: make test TESTS="test_external_pyca" VERBOSE=1
fc110280
TM
503
504 external-test-cf-quiche:
834a2d70 505 runs-on: ${{ github.server_url == 'https://github.com' && 'ubuntu-latest' || 'ubuntu-22.04-self-hosted' }}
fc110280 506 steps:
d4231af6 507 - uses: actions/checkout@v4
fc110280
TM
508 with:
509 submodules: recursive
510 - name: Configure OpenSSL
8a764202 511 run: ./config --banner=Configured --strict-warnings enable-external-tests && perl configdata.pm --dump
fc110280
TM
512 - name: make
513 run: make -s -j4
cd5911a6 514 - uses: dtolnay/rust-toolchain@stable
2d374e1c
DM
515 - name: get cpu info
516 run: |
517 cat /proc/cpuinfo
518 ./util/opensslwrap.sh version -c
fc110280
TM
519 - name: test external Cloudflare quiche
520 run: make test TESTS="test_external_cf_quiche" VERBOSE=1