This is an automated email from the ASF dual-hosted git repository. dongjoon pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/spark.git
The following commit(s) were added to refs/heads/master by this push: new 86a387737eb6 [SPARK-47066][INFRA] Add `Apple Silicon` Maven build test to GitHub Action CI 86a387737eb6 is described below commit 86a387737eb6e480f305a62c2f9d8e5cab0503ac Author: Dongjoon Hyun <dh...@apple.com> AuthorDate: Thu Feb 15 14:21:35 2024 -0800 [SPARK-47066][INFRA] Add `Apple Silicon` Maven build test to GitHub Action CI ### What changes were proposed in this pull request? This PR aims to add a new maven build test pipeline on `Apple Silicon and MacOS 14` environment. ### Why are the changes needed? To have a test coverage. ### Does this PR introduce _any_ user-facing change? No. ### How was this patch tested? Pass the CIs. It passed already. ![Screenshot 2024-02-15 at 12 14 15](https://github.com/apache/spark/assets/9700541/814880d6-78ba-478d-963d-30c1a814016c) ![Screenshot 2024-02-15 at 12 24 52](https://github.com/apache/spark/assets/9700541/5def455a-8130-43bc-9a66-5d395dce0dac) ### Was this patch authored or co-authored using generative AI tooling? No. Closes #45126 from dongjoon-hyun/SPARK-47066. Authored-by: Dongjoon Hyun <dh...@apple.com> Signed-off-by: Dongjoon Hyun <dh...@apple.com> --- .github/workflows/build_and_test.yml | 56 ++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index 43903d139d1f..605c2a0aea1a 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -848,6 +848,62 @@ jobs: ./build/mvn $MAVEN_CLI_OPTS -DskipTests -Pyarn -Pkubernetes -Pvolcano -Phive -Phive-thriftserver -Phadoop-cloud -Djava.version=${JAVA_VERSION/-ea} install rm -rf ~/.m2/repository/org/apache/spark + apple-silicon: + needs: precondition + if: fromJson(needs.precondition.outputs.required).build == 'true' + name: Apple Silicon build with Maven + strategy: + fail-fast: false + matrix: + java: + - 21 + runs-on: macos-14 + timeout-minutes: 300 + steps: + - name: Checkout Spark repository + uses: actions/checkout@v4 + with: + fetch-depth: 0 + repository: apache/spark + ref: ${{ inputs.branch }} + - name: Sync the current branch with the latest in Apache Spark + if: github.repository != 'apache/spark' + run: | + git fetch https://github.com/$GITHUB_REPOSITORY.git ${GITHUB_REF#refs/heads/} + git -c user.name='Apache Spark Test Account' -c user.email='sparktest...@gmail.com' merge --no-commit --progress --squash FETCH_HEAD + git -c user.name='Apache Spark Test Account' -c user.email='sparktest...@gmail.com' commit -m "Merged commit" --allow-empty + - name: Cache Scala, SBT and Maven + uses: actions/cache@v4 + with: + path: | + build/apache-maven-* + build/scala-* + build/*.jar + ~/.sbt + key: build-${{ hashFiles('**/pom.xml', 'project/build.properties', 'build/mvn', 'build/sbt', 'build/sbt-launch-lib.bash', 'build/spark-build-info') }} + restore-keys: | + apple-silicon-build- + - name: Cache Maven local repository + uses: actions/cache@v4 + with: + path: ~/.m2/repository + key: java${{ matrix.java }}-maven-${{ hashFiles('**/pom.xml') }} + restore-keys: | + apple-silicon-${{ matrix.java }}-maven- + - name: Install Java ${{ matrix.java }} + uses: actions/setup-java@v4 + with: + distribution: zulu + java-version: ${{ matrix.java }} + - name: Build with Maven + run: | + export MAVEN_OPTS="-Xss64m -Xmx2g -XX:ReservedCodeCacheSize=1g -Dorg.slf4j.simpleLogger.defaultLogLevel=WARN" + export MAVEN_CLI_OPTS="--no-transfer-progress" + export JAVA_VERSION=${{ matrix.java }} + # It uses Maven's 'install' intentionally, see https://github.com/apache/spark/pull/26414. + ./build/mvn $MAVEN_CLI_OPTS -DskipTests -Pyarn -Pkubernetes -Pvolcano -Phive -Phive-thriftserver -Phadoop-cloud -Djava.version=${JAVA_VERSION/-ea} install + rm -rf ~/.m2/repository/org/apache/spark + # Any TPC-DS related updates on this job need to be applied to tpcds-1g-gen job of benchmark.yml as well tpcds-1g: needs: precondition --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@spark.apache.org For additional commands, e-mail: commits-h...@spark.apache.org