diff --git a/.github/workflows/ci_test_latest_released_mpl_java.yml b/.github/workflows/ci_test_latest_released_mpl_java.yml deleted file mode 100644 index 0bf6aa261..000000000 --- a/.github/workflows/ci_test_latest_released_mpl_java.yml +++ /dev/null @@ -1,129 +0,0 @@ -# This workflow is for testing that the latest released version -# of the MPL is compatible with the current DB-ESDK Head -name: Test Latest Released MPL Java with DB-ESDK HEAD - -on: - schedule: - - cron: "00 16 * * 1-5" - workflow_dispatch: # allows triggering this manually through the Actions UI - inputs: - run_test_vectors: - description: "Run Test Vectors?" - required: false - default: true - type: boolean - -jobs: - getVersion: - # Don't run the cron builds on forks - if: github.event_name != 'schedule' || github.repository_owner == 'aws' - uses: ./.github/workflows/dafny_version.yml - getVerifyVersion: - if: github.event_name != 'schedule' || github.repository_owner == 'aws' - uses: ./.github/workflows/dafny_verify_version.yml - getMplDependencyJavaVersion: - if: github.event_name != 'schedule' || github.repository_owner == 'aws' - uses: ./.github/workflows/mpl_dependency_java_version.yml - testJava: - needs: [getVersion, getMplDependencyJavaVersion] - strategy: - max-parallel: 1 - matrix: - java-version: [17] - os: [ubuntu-22.04] - runs-on: ${{ matrix.os }} - permissions: - id-token: write - contents: read - steps: - - name: Configure AWS Credentials - uses: aws-actions/configure-aws-credentials@v5 - with: - aws-region: us-west-2 - role-to-assume: arn:aws:iam::370957321024:role/GitHub-CI-DDBEC-Dafny-Role-us-west-2 - role-session-name: DDBEC-Dafny-Java-Tests - - - uses: actions/checkout@v5 - with: - submodules: recursive - - - name: Setup Java ${{ matrix.java-version }} - uses: actions/setup-java@v5 - with: - distribution: "corretto" - java-version: ${{ matrix.java-version }} - - - name: Setup Dafny - uses: ./submodules/MaterialProviders/.github/actions/setup_dafny/ - with: - dafny-version: ${{ needs.getVersion.outputs.version }} - - - name: Install Smithy-Dafny codegen dependencies - uses: ./.github/actions/install_smithy_dafny_codegen_dependencies - - - name: Regenerate code using smithy-dafny if necessary - if: ${{ inputs.regenerate-code }} - uses: ./.github/actions/polymorph_codegen - with: - dafny: ${{ env.DAFNY_VERSION }} - library: DynamoDbEncryption - diff-generated-code: false - update-and-regenerate-mpl: true - - # The following two steps: "Build and deploy to maven local" and "Run Extensive Tests" - # mimic the tests in ./codebuild/staging/release-staging.yml - - name: Build and deploy to maven local - shell: bash - working-directory: ./DynamoDbEncryption - run: | - # Run transpile by itself. We don't want to locally build the MPL because - # we want to verify that the version pulled down from maven works correctly - make transpile_implementation_java - make transpile_test_java - make mvn_local_deploy - make test_java - - - name: Run Extensive Tests - working-directory: ./DynamoDbEncryption - run: | - gradle -p runtimes/java clean - gradle -p runtimes/java test - - # This makes sure that we are using the correct MPL version to test the DB-ESDK. - # If this contains a SNAPSHOT version, this will fail because' - # we are NOT building the MPL recursively but pulling from Maven. - - name: Update project.properties to use the correct MPL version (from project.properties in DB-ESDK) - working-directory: ./submodules/MaterialProviders/ - run: | - sed "s/mplVersion=.*/mplVersion=${{needs.getMplDependencyJavaVersion.outputs.version}}/g" project.properties > project.properties2; mv project.properties2 project.properties - - # The following three steps: "Transpile MPL Test Vectors without recursively building the MPL", - # "Run Test Vectors", and "Test Examples" mimic the tests in ./codebuild/staging/validate-staging.yml - - name: Transpile MPL Test Vectors without recursively building the MPL - working-directory: ./submodules/MaterialProviders/TestVectorsAwsCryptographicMaterialProviders - run: | - # Run transpile by itself. We don't want to locally build the MPL because - # we want to verify that the version pulled down from maven works correctly - make transpile_implementation_java - make transpile_test_java - make mvn_local_deploy - - - name: Run Test Vectors - if: github.event_name == 'schedule' || (github.event_name == 'workflow_dispatch' && ${{inputs.run_test_vectors}}) - working-directory: ./TestVectors - run: | - # Spin up ddb local - docker run --name dynamodb -d -p 8000:8000 amazon/dynamodb-local -jar DynamoDBLocal.jar -port 8000 -inMemory -cors * - # Run transpile by itself so we don't locally build the MPL. - make transpile_implementation_java - make transpile_test_java - gradle -p runtimes/java runTests - - - name: Test Examples - working-directory: ./Examples - run: | - # Run Simple Examples - gradle -p runtimes/java/DynamoDbEncryption test - # Run Migration Examples - gradle -p runtimes/java/Migration/PlaintextToAWSDBE test - gradle -p runtimes/java/Migration/DDBECToAWSDBE test