Skip to content

Commit 211e370

Browse files
ci: run against multiple openssl versions
1 parent 7a53821 commit 211e370

File tree

3 files changed

+29
-4
lines changed

3 files changed

+29
-4
lines changed

.github/actions/install-openssl/action.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,18 @@ runs:
2727
./Configure --prefix=$HOME/openssl --libdir=lib linux-x86_64
2828
make depend && make -j4 && make install_sw
2929
;;
30+
3.*)
31+
OPENSSL_COMMIT=openssl-
32+
OPENSSL_COMMIT+=$(echo ${{ inputs.version }})
33+
git clone -b $OPENSSL_COMMIT --depth 1 https://github.com/openssl/openssl.git .
34+
echo "Git commit: $(git rev-parse HEAD)"
35+
if [[ ${{ inputs.version }} == 3.5* ]]; then
36+
./Configure --prefix=$HOME/openssl --libdir=lib enable-fips no-tests no-legacy
37+
else
38+
./Configure --prefix=$HOME/openssl --libdir=lib enable-fips no-tests
39+
fi
40+
make -j4 && make install_sw && make install_fips
41+
;;
3042
*)
3143
echo "Don't know how to build OpenSSL ${{ inputs.version }}"
3244
;;

.github/actions/install-ruby/action.yml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@ inputs:
33
version:
44
description: 'The version of Ruby to install'
55
required: true
6+
openssl-version:
7+
description: 'The version of OpenSSL used'
8+
required: true
69
runs:
710
using: 'composite'
811
steps:
@@ -11,7 +14,7 @@ runs:
1114
uses: actions/cache@v4
1215
with:
1316
path: ~/rubies/ruby-${{ inputs.version }}
14-
key: ruby-${{ inputs.version }}-openssl-1.1.1w
17+
key: ruby-${{ inputs.version }}-${{ inputs.openssl-version }}
1518

1619
- name: Install Ruby
1720
if: steps.ruby-cache.outputs.cache-hit != 'true'
@@ -52,7 +55,7 @@ runs:
5255
GEMFILE: ${{ env.BUNDLE_GEMFILE || 'Gemfile' }}
5356
with:
5457
path: ./vendor/bundle
55-
key: bundler-ruby-${{ inputs.version }}-${{ hashFiles(env.Gemfile, 'tpm-key_attestation.gemspec') }}
58+
key: bundler-ruby-${{ inputs.version }}-${{ inputs.openssl-version }}-${{ hashFiles(env.Gemfile, 'tpm-key_attestation.gemspec') }}
5659

5760
- name: Install dependencies
5861
shell: bash

.github/workflows/build.yml

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,21 +24,31 @@ jobs:
2424
- '2.7'
2525
- '2.6'
2626
- '2.5'
27-
- truffleruby
27+
openssl:
28+
- '3.4.1'
29+
- '3.3.3'
30+
- '3.2.4'
31+
- '3.1.8'
32+
- '3.0.16'
33+
- '1.1.1w'
34+
include:
35+
- ruby: truffleruby
36+
2837
steps:
2938
- uses: actions/checkout@v4
3039

3140
- name: Install OpenSSL
3241
if: matrix.ruby != 'truffleruby'
3342
uses: ./.github/actions/install-openssl
3443
with:
35-
version: "1.1.1w"
44+
version: ${{ matrix.openssl }}
3645

3746
- name: Manually set up Ruby
3847
if: matrix.ruby != 'truffleruby'
3948
uses: ./.github/actions/install-ruby
4049
with:
4150
version: ${{ matrix.ruby }}
51+
openssl-version: ${{ matrix.openssl }}
4252

4353
- name: Set up Ruby
4454
if: matrix.ruby == 'truffleruby'

0 commit comments

Comments
 (0)