diff --git a/.github/workflows/run-e2e-tests.yml b/.github/workflows/run-e2e-tests.yml index 939bb5fab..0bf6da86e 100644 --- a/.github/workflows/run-e2e-tests.yml +++ b/.github/workflows/run-e2e-tests.yml @@ -20,6 +20,10 @@ jobs: permissions: id-token: write # needed to interact with GitHub's OIDC Token endpoint. contents: write + strategy: + matrix: + suite: [processing, storage, governance, utils] + fail-fast: false steps: - name: Checkout Repo uses: actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2 @@ -59,4 +63,4 @@ jobs: aws-region: eu-west-1 role-duration-seconds: 7200 - name: Run e2e tests - run: npx projen test:e2e \ No newline at end of file + run: npx jest --group=e2e/${{ matrix.suite }} \ No newline at end of file diff --git a/framework/test/e2e/data-catalog-database.e2e.test.ts b/framework/test/e2e/data-catalog-database.e2e.test.ts index 99010bf2d..7fa8fc8f2 100644 --- a/framework/test/e2e/data-catalog-database.e2e.test.ts +++ b/framework/test/e2e/data-catalog-database.e2e.test.ts @@ -10,7 +10,7 @@ import { DataCatalogDatabase } from '../../src/governance'; /** * E2E test for DataCatalogDatabase - * @group e2e/data-catalog-database + * @group e2e/governance/data-catalog-database */ jest.setTimeout(6000000); diff --git a/framework/test/e2e/data-lake-catalog.e2e.test.ts b/framework/test/e2e/data-lake-catalog.e2e.test.ts index c0a91a9be..dfa417e7c 100644 --- a/framework/test/e2e/data-lake-catalog.e2e.test.ts +++ b/framework/test/e2e/data-lake-catalog.e2e.test.ts @@ -8,7 +8,7 @@ import { DataLakeStorage } from '../../src/storage'; /** * E2E test for DataCatalogDatabase - * @group e2e/data-catalog-database + * @group e2e/governance/data-catalog-database */ jest.setTimeout(6000000); diff --git a/framework/test/e2e/data-lake-storage.e2e.test.ts b/framework/test/e2e/data-lake-storage.e2e.test.ts index 0f2097538..3d980eae7 100644 --- a/framework/test/e2e/data-lake-storage.e2e.test.ts +++ b/framework/test/e2e/data-lake-storage.e2e.test.ts @@ -8,7 +8,7 @@ import { BucketUtils } from '../../src/utils'; /** * E2E test for DataLakeStorage - * @group e2e/data-lake-storage + * @group e2e/storage/data-lake-storage */ jest.setTimeout(6000000); diff --git a/framework/test/e2e/pyspark-application-package.e2e.test.ts b/framework/test/e2e/pyspark-application-package.e2e.test.ts index dca0727ee..c00f4196d 100644 --- a/framework/test/e2e/pyspark-application-package.e2e.test.ts +++ b/framework/test/e2e/pyspark-application-package.e2e.test.ts @@ -8,7 +8,7 @@ import { PySparkApplicationPackage } from '../../src/processing'; /** * E2E test for PySparkApplicationPackage - * @group e2e/pyspark-application-package + * @group e2e/processing/pyspark-application-package */ jest.setTimeout(6000000); diff --git a/framework/test/e2e/s3-data-copy.e2e.test.ts b/framework/test/e2e/s3-data-copy.e2e.test.ts index 95500d65c..16379f574 100644 --- a/framework/test/e2e/s3-data-copy.e2e.test.ts +++ b/framework/test/e2e/s3-data-copy.e2e.test.ts @@ -8,7 +8,7 @@ import { S3DataCopy, Utils } from '../../src/utils'; /** * E2E test for S3DataCopy - * @group e2e/s3-data-copy + * @group e2e/utils/s3-data-copy */ jest.setTimeout(6000000); @@ -46,7 +46,7 @@ beforeAll(async() => { }, 900000); test(' S3DataCopy is created', async() => { - const regexPattern = /test-([a-z]+-\d+)-(\d+)-([a-z0-9]+)/; + const regexPattern = /test-[a-z]{2}-[a-z]+-[0-9]-[0-9]{12}-[a-z0-9]{8}/; expect(deployResult.Target).toMatch(regexPattern); }); diff --git a/framework/test/e2e/spark-cicd-pipeline.e2e.test.ts b/framework/test/e2e/spark-cicd-pipeline.e2e.test.ts index 69d40336b..3094c1331 100644 --- a/framework/test/e2e/spark-cicd-pipeline.e2e.test.ts +++ b/framework/test/e2e/spark-cicd-pipeline.e2e.test.ts @@ -4,7 +4,7 @@ /** * E2E test for SparkCICDPipeline * - * @group e2e/spark-cicd-pipeline + * @group e2e/processing/spark-cicd-pipeline */ import { RemovalPolicy, CfnOutput, Stack, StackProps, App } from 'aws-cdk-lib'; diff --git a/framework/test/e2e/spark-containers-runtime.e2e.test.ts b/framework/test/e2e/spark-containers-runtime.e2e.test.ts index b476f10af..c94f8c12e 100644 --- a/framework/test/e2e/spark-containers-runtime.e2e.test.ts +++ b/framework/test/e2e/spark-containers-runtime.e2e.test.ts @@ -4,7 +4,7 @@ /** * E2E test for SparkContainersRunime * - * @group e2e/spark-runtime-containers + * @group e2e/processing/spark-runtime-containers */ import { KubectlV27Layer } from '@aws-cdk/lambda-layer-kubectl-v27'; diff --git a/framework/test/e2e/spark-job.e2e.test.ts b/framework/test/e2e/spark-job.e2e.test.ts index cf4452e05..c1d460c7b 100644 --- a/framework/test/e2e/spark-job.e2e.test.ts +++ b/framework/test/e2e/spark-job.e2e.test.ts @@ -4,7 +4,7 @@ /** * E2E test for SparkJob * - * @group e2e/spark-job + * @group e2e/processing/spark-job */ import * as cdk from 'aws-cdk-lib'; diff --git a/framework/test/e2e/spark-serverless-runtime.e2e.test.ts b/framework/test/e2e/spark-serverless-runtime.e2e.test.ts index b9369cc0b..6a64d1c37 100644 --- a/framework/test/e2e/spark-serverless-runtime.e2e.test.ts +++ b/framework/test/e2e/spark-serverless-runtime.e2e.test.ts @@ -4,7 +4,7 @@ /** * E2E test for SparkServerlessRunime * - * @group e2e/spark-runtime-serverless + * @group e2e/processing/spark-runtime-serverless */ import { App, CfnOutput, RemovalPolicy } from 'aws-cdk-lib';