@@ -168,9 +168,33 @@ jobs:
168
168
with :
169
169
project-name : aws-sdk-java-v2-migration-test
170
170
171
- s3-regression-tests-download :
171
+ # Check if S3, HTTP client, or core modules have changed
172
+ check-s3-related-changes :
172
173
if : github.repository == 'aws/aws-sdk-java-v2'
173
174
runs-on : ubuntu-latest
175
+ outputs :
176
+ has_s3_related_changes : ${{ steps.check-changes.outputs.has_s3_related_changes }}
177
+ steps :
178
+ - uses : actions/checkout@v4
179
+ with :
180
+ fetch-depth : 0
181
+ - name : Check for changes related to s3
182
+ id : check-changes
183
+ run : |
184
+ git fetch origin ${{ github.base_ref }} --depth 1
185
+ CHANGED_FILES=$(git diff remotes/origin/${{ github.base_ref }} --name-only)
186
+ if echo "$CHANGED_FILES" | grep -q -E '^core/|^services/s3/|^services-custom/s3-transfer-manager/|^http-client-spi/|^http-clients/'; then
187
+ echo "Detected changes in S3, HTTP client, or core modules"
188
+ echo "has_s3_related_changes=true" >> $GITHUB_OUTPUT
189
+ else
190
+ echo "No changes detected in S3, HTTP client, or core modules"
191
+ echo "has_s3_related_changes=false" >> $GITHUB_OUTPUT
192
+ fi
193
+
194
+ s3-regression-tests-download :
195
+ needs : check-s3-related-changes
196
+ if : github.repository == 'aws/aws-sdk-java-v2' && needs.check-s3-related-changes.outputs.has_s3_related_changes == 'true'
197
+ runs-on : ubuntu-latest
174
198
env :
175
199
REGRESSION_TEST : DownloadStreamingRegressionTesting
176
200
steps :
@@ -186,7 +210,8 @@ jobs:
186
210
project-name : aws-sdk-java-v2-s3-regression-tests
187
211
env-vars-for-codebuild : REGRESSION_TEST
188
212
s3-regression-tests-control-plane :
189
- if : github.repository == 'aws/aws-sdk-java-v2'
213
+ needs : check-s3-related-changes
214
+ if : github.repository == 'aws/aws-sdk-java-v2' && needs.check-s3-related-changes.outputs.has_s3_related_changes == 'true'
190
215
runs-on : ubuntu-latest
191
216
env :
192
217
REGRESSION_TEST : ControlPlaneOperationRegressionTesting
@@ -203,7 +228,8 @@ jobs:
203
228
project-name : aws-sdk-java-v2-s3-regression-tests
204
229
env-vars-for-codebuild : REGRESSION_TEST
205
230
s3-regression-tests-upload-sync :
206
- if : github.repository == 'aws/aws-sdk-java-v2'
231
+ needs : check-s3-related-changes
232
+ if : github.repository == 'aws/aws-sdk-java-v2' && needs.check-s3-related-changes.outputs.has_s3_related_changes == 'true'
207
233
runs-on : ubuntu-latest
208
234
env :
209
235
REGRESSION_TEST : UploadSyncRegressionTesting
@@ -220,7 +246,8 @@ jobs:
220
246
project-name : aws-sdk-java-v2-s3-regression-tests
221
247
env-vars-for-codebuild : REGRESSION_TEST
222
248
s3-regression-tests-upload-async :
223
- if : github.repository == 'aws/aws-sdk-java-v2'
249
+ needs : check-s3-related-changes
250
+ if : github.repository == 'aws/aws-sdk-java-v2' && needs.check-s3-related-changes.outputs.has_s3_related_changes == 'true'
224
251
runs-on : ubuntu-latest
225
252
env :
226
253
REGRESSION_TEST : UploadAsyncRegressionTesting
@@ -237,7 +264,8 @@ jobs:
237
264
project-name : aws-sdk-java-v2-s3-regression-tests
238
265
env-vars-for-codebuild : REGRESSION_TEST
239
266
s3-regression-tests-upload-crt :
240
- if : github.repository == 'aws/aws-sdk-java-v2'
267
+ needs : check-s3-related-changes
268
+ if : github.repository == 'aws/aws-sdk-java-v2' && needs.check-s3-related-changes.outputs.has_s3_related_changes == 'true'
241
269
runs-on : ubuntu-latest
242
270
env :
243
271
REGRESSION_TEST : UploadCrtRegressionTesting
@@ -254,7 +282,8 @@ jobs:
254
282
project-name : aws-sdk-java-v2-s3-regression-tests
255
283
env-vars-for-codebuild : REGRESSION_TEST
256
284
s3-regression-tests-upload-multi :
257
- if : github.repository == 'aws/aws-sdk-java-v2'
285
+ needs : check-s3-related-changes
286
+ if : github.repository == 'aws/aws-sdk-java-v2' && needs.check-s3-related-changes.outputs.has_s3_related_changes == 'true'
258
287
runs-on : ubuntu-latest
259
288
env :
260
289
REGRESSION_TEST : UploadTransferManagerRegressionTesting
0 commit comments