Skip to content

Commit 8e2a92a

Browse files
cjpattonlukevalenta
andcommitted
Run BoringSSL tests with patches
Add a CI job that applies all patches to BoringSSL then runs the BoringSSL unit tests. Co-authored-by: Luke Valenta <lvalenta@cloudflare.com>
1 parent 717b165 commit 8e2a92a

1 file changed

Lines changed: 33 additions & 0 deletions

File tree

.github/workflows/ci.yml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -393,6 +393,39 @@ jobs:
393393
# submodules to a new revision, so it's important to test this on CI.
394394
run: cargo publish --dry-run -p boring-sys --features fips
395395

396+
test-boringssl:
397+
name: Test BoringSSL upstream test suite
398+
runs-on: ubuntu-latest
399+
steps:
400+
- uses: actions/checkout@v4
401+
with:
402+
submodules: 'recursive'
403+
- name: Install golang
404+
uses: actions/setup-go@v5
405+
with:
406+
go-version: '>=1.22.0'
407+
- name: Install build tools (ninja, cmake)
408+
run: sudo apt-get update && sudo apt-get install -y ninja-build cmake
409+
- name: Apply boring-sys patches
410+
working-directory: boring-sys/deps/boringssl
411+
run: |
412+
for p in boring-pq.patch rpk.patch underscore-wildcards.patch; do
413+
echo "Applying $p"
414+
patch -p1 < "../../patches/$p"
415+
done
416+
- name: Configure BoringSSL build
417+
working-directory: boring-sys/deps/boringssl
418+
run: cmake -GNinja -B build -DCMAKE_BUILD_TYPE=Release
419+
- name: Build BoringSSL
420+
working-directory: boring-sys/deps/boringssl
421+
run: ninja -C build
422+
- name: Run BoringSSL C/C++ test suite
423+
working-directory: boring-sys/deps/boringssl
424+
run: go run util/all_tests.go
425+
- name: Run BoringSSL SSL runner tests
426+
working-directory: boring-sys/deps/boringssl/ssl/test/runner
427+
run: go test
428+
396429
cross-build:
397430
name: Cross build from macOS to Linux
398431
runs-on: macos-latest

0 commit comments

Comments
 (0)