kyuubi/.github/workflows/master.yml
Kent Yao 2e3315867b
[KYUUBI #298]Add Support for Apache Spark 3.1.1
![yaooqinn](https://badgen.net/badge/Hello/yaooqinn/green) [![Closes #366](https://badgen.net/badge/Preview/Closes%20%23366/blue)](https://github.com/yaooqinn/kyuubi/pull/366) ![359](https://badgen.net/badge/%2B/359/red) ![58](https://badgen.net/badge/-/58/green) ![17](https://badgen.net/badge/commits/17/yellow) ![Feature](https://badgen.net/badge/Label/Feature/) [&#10088;?&#10089;](https://pullrequestbadge.com/?utm_medium=github&utm_source=yaooqinn&utm_campaign=badge_info)<!-- PR-BADGE: PLEASE DO NOT REMOVE THIS COMMENT -->

<!--
Thanks for sending a pull request!

Here are some tips for you:
  1. If this is your first time, please read our contributor guidelines: https://kyuubi.readthedocs.io/en/latest/community/contributions.html
  2. If the PR is related to an issue in https://github.com/yaooqinn/kyuubi/issues, add '[KYUUBI #XXXX]' in your PR title, e.g., '[KYUUBI #XXXX] Your PR title ...'.
  3. If the PR is unfinished, add '[WIP]' in your PR title, e.g., '[WIP][KYUUBI #XXXX] Your PR title ...'.
-->

### _Why are the changes needed?_
<!--
Please clarify why the changes are needed. For instance,
  1. If you add a feature, you can talk about the use case of it.
  2. If you fix a bug, you can clarify why it is a bug.
-->

Spark 3.1.1 released, it looks more stable than the first minor release of Spark 3.x, and a lot of great features were involved.

In this PR, I add a profile for `spark-3.1.1` support, and temporary we only support `hadoop2.7`

TODOS:
- Add Hadoop 3.2 support with some dependency issues
- Enable Iceberg tests for spark-3.1.1 after Apache iceberg‘s next release
- Using spark-3.1.1 as default
- Restore HiveResult string?

fix #298
### _How was this patch tested?_
- [x] Add some test cases that check the changes thoroughly including negative and positive cases if possible

- [ ] Add screenshots for manual tests if appropriate

- [x] [Run test](https://kyuubi.readthedocs.io/en/latest/tools/testing.html#running-tests) locally before make a pull request

Closes #366 from yaooqinn/spark3.1.

28ddf93 [Kent Yao] ga
37cb49e [Kent Yao] Merge branch 'master' into spark3.1
7b332ec [Kent Yao] typo
b6b33d5 [Kent Yao] set up ga
00005c0 [Kent Yao] set up travis
2c09fe4 [Kent Yao] test fix
68c7edb [Kent Yao] deps
2c65e98 [Kent Yao] deps
236c7e9 [Kent Yao] nit
8c8a783 [Kent Yao] Merge branch 'master' into spark3.1
46c318a [Kent Yao] nit
32f6511 [Kent Yao] Merge branch 'master' into spark3.1
27c836b [Kent Yao] Merge branch 'master' into spark3.1
5574a8e [Kent Yao] ga
d2ec2d5 [Kent Yao] [WIP]Spark3.1
49313cc [Kent Yao] [WIP]Travis
ccb1a97 [Kent Yao] [WIP]Spark3.1

Authored-by: Kent Yao <yao@apache.org>
Signed-off-by: Kent Yao <yao@apache.org>
2021-03-04 13:30:05 +08:00

88 lines
2.7 KiB
YAML

name: Kyuubi
on:
push:
branches:
- master
- branch-*
pull_request:
branches:
- master
- branch-*
jobs:
build:
name: Build
runs-on: ubuntu-latest
strategy:
matrix:
profiles:
- '-Pspark-3.0 -Phadoop-2.7'
- '-Pspark-3.1 -Phadoop-2.7'
steps:
- uses: actions/checkout@v2
- name: Setup JDK 1.8
uses: actions/setup-java@v1
with:
java-version: '1.8'
- uses: actions/cache@v1
with:
path: ~/.m2/repository/com
key: ${{ runner.os }}-maven-com-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-com-
- uses: actions/cache@v1
with:
path: ~/.m2/repository/org
key: ${{ runner.os }}-maven-org-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-org-
- uses: actions/cache@v1
with:
path: ~/.m2/repository/net
key: ${{ runner.os }}-maven-net-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-net-
- uses: actions/cache@v1
with:
path: ~/.m2/repository/io
key: ${{ runner.os }}-maven-io-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-io-
- name: Build with Maven
run: |
mvn clean install ${{ matrix.profiles }} -Dmaven.javadoc.skip=true -B -V
bash <(curl -s https://codecov.io/bash)
- name: Collect unit tests log
run: |
mv kyuubi-common/target/unit-tests.log kyuubi-common_unit-tests.log
mv kyuubi-main/target/unit-tests.log kyuubi-main_unit-tests.log
- name: Upload unit tests log
uses: actions/upload-artifact@v2
with:
name: unit-tests-log
path: |
kyuubi-common_unit-tests.log
kyuubi-main_unit-tests.log
retention-days: 30
# - name: Codecov kyuubi-common
# uses: codecov/codecov-action@v1
# with:
# file: ./kyuubi-common/target/codecov/jacoco.xml
# flags: kyuubi-common
# - name: Codecov kyuubi-ha
# uses: codecov/codecov-action@v1
# with:
# file: ./kyuubi-ha/target/codecov/jacoco.xml
# flags: kyuubi-ha
# - name: Codecov kyuubi-spark-sql-engine
# uses: codecov/codecov-action@v1
# with:
# file: ./externals/kyuubi-spark-sql-engine/target/codecov/jacoco.xml
# flags: kyuubi-spark-sql-engine
# - name: Codecov kyuubi-main
# uses: codecov/codecov-action@v1
# with:
# file: ./kyuubi-main/target/codecov/jacoco.xml
# flags: kyuubi-main