diff --git a/.github/workflows/test-cm-based-submission-generation.yml b/.github/workflows/test-cm-based-submission-generation.yml index 68f46267a..4bd9d9430 100644 --- a/.github/workflows/test-cm-based-submission-generation.yml +++ b/.github/workflows/test-cm-based-submission-generation.yml @@ -19,12 +19,29 @@ jobs: python-version: [ "3.12" ] division: ["closed", "open", "closed-open"] category: ["datacenter", "edge"] - case: ["closed", "closed-no-compliance", "closed-power", "closed-failed-power-logs", "case-3", "case-7", "case-8"] + case: ["closed", "closed-no-compliance", "closed-power", "closed-failed-power-logs", "case-1", "case-2", "case-3", "case-5", "case-6", "case-7", "case-8"] action: ["run", "docker"] exclude: - os: macos-latest - os: windows-latest - category: "edge" + - case: case-1 + division: closed + - case: case-1 + division: closed-open + - case: case-2 + division: closed + - case: case-2 + division: closed-open + - case: case-5 + division: closed + - case: case-5 + division: closed-open + - case: case-6 + division: closed + - case: case-6 + division: closed-open + steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} @@ -39,6 +56,7 @@ jobs: run: | git clone -b submission-generation-tests https://github.com/mlcommons/inference.git submission_generation_tests - name: Run Submission Generation - ${{ matrix.case }} ${{ matrix.action }} ${{ matrix.category }} ${{ matrix.division }} + continue-on-error: true run: | if [ "${{ matrix.case }}" == "case-3" ]; then description="Submission generation (model_mapping.json not present but model name matches with official one)" @@ -63,5 +81,18 @@ jobs: # Dynamically set the log group to simulate a dynamic step name echo "::group::$description" cm ${{ matrix.action }} script --tags=generate,inference,submission --adr.submission-checker-src.tags=_branch.dev --clean --preprocess_submission=yes --results_dir=$PWD/submission_generation_tests/${{ matrix.case }}/ --run-checker --submitter=MLCommons --tar=yes --env.CM_TAR_OUTFILE=submission.tar.gz --division=${{ matrix.division }} --env.CM_DETERMINE_MEMORY_CONFIGURATION=yes --quiet $extra_run_args + exit_status=$? + echo "Exit status for the job ${description} ${exit_status}" + if [[ "${{ matrix.case }}" == "case-5" || "${{ matrix.case }}" == "case-6" ]]; then + # For cases 5 and 6, exit status should be 0 if cm command fails, 1 if it succeeds + if [[ ${exit_status} -ne 0 ]]; then + exit 0 + else + exit ${exit_status} + fi + else + # For other cases, exit with the original status + test ${exit_status} -eq 0 || exit ${exit_status} + fi echo "::endgroup::"