Skip to content

Commit 7ecdab0

Browse files
committed
only run s3 regression tests when detecting changes to s3 related modules
1 parent 4bf8e38 commit 7ecdab0

File tree

1 file changed

+35
-6
lines changed

1 file changed

+35
-6
lines changed

.github/workflows/codebuild-ci.yml

Lines changed: 35 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -168,9 +168,33 @@ jobs:
168168
with:
169169
project-name: aws-sdk-java-v2-migration-test
170170

171-
s3-regression-tests-download:
171+
# Check if S3, HTTP client, or core modules have changed
172+
check-s3-related-changes:
172173
if: github.repository == 'aws/aws-sdk-java-v2'
173174
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
174198
env:
175199
REGRESSION_TEST: DownloadStreamingRegressionTesting
176200
steps:
@@ -186,7 +210,8 @@ jobs:
186210
project-name: aws-sdk-java-v2-s3-regression-tests
187211
env-vars-for-codebuild: REGRESSION_TEST
188212
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'
190215
runs-on: ubuntu-latest
191216
env:
192217
REGRESSION_TEST: ControlPlaneOperationRegressionTesting
@@ -203,7 +228,8 @@ jobs:
203228
project-name: aws-sdk-java-v2-s3-regression-tests
204229
env-vars-for-codebuild: REGRESSION_TEST
205230
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'
207233
runs-on: ubuntu-latest
208234
env:
209235
REGRESSION_TEST: UploadSyncRegressionTesting
@@ -220,7 +246,8 @@ jobs:
220246
project-name: aws-sdk-java-v2-s3-regression-tests
221247
env-vars-for-codebuild: REGRESSION_TEST
222248
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'
224251
runs-on: ubuntu-latest
225252
env:
226253
REGRESSION_TEST: UploadAsyncRegressionTesting
@@ -237,7 +264,8 @@ jobs:
237264
project-name: aws-sdk-java-v2-s3-regression-tests
238265
env-vars-for-codebuild: REGRESSION_TEST
239266
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'
241269
runs-on: ubuntu-latest
242270
env:
243271
REGRESSION_TEST: UploadCrtRegressionTesting
@@ -254,7 +282,8 @@ jobs:
254282
project-name: aws-sdk-java-v2-s3-regression-tests
255283
env-vars-for-codebuild: REGRESSION_TEST
256284
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'
258287
runs-on: ubuntu-latest
259288
env:
260289
REGRESSION_TEST: UploadTransferManagerRegressionTesting

0 commit comments

Comments
 (0)