6
6
- ' main'
7
7
8
8
env :
9
- BUILDER_VERSION : v0.9.64
9
+ BUILDER_VERSION : v0.9.72
10
10
BUILDER_SOURCE : releases
11
11
BUILDER_HOST : https://d19elf31gohf1l.cloudfront.net
12
12
PACKAGE_NAME : aws-c-http
13
13
LINUX_BASE_IMAGE : ubuntu-18-x64
14
14
RUN : ${{ github.run_id }}-${{ github.run_number }}
15
- AWS_ACCESS_KEY_ID : ${{ secrets.AWS_ACCESS_KEY_ID }}
16
- AWS_SECRET_ACCESS_KEY : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
17
- AWS_REGION : us-east-1
15
+ CRT_CI_ROLE : ${{ secrets.CRT_CI_ROLE_ARN }}
16
+ AWS_DEFAULT_REGION : us-east-1
17
+
18
+ permissions :
19
+ id-token : write # This is required for requesting the JWT
18
20
19
21
jobs :
20
22
linux-compat :
21
- runs-on : ubuntu-20 .04 # latest
23
+ runs-on : ubuntu-24 .04 # latest
22
24
strategy :
23
25
matrix :
24
26
image :
@@ -32,14 +34,18 @@ jobs:
32
34
- rhel8-x64
33
35
34
36
steps :
35
- # We can't use the `uses: docker://image` version yet, GitHub lacks authentication for actions -> packages
37
+ - uses : aws-actions/configure-aws-credentials@v4
38
+ with :
39
+ role-to-assume : ${{ env.CRT_CI_ROLE }}
40
+ aws-region : ${{ env.AWS_DEFAULT_REGION }}
41
+ # We can't use the `uses: docker://image` version yet, GitHub lacks authentication for actions -> packages
36
42
- name : Build ${{ env.PACKAGE_NAME }}
37
43
run : |
38
44
aws s3 cp s3://aws-crt-test-stuff/ci/${{ env.BUILDER_VERSION }}/linux-container-ci.sh ./linux-container-ci.sh && chmod a+x ./linux-container-ci.sh
39
45
./linux-container-ci.sh ${{ env.BUILDER_VERSION }} aws-crt-${{ matrix.image }} build -p ${{ env.PACKAGE_NAME }}
40
46
41
47
linux-compiler-compat :
42
- runs-on : ubuntu-20 .04 # latest
48
+ runs-on : ubuntu-24 .04 # latest
43
49
strategy :
44
50
matrix :
45
51
compiler :
@@ -49,62 +55,90 @@ jobs:
49
55
- clang-9
50
56
- clang-10
51
57
- clang-11
58
+ - clang-15
59
+ - clang-17
52
60
- gcc-4.8
53
61
- gcc-5
54
62
- gcc-6
55
63
- gcc-7
56
64
- gcc-8
65
+ - gcc-11
66
+ # - gcc-13 TODO: figure out why its not passing
57
67
steps :
58
- # We can't use the `uses: docker://image` version yet, GitHub lacks authentication for actions -> packages
59
- - name : Build ${{ env.PACKAGE_NAME }}
60
- run : |
61
- aws s3 cp s3://aws-crt-test-stuff/ci/${{ env.BUILDER_VERSION }}/linux-container-ci.sh ./linux-container-ci.sh && chmod a+x ./linux-container-ci.sh
62
- ./linux-container-ci.sh ${{ env.BUILDER_VERSION }} aws-crt-${{ env.LINUX_BASE_IMAGE }} build -p ${{ env.PACKAGE_NAME }} --compiler=${{ matrix.compiler }}
68
+ - uses : aws-actions/configure-aws-credentials@v4
69
+ with :
70
+ role-to-assume : ${{ env.CRT_CI_ROLE }}
71
+ aws-region : ${{ env.AWS_DEFAULT_REGION }}
72
+ # We can't use the `uses: docker://image` version yet, GitHub lacks authentication for actions -> packages
73
+ - name : Build ${{ env.PACKAGE_NAME }}
74
+ run : |
75
+ aws s3 cp s3://aws-crt-test-stuff/ci/${{ env.BUILDER_VERSION }}/linux-container-ci.sh ./linux-container-ci.sh && chmod a+x ./linux-container-ci.sh
76
+ ./linux-container-ci.sh ${{ env.BUILDER_VERSION }} aws-crt-${{ env.LINUX_BASE_IMAGE }} build -p ${{ env.PACKAGE_NAME }} --compiler=${{ matrix.compiler }}
63
77
64
78
clang-sanitizers :
65
- runs-on : ubuntu-20 .04 # latest
79
+ runs-on : ubuntu-24 .04 # latest
66
80
strategy :
67
81
matrix :
68
82
sanitizers : [",thread", ",address,undefined"]
69
83
steps :
70
- # We can't use the `uses: docker://image` version yet, GitHub lacks authentication for actions -> packages
71
- - name : Build ${{ env.PACKAGE_NAME }}
72
- run : |
73
- aws s3 cp s3://aws-crt-test-stuff/ci/${{ env.BUILDER_VERSION }}/linux-container-ci.sh ./linux-container-ci.sh && chmod a+x ./linux-container-ci.sh
74
- ./linux-container-ci.sh ${{ env.BUILDER_VERSION }} aws-crt-${{ env.LINUX_BASE_IMAGE }} build -p ${{ env.PACKAGE_NAME }} --compiler=clang-11 --cmake-extra=-DENABLE_SANITIZERS=ON --cmake-extra=-DSANITIZERS="${{ matrix.sanitizers }}"
84
+ - uses : aws-actions/configure-aws-credentials@v4
85
+ with :
86
+ role-to-assume : ${{ env.CRT_CI_ROLE }}
87
+ aws-region : ${{ env.AWS_DEFAULT_REGION }}
88
+ # We can't use the `uses: docker://image` version yet, GitHub lacks authentication for actions -> packages
89
+ - name : Build ${{ env.PACKAGE_NAME }}
90
+ run : |
91
+ aws s3 cp s3://aws-crt-test-stuff/ci/${{ env.BUILDER_VERSION }}/linux-container-ci.sh ./linux-container-ci.sh && chmod a+x ./linux-container-ci.sh
92
+ ./linux-container-ci.sh ${{ env.BUILDER_VERSION }} aws-crt-${{ env.LINUX_BASE_IMAGE }} build -p ${{ env.PACKAGE_NAME }} --compiler=clang-11 --cmake-extra=-DENABLE_SANITIZERS=ON --cmake-extra=-DSANITIZERS="${{ matrix.sanitizers }}"
75
93
76
94
linux-shared-libs :
77
- runs-on : ubuntu-20 .04 # latest
95
+ runs-on : ubuntu-24 .04 # latest
78
96
steps :
79
- # We can't use the `uses: docker://image` version yet, GitHub lacks authentication for actions -> packages
80
- - name : Build ${{ env.PACKAGE_NAME }}
81
- run : |
82
- aws s3 cp s3://aws-crt-test-stuff/ci/${{ env.BUILDER_VERSION }}/linux-container-ci.sh ./linux-container-ci.sh && chmod a+x ./linux-container-ci.sh
83
- ./linux-container-ci.sh ${{ env.BUILDER_VERSION }} aws-crt-${{ env.LINUX_BASE_IMAGE }} build -p ${{ env.PACKAGE_NAME }} --cmake-extra=-DBUILD_SHARED_LIBS=ON
97
+ - uses : aws-actions/configure-aws-credentials@v4
98
+ with :
99
+ role-to-assume : ${{ env.CRT_CI_ROLE }}
100
+ aws-region : ${{ env.AWS_DEFAULT_REGION }}
101
+ # We can't use the `uses: docker://image` version yet, GitHub lacks authentication for actions -> packages
102
+ - name : Build ${{ env.PACKAGE_NAME }}
103
+ run : |
104
+ aws s3 cp s3://aws-crt-test-stuff/ci/${{ env.BUILDER_VERSION }}/linux-container-ci.sh ./linux-container-ci.sh && chmod a+x ./linux-container-ci.sh
105
+ ./linux-container-ci.sh ${{ env.BUILDER_VERSION }} aws-crt-${{ env.LINUX_BASE_IMAGE }} build -p ${{ env.PACKAGE_NAME }} --cmake-extra=-DBUILD_SHARED_LIBS=ON
84
106
85
107
byo-crypto :
86
- runs-on : ubuntu-20 .04 # latest
108
+ runs-on : ubuntu-24 .04 # latest
87
109
steps :
88
- # We can't use the `uses: docker://image` version yet, GitHub lacks authentication for actions -> packages
89
- - name : Build ${{ env.PACKAGE_NAME }}
90
- run : |
91
- aws s3 cp s3://aws-crt-test-stuff/ci/${{ env.BUILDER_VERSION }}/linux-container-ci.sh ./linux-container-ci.sh && chmod a+x ./linux-container-ci.sh
92
- ./linux-container-ci.sh ${{ env.BUILDER_VERSION }} aws-crt-${{ env.LINUX_BASE_IMAGE }} build -p ${{ env.PACKAGE_NAME }} --cmake-extra=-DBYO_CRYPTO=ON
110
+ - uses : aws-actions/configure-aws-credentials@v4
111
+ with :
112
+ role-to-assume : ${{ env.CRT_CI_ROLE }}
113
+ aws-region : ${{ env.AWS_DEFAULT_REGION }}
114
+ # We can't use the `uses: docker://image` version yet, GitHub lacks authentication for actions -> packages
115
+ - name : Build ${{ env.PACKAGE_NAME }}
116
+ run : |
117
+ aws s3 cp s3://aws-crt-test-stuff/ci/${{ env.BUILDER_VERSION }}/linux-container-ci.sh ./linux-container-ci.sh && chmod a+x ./linux-container-ci.sh
118
+ ./linux-container-ci.sh ${{ env.BUILDER_VERSION }} aws-crt-${{ env.LINUX_BASE_IMAGE }} build -p ${{ env.PACKAGE_NAME }} --cmake-extra=-DBYO_CRYPTO=ON
93
119
94
120
# Test downstream repos.
95
121
# This should not be required because we can run into a chicken and egg problem if there is a change that needs some fix in a downstream repo.
96
122
downstream :
97
- runs-on : ubuntu-20 .04 # latest
123
+ runs-on : ubuntu-24 .04 # latest
98
124
steps :
99
- # We can't use the `uses: docker://image` version yet, GitHub lacks authentication for actions -> packages
100
- - name : Build ${{ env.PACKAGE_NAME }}
101
- run : |
102
- aws s3 cp s3://aws-crt-test-stuff/ci/${{ env.BUILDER_VERSION }}/linux-container-ci.sh ./linux-container-ci.sh && chmod a+x ./linux-container-ci.sh
103
- ./linux-container-ci.sh ${{ env.BUILDER_VERSION }} aws-crt-${{ env.LINUX_BASE_IMAGE }} build downstream -p ${{ env.PACKAGE_NAME }}
125
+ - uses : aws-actions/configure-aws-credentials@v4
126
+ with :
127
+ role-to-assume : ${{ env.CRT_CI_ROLE }}
128
+ aws-region : ${{ env.AWS_DEFAULT_REGION }}
129
+ # We can't use the `uses: docker://image` version yet, GitHub lacks authentication for actions -> packages
130
+ - name : Build ${{ env.PACKAGE_NAME }}
131
+ run : |
132
+ aws s3 cp s3://aws-crt-test-stuff/ci/${{ env.BUILDER_VERSION }}/linux-container-ci.sh ./linux-container-ci.sh && chmod a+x ./linux-container-ci.sh
133
+ ./linux-container-ci.sh ${{ env.BUILDER_VERSION }} aws-crt-${{ env.LINUX_BASE_IMAGE }} build downstream -p ${{ env.PACKAGE_NAME }}
104
134
105
135
windows :
106
136
runs-on : windows-2022 # latest
107
137
steps :
138
+ - uses : aws-actions/configure-aws-credentials@v4
139
+ with :
140
+ role-to-assume : ${{ env.CRT_CI_ROLE }}
141
+ aws-region : ${{ env.AWS_DEFAULT_REGION }}
108
142
- name : Build ${{ env.PACKAGE_NAME }} + consumers
109
143
run : |
110
144
python -c "from urllib.request import urlretrieve; urlretrieve('${{ env.BUILDER_HOST }}/${{ env.BUILDER_SOURCE }}/${{ env.BUILDER_VERSION }}/builder.pyz?run=${{ env.RUN }}', 'builder.pyz')"
@@ -116,6 +150,10 @@ jobs:
116
150
matrix :
117
151
arch : [x86, x64]
118
152
steps :
153
+ - uses : aws-actions/configure-aws-credentials@v4
154
+ with :
155
+ role-to-assume : ${{ env.CRT_CI_ROLE }}
156
+ aws-region : ${{ env.AWS_DEFAULT_REGION }}
119
157
- name : Build ${{ env.PACKAGE_NAME }} + consumers
120
158
run : |
121
159
python -c "from urllib.request import urlretrieve; urlretrieve('${{ env.BUILDER_HOST }}/${{ env.BUILDER_SOURCE }}/${{ env.BUILDER_VERSION }}/builder.pyz?run=${{ env.RUN }}', 'builder.pyz')"
@@ -124,6 +162,10 @@ jobs:
124
162
windows-shared-libs :
125
163
runs-on : windows-2022 # latest
126
164
steps :
165
+ - uses : aws-actions/configure-aws-credentials@v4
166
+ with :
167
+ role-to-assume : ${{ env.CRT_CI_ROLE }}
168
+ aws-region : ${{ env.AWS_DEFAULT_REGION }}
127
169
- name : Build ${{ env.PACKAGE_NAME }} + consumers
128
170
run : |
129
171
python -c "from urllib.request import urlretrieve; urlretrieve('${{ env.BUILDER_HOST }}/${{ env.BUILDER_SOURCE }}/${{ env.BUILDER_VERSION }}/builder.pyz?run=${{ env.RUN }}', 'builder.pyz')"
@@ -132,6 +174,10 @@ jobs:
132
174
windows-app-verifier :
133
175
runs-on : windows-2022 # latest
134
176
steps :
177
+ - uses : aws-actions/configure-aws-credentials@v4
178
+ with :
179
+ role-to-assume : ${{ env.CRT_CI_ROLE }}
180
+ aws-region : ${{ env.AWS_DEFAULT_REGION }}
135
181
- name : Build ${{ env.PACKAGE_NAME }} + consumers
136
182
run : |
137
183
python -c "from urllib.request import urlretrieve; urlretrieve('${{ env.BUILDER_HOST }}/${{ env.BUILDER_SOURCE }}/${{ env.BUILDER_VERSION }}/builder.pyz?run=${{ env.RUN }}', 'builder.pyz')"
@@ -143,6 +189,10 @@ jobs:
143
189
macos :
144
190
runs-on : macos-14 # latest
145
191
steps :
192
+ - uses : aws-actions/configure-aws-credentials@v4
193
+ with :
194
+ role-to-assume : ${{ env.CRT_CI_ROLE }}
195
+ aws-region : ${{ env.AWS_DEFAULT_REGION }}
146
196
- name : Build ${{ env.PACKAGE_NAME }} + consumers
147
197
run : |
148
198
python3 -c "from urllib.request import urlretrieve; urlretrieve('${{ env.BUILDER_HOST }}/${{ env.BUILDER_SOURCE }}/${{ env.BUILDER_VERSION }}/builder.pyz?run=${{ env.RUN }}', 'builder')"
@@ -152,17 +202,25 @@ jobs:
152
202
macos-x64 :
153
203
runs-on : macos-14-large # latest
154
204
steps :
205
+ - uses : aws-actions/configure-aws-credentials@v4
206
+ with :
207
+ role-to-assume : ${{ env.CRT_CI_ROLE }}
208
+ aws-region : ${{ env.AWS_DEFAULT_REGION }}
155
209
- name : Build ${{ env.PACKAGE_NAME }} + consumers
156
210
run : |
157
211
python3 -c "from urllib.request import urlretrieve; urlretrieve('${{ env.BUILDER_HOST }}/${{ env.BUILDER_SOURCE }}/${{ env.BUILDER_VERSION }}/builder.pyz?run=${{ env.RUN }}', 'builder')"
158
212
chmod a+x builder
159
213
./builder build -p ${{ env.PACKAGE_NAME }}
160
214
161
215
localhost-test-linux :
162
- runs-on : ubuntu-20 .04 # latest
216
+ runs-on : ubuntu-24 .04 # latest
163
217
steps :
218
+ - uses : aws-actions/configure-aws-credentials@v4
219
+ with :
220
+ role-to-assume : ${{ env.CRT_CI_ROLE }}
221
+ aws-region : ${{ env.AWS_DEFAULT_REGION }}
164
222
- name : Checkout
165
- uses : actions/checkout@v3
223
+ uses : actions/checkout@v4
166
224
- name : Build and test
167
225
run : |
168
226
python3 -c "from urllib.request import urlretrieve; urlretrieve('${{ env.BUILDER_HOST }}/${{ env.BUILDER_SOURCE }}/${{ env.BUILDER_VERSION }}/builder.pyz?run=${{ env.RUN }}', 'builder.pyz')"
@@ -171,8 +229,12 @@ jobs:
171
229
localhost-test-macos :
172
230
runs-on : macos-14 # latest
173
231
steps :
232
+ - uses : aws-actions/configure-aws-credentials@v4
233
+ with :
234
+ role-to-assume : ${{ env.CRT_CI_ROLE }}
235
+ aws-region : ${{ env.AWS_DEFAULT_REGION }}
174
236
- name : Checkout
175
- uses : actions/checkout@v3
237
+ uses : actions/checkout@v4
176
238
- name : Build and test
177
239
run : |
178
240
python3 -m venv .venv
@@ -183,8 +245,12 @@ jobs:
183
245
localhost-test-win :
184
246
runs-on : windows-2022 # latest
185
247
steps :
248
+ - uses : aws-actions/configure-aws-credentials@v4
249
+ with :
250
+ role-to-assume : ${{ env.CRT_CI_ROLE }}
251
+ aws-region : ${{ env.AWS_DEFAULT_REGION }}
186
252
- name : Checkout
187
- uses : actions/checkout@v3
253
+ uses : actions/checkout@v4
188
254
- name : Build and test
189
255
run : |
190
256
python -c "from urllib.request import urlretrieve; urlretrieve('${{ env.BUILDER_HOST }}/${{ env.BUILDER_SOURCE }}/${{ env.BUILDER_VERSION }}/builder.pyz?run=${{ env.RUN }}', 'builder.pyz')"
0 commit comments