[CI] Add integration test support (#357)

The `PulsarFunctionAdministrationIntegrationTests` was causing an OOM 
because it copies a large archive into memory in order to setup its 
testcontainers.

The unit tests running in parallel consume most of the available resources 
so we split the ITs into their own step in the workflow and all is happy.

This is also good to have support for integration tests in the project.
This commit is contained in:
Chris Bono
2023-02-20 13:17:51 -06:00
committed by GitHub
parent 23f99593c3
commit 39ba253161
29 changed files with 453 additions and 1871 deletions

View File

@@ -34,9 +34,13 @@ jobs:
env:
GRADLE_USER_HOME: ~/.gradle
- name: Run Gradle build
- name: Build and run unit tests
run: |
./gradlew clean build -DdownloadRabbitConnector=false --continue --scan
./gradlew clean build -x integrationTest --continue --scan
- name: Run integration tests
run: |
./gradlew integrationTest --rerun-tasks -DdownloadRabbitConnector=true --scan
- name: Capture Test Results
if: failure()

View File

@@ -39,9 +39,12 @@ jobs:
uses: gradle/gradle-build-action@v2
env:
GRADLE_USER_HOME: ~/.gradle
- name: Run Gradle build
- name: Build and run unit tests
run: |
./gradlew clean build -DdownloadRabbitConnector=false --continue -PartifactoryUsername="$ARTIFACTORY_USERNAME" -PartifactoryPassword="$ARTIFACTORY_PASSWORD"
./gradlew clean build -x integrationTest --continue --scan -PartifactoryUsername="$ARTIFACTORY_USERNAME" -PartifactoryPassword="$ARTIFACTORY_PASSWORD"
- name: Run integration tests
run: |
./gradlew integrationTest --rerun-tasks -DdownloadRabbitConnector=true --scan
- name: Capture test results
if: failure()
uses: actions/upload-artifact@v3