Unverified Commit c912b69f authored by John DiSanti's avatar John DiSanti Committed by GitHub
Browse files

Split codegen tests out into their own job (#1298)

parent 6e8c1d87
Loading
Loading
Loading
Loading
+35 −9
Original line number Diff line number Diff line
@@ -49,7 +49,6 @@ jobs:
      matrix:
        # These correspond to scripts in tools/ci-build/scripts that will be run in the Docker build image
        actions:
        - action: check-style-and-lints
        - action: generate-aws-sdk
        - action: generate-aws-sdk-smoketest
        - action: generate-smithy-rs-runtime-bundle
@@ -66,8 +65,39 @@ jobs:
      with:
        action: ${{ matrix.actions.action }}

  # Test the code generator and other parts (styles and lints) that don't require
  # code to have already been generated in order to run.
  test-codegen:
    name: Test Codegen
    needs:
    - acquire-base-image
    runs-on: ubuntu-latest
    # To avoid repeating setup boilerplate, we have the actual test commands
    # in a matrix strategy. These commands get run in the steps after all the setup.
    strategy:
      fail-fast: false
      matrix:
        # These correspond to scripts in tools/ci-build/scripts that will be run in the Docker build image
        test:
    name: Test
        - action: check-style-and-lints
        - action: check-client-codegen-integration-tests
        - action: check-client-codegen-unit-tests
        - action: check-sdk-codegen-unit-tests
        - action: check-server-codegen-integration-tests
        - action: check-server-codegen-unit-tests
    steps:
    - uses: actions/checkout@v3
      with:
        path: smithy-rs
    - name: Run ${{ matrix.test.action }}
      uses: ./smithy-rs/.github/actions/docker-build
      with:
        action: ${{ matrix.test.action }}

  # Test all the things that require generated code. Note: the Rust runtimes require codegen
  # to be checked since `aws-config` depends on the generated STS client.
  test-runtimes-tools-and-sdk:
    name: Test Rust Runtimes, Tools, and SDK
    needs:
    - acquire-base-image
    - generate
@@ -83,12 +113,7 @@ jobs:
        - action: check-aws-sdk-smoketest-additional-checks
        - action: check-aws-sdk-smoketest-docs-clippy-udeps
        - action: check-aws-sdk-smoketest-unit-tests
        - action: check-client-codegen-integration-tests
        - action: check-client-codegen-unit-tests
        - action: check-rust-runtimes-and-tools
        - action: check-sdk-codegen-unit-tests
        - action: check-server-codegen-integration-tests
        - action: check-server-codegen-unit-tests
    steps:
    - uses: actions/checkout@v3
      with:
@@ -150,7 +175,8 @@ jobs:
    # Should NOT depend on check-sdk-examples since that's an optional check
    needs:
    - generate
    - test
    - test-codegen
    - test-runtimes-tools-and-sdk
    - test-rust-windows
    # Run this job even if its dependency jobs fail
    if: always()