diff --git a/.github/actions/java-test/action.yaml b/.github/actions/java-test/action.yaml new file mode 100644 index 0000000000..dd45ab8d62 --- /dev/null +++ b/.github/actions/java-test/action.yaml @@ -0,0 +1,43 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +runs: + using: "composite" + steps: + - name: Run cargo build + shell: bash + run: | + cd core + cargo build + + - name: Cache Maven dependencies + uses: actions/cache@v4 + with: + path: ~/.m2/repository + key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} + restore-keys: | + ${{ runner.os }}-maven- + + - name: Run Maven compile + shell: bash + run: | + ./mvnw compile test-compile scalafix:scalafix -Psemanticdb + + - name: Run tests + shell: bash + run: | + SPARK_HOME=`pwd` ./mvnw clean install diff --git a/.github/workflows/pr_build.yml b/.github/workflows/pr_build.yml index fd5a532a92..93cd61b7ff 100644 --- a/.github/workflows/pr_build.yml +++ b/.github/workflows/pr_build.yml @@ -97,27 +97,12 @@ jobs: with: rust-version: nightly jdk-version: ${{env.JAVA_VERSION}} + architecture: x64 - - name: Run cargo build - run: | - cd core - cargo build - - - name: Cache Maven dependencies - uses: actions/cache@v4 - with: - path: ~/.m2/repository - key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} - restore-keys: | - ${{ runner.os }}-maven- - - - name: Run Maven compile - run: | - ./mvnw compile test-compile scalafix:scalafix -Psemanticdb + - uses: actions/checkout@v4 + - name: Java test steps + uses: ./.github/actions/java-test - - name: Run tests - run: | - SPARK_HOME=`pwd` ./mvnw clean install macos-rust-test: name: Rust test (macos) @@ -177,26 +162,9 @@ jobs: jdk-version: ${{env.JAVA_VERSION}} architecture: x64 - - name: Run cargo build - run: | - cd core - cargo build - - - name: Cache Maven dependencies - uses: actions/cache@v4 - with: - path: ~/.m2/repository - key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} - restore-keys: | - ${{ runner.os }}-maven- - - - name: Run Maven compile - run: | - ./mvnw compile test-compile scalafix:scalafix -Psemanticdb - - - name: Run tests - run: | - SPARK_HOME=`pwd` ./mvnw clean install + - uses: actions/checkout@v4 + - name: Java test steps + uses: ./.github/actions/java-test macos-aarch64-rust-test: name: Rust test (macos-aarch64) @@ -256,23 +224,6 @@ jobs: jdk-version: ${{env.JAVA_VERSION}} architecture: aarch64 - - name: Run cargo build - run: | - cd core - cargo build - - - name: Cache Maven dependencies - uses: actions/cache@v4 - with: - path: ~/.m2/repository - key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} - restore-keys: | - ${{ runner.os }}-maven- - - - name: Run Maven compile - run: | - ./mvnw compile test-compile scalafix:scalafix -Psemanticdb - - - name: Run tests - run: | - SPARK_HOME=`pwd` ./mvnw clean install + - uses: actions/checkout@v4 + - name: Java test steps + uses: ./.github/actions/java-test