@@ -12,15 +12,21 @@ jobs:
12
12
strategy :
13
13
matrix :
14
14
# macos-latest-large is the latest intel based runner
15
- os : [macos-13, macos-latest-large]
15
+ os : [macos-13, macos-latest-large, ubuntu-22.04 ]
16
16
openssl_version :
[[email protected] ]
17
17
18
18
permissions :
19
19
id-token : write
20
20
contents : read
21
21
22
22
steps :
23
- - run : brew install ${{ matrix.openssl_version }}
23
+ - name : Install OpenSSL
24
+ if : matrix.os != 'ubuntu-22.04'
25
+ run : brew install ${{ matrix.openssl_version }}
26
+
27
+ - name : Install LibCurl
28
+ if : matrix.os == 'ubuntu-22.04'
29
+ run : sudo apt-get install libcurl4-openssl-dev
24
30
25
31
- name : Checkout PR
26
32
uses : actions/checkout@v4
@@ -43,10 +49,12 @@ jobs:
43
49
submodules : recursive
44
50
45
51
- name : Install dependencies
52
+ if : matrix.os != 'ubuntu-22.04'
46
53
run :
47
54
brew install json-c
48
55
49
56
- name : Build and install aws-sdk-cpp
57
+ if : matrix.os != 'ubuntu-22.04'
50
58
run : |
51
59
# remove the following line once aws-sdk-cpp fixes linux-shared/SimpleUDP.cpp
52
60
perl -i -p -e 's/"-Werror"//' aws-sdk-cpp/cmake/compiler_settings.cmake
57
65
xcodebuild -target ALL_BUILD
58
66
xcodebuild -target install
59
67
68
+ - name : Build and install aws-sdk-cpp
69
+ if : matrix.os == 'ubuntu-22.04'
70
+ run : |
71
+ # remove the following line once aws-sdk-cpp fixes linux-shared/SimpleUDP.cpp
72
+ perl -i -p -e 's/"-Werror"//' aws-sdk-cpp/cmake/compiler_settings.cmake
73
+ mkdir -p build-aws-sdk-cpp || true
74
+ mkdir -p install || true
75
+ cd build-aws-sdk-cpp
76
+ cmake -DBUILD_SHARED_LIBS=ON -DBUILD_ONLY="kms" -DENABLE_UNITY_BUILD=ON -DCMAKE_INSTALL_PREFIX=${{github.workspace}}/install -DCMAKE_PREFIX_PATH=${{github.workspace}}/install ../aws-sdk-cpp
77
+ make
78
+ make install
79
+
60
80
- name : Configure AWS Credentials
61
81
uses : aws-actions/configure-aws-credentials@v2
62
82
with :
65
85
role-session-name : CESDKTests
66
86
67
87
- name : Build C-ESDK
88
+ if : matrix.os != 'ubuntu-22.04'
68
89
env :
69
90
OPENSSL_VERSION : ${{ matrix.openssl_version }}
70
91
# TODO-RS: Figure out how to safely add AWS credentials and add -DAWS_ENC_SDK_END_TO_END_TESTS=ON and -DAWS_ENC_SDK_KNOWN_GOOD_TESTS=ON
75
96
xcodebuild -target ALL_BUILD
76
97
xcodebuild -scheme RUN_TESTS
77
98
99
+ - name : Build C-ESDK
100
+ if : matrix.os == 'ubuntu-22.04'
101
+ env :
102
+ OPENSSL_VERSION : ${{ matrix.openssl_version }}
103
+ # TODO-RS: Figure out how to safely add AWS credentials and add -DAWS_ENC_SDK_END_TO_END_TESTS=ON and -DAWS_ENC_SDK_KNOWN_GOOD_TESTS=ON
104
+ run : |
105
+ mkdir build-aws-encryption-sdk-c || true
106
+ cd build-aws-encryption-sdk-c
107
+ cmake -DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=${{github.workspace}}/install -DCMAKE_PREFIX_PATH=${{github.workspace}}/install -DOPENSSL_ROOT_DIR="/usr/local/opt/${OPENSSL_VERSION}" ../
108
+ make
109
+ make test
110
+ make install
111
+
112
+ - name : Run Interop Test Vectors
113
+ if : matrix.os != 'ubuntu-22.04'
114
+ run : |
115
+ cd tests/TestVectors/
116
+ make decrypt_dafny
117
+ make encrypt
118
+ make decrypt
119
+
78
120
- name : Run Interop Test Vectors
121
+ if : matrix.os == 'ubuntu-22.04'
79
122
run : |
80
123
cd tests/TestVectors/
124
+ make test_vectors_unix
81
125
make decrypt_dafny
82
126
make encrypt
83
127
make decrypt
0 commit comments