-
Notifications
You must be signed in to change notification settings - Fork 392
76 lines (67 loc) · 3 KB
/
spark-integration-test-action.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
name: Spark Integration Test Action
# run spark integration test
on:
workflow_call:
inputs:
architecture:
required: true
description: 'Architecture of the platform'
type: string
java-version:
required: true
description: 'Java version'
type: string
scala-version:
required: true
description: 'Scala version'
type: string
test-mode:
required: true
description: 'run on embedded or deploy mode'
type: string
jobs:
start-runner:
name: JDK${{ inputs.java-version }}-${{ inputs.test-mode }}-Scala${{ inputs.scala-version }}
runs-on: ubuntu-latest
timeout-minutes: 60
env:
PLATFORM: ${{ inputs.architecture }}
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v4
with:
java-version: ${{ inputs.java-version }}
distribution: 'temurin'
cache: 'gradle'
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Check required command
run: |
dev/ci/check_commands.sh
- name: Package Gravitino
if: ${{ inputs.test-mode == 'deploy' }}
run: |
./gradlew compileDistribution -x test -PjdkVersion=${{ inputs.java-version }}
- name: Free up disk space
run: |
dev/ci/util_free_space.sh
- name: Spark Integration Test
id: integrationTest
run: |
if [ "${{ inputs.scala-version }}" == "2.12" ];then
./gradlew -PskipTests -PtestMode=${{ inputs.test-mode }} -PjdkVersion=${{ inputs.java-version }} -PscalaVersion=${{ inputs.scala-version }} -PskipDockerTests=false :spark-connector:spark-3.3:test --tests "org.apache.gravitino.spark.connector.integration.test.**"
fi
./gradlew -PskipTests -PtestMode=${{ inputs.test-mode }} -PjdkVersion=${{ inputs.java-version }} -PscalaVersion=${{ inputs.scala-version }} -PskipDockerTests=false :spark-connector:spark-3.4:test --tests "org.apache.gravitino.spark.connector.integration.test.**"
./gradlew -PskipTests -PtestMode=${{ inputs.test-mode }} -PjdkVersion=${{ inputs.java-version }} -PscalaVersion=${{ inputs.scala-version }} -PskipDockerTests=false :spark-connector:spark-3.5:test --tests "org.apache.gravitino.spark.connector.integration.test.**"
- name: Upload integrate tests reports
uses: actions/upload-artifact@v3
if: ${{ (failure() && steps.integrationTest.outcome == 'failure') || contains(github.event.pull_request.labels.*.name, 'upload log') }}
with:
name: spark-connector-integrate-test-reports-${{ inputs.java-version }}-${{ inputs.test-mode }}
path: |
build/reports
spark-connector/v3.3/spark/build/spark-3.3-integration-test.log
spark-connector/v3.4/spark/build/spark-3.4-integration-test.log
spark-connector/v3.5/spark/build/spark-3.5-integration-test.log
distribution/package/logs/*.out
distribution/package/logs/*.log