Skip to content

Commit f5a33f8

Browse files
authored
chore: Add unit/slow/localmode and unit-test-v3 jobs to CI Health workflow (#5949)
* chore: Add unit/slow/localmode and unit-test-v3 jobs to CI Health workflow * chore: specify job version * chore: Split unit-test-v3 into per-submodule parallel CI Health projects Run each v3 submodule's unit tests in its own CodeBuild project (one worker each) so they execute in parallel instead of sequentially, keeping wall-clock time within the 3h timeout. Project names retain the unit-test-v3 substring so they reuse the existing UNIT_TEST_V3 metric/alarm definitions and fold into CIHealthCompositeAlarm. * chore: Drive v3 unit tests via SUBMODULE env var on a single CI Health project Mirror the v2 ci-unit-tests pattern: instead of four per-submodule projects, use one unit-test-v3 project parameterized by the SUBMODULE env var, triggered once per submodule by the workflow matrix so they still run in parallel. Also fix the v2 unit-tests job to pass PY_VERSION via a python-version matrix (matching pr-checks), instead of relying on an unset tox envlist.
1 parent a15a449 commit f5a33f8

1 file changed

Lines changed: 72 additions & 0 deletions

File tree

.github/workflows/ci-health.yml

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,3 +36,75 @@ jobs:
3636
with:
3737
project-name: sagemaker-python-sdk-ci-health-canaries-v2
3838
source-version: refs/heads/master-v2
39+
unit-tests-v2:
40+
runs-on: ubuntu-latest
41+
strategy:
42+
fail-fast: false
43+
matrix:
44+
python-version: ["py39", "py310", "py311", "py312"]
45+
steps:
46+
- name: Configure AWS Credentials
47+
uses: aws-actions/configure-aws-credentials@v4
48+
with:
49+
role-to-assume: ${{ secrets.CI_AWS_ROLE_ARN }}
50+
aws-region: us-west-2
51+
role-duration-seconds: 10800
52+
- name: Run Unit Tests (${{ matrix.python-version }})
53+
uses: aws-actions/aws-codebuild-run-build@v1
54+
with:
55+
project-name: sagemaker-python-sdk-ci-health-unit-tests
56+
source-version: refs/heads/master-v2
57+
env-vars-for-codebuild: |
58+
PY_VERSION
59+
env:
60+
PY_VERSION: ${{ matrix.python-version }}
61+
slow-tests-v2:
62+
runs-on: ubuntu-latest
63+
steps:
64+
- name: Configure AWS Credentials
65+
uses: aws-actions/configure-aws-credentials@v4
66+
with:
67+
role-to-assume: ${{ secrets.CI_AWS_ROLE_ARN }}
68+
aws-region: us-west-2
69+
role-duration-seconds: 10800
70+
- name: Run Slow Tests
71+
uses: aws-actions/aws-codebuild-run-build@v1
72+
with:
73+
project-name: sagemaker-python-sdk-ci-health-slow-tests
74+
source-version: refs/heads/master-v2
75+
localmode-tests-v2:
76+
runs-on: ubuntu-latest
77+
steps:
78+
- name: Configure AWS Credentials
79+
uses: aws-actions/configure-aws-credentials@v4
80+
with:
81+
role-to-assume: ${{ secrets.CI_AWS_ROLE_ARN }}
82+
aws-region: us-west-2
83+
role-duration-seconds: 10800
84+
- name: Run Local Mode Tests
85+
uses: aws-actions/aws-codebuild-run-build@v1
86+
with:
87+
project-name: sagemaker-python-sdk-ci-health-localmode-tests
88+
source-version: refs/heads/master-v2
89+
unit-test-v3:
90+
runs-on: ubuntu-latest
91+
strategy:
92+
fail-fast: false
93+
matrix:
94+
submodule: [sagemaker-core, sagemaker-train, sagemaker-serve, sagemaker-mlops]
95+
steps:
96+
- name: Configure AWS Credentials
97+
uses: aws-actions/configure-aws-credentials@v4
98+
with:
99+
role-to-assume: ${{ secrets.CI_AWS_ROLE_ARN }}
100+
aws-region: us-west-2
101+
role-duration-seconds: 10800
102+
- name: Run Unit Tests V3 for ${{ matrix.submodule }}
103+
uses: aws-actions/aws-codebuild-run-build@v1
104+
with:
105+
project-name: sagemaker-python-sdk-ci-health-unit-test-v3
106+
source-version: refs/heads/master
107+
env-vars-for-codebuild: |
108+
SUBMODULE
109+
env:
110+
SUBMODULE: ${{ matrix.submodule }}

0 commit comments

Comments
 (0)