From 88c91163cd41eb6743bff21546ce83a6c421531d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20M=C3=BCller?= Date: Sun, 10 Nov 2024 20:58:05 +0100 Subject: [PATCH 1/2] [CI] Add tests for LibreSSL 2.7 --- .github/workflows/openssl.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/openssl.yml b/.github/workflows/openssl.yml index 611413e7e678..50aea38d2139 100644 --- a/.github/workflows/openssl.yml +++ b/.github/workflows/openssl.yml @@ -23,6 +23,8 @@ jobs: repository: http://dl-cdn.alpinelinux.org/alpine/v3.17/main - pkg: "openssl-dev=~3.3" repository: http://dl-cdn.alpinelinux.org/alpine/v3.20/main + - pkg: "libressl-dev=~2.7" + repository: http://dl-cdn.alpinelinux.org/alpine/v3.9/main - pkg: "libressl-dev=~3.4" repository: http://dl-cdn.alpinelinux.org/alpine/v3.15/community - pkg: "libressl-dev=~3.5" From fb6a759f0096dc2b15b1b4dc58974e238724791c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20M=C3=BCller?= Date: Sun, 10 Nov 2024 21:07:32 +0100 Subject: [PATCH 2/2] Ignore errors and validate installed version --- .github/workflows/openssl.yml | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/.github/workflows/openssl.yml b/.github/workflows/openssl.yml index 50aea38d2139..5449f39963ac 100644 --- a/.github/workflows/openssl.yml +++ b/.github/workflows/openssl.yml @@ -37,8 +37,18 @@ jobs: - name: Uninstall openssl and conflicts run: apk del openssl-dev openssl-libs-static libxml2-static - name: Install ${{ matrix.pkg }} - run: apk add "${{ matrix.pkg }}" --repository=${{ matrix.repository }} - - name: Print LibSSL version - run: bin/crystal eval 'require "openssl"; p! LibSSL::OPENSSL_VERSION, LibSSL::LIBRESSL_VERSION' + # `apk add` may exit with a failure status due to some file incompatibilities, + # but still install all the necessary parts for our purposes. So we ignore failure. + # Reason: ERROR: libressl2.7-libcrypto-2.7.5-r0: trying to overwrite etc/ssl/openssl.cnf owned by libcrypto3-3.3.2-r0. + run: apk add "${{ matrix.pkg }}" --repository=${{ matrix.repository }} || true + - name: Check LibSSL version + run: | + bin/crystal eval <