This is an automated email from the ASF dual-hosted git repository.

xiangfu pushed a commit to branch adding_github_actions
in repository https://gitbox.apache.org/repos/asf/incubator-pinot.git

commit a4eb0607cfc005cf28f084a25f623975ffddacf3
Author: Xiang Fu <fx19880...@gmail.com>
AuthorDate: Sat Jun 6 17:37:14 2020 -0700

    Adding github actions for pinot tests
---
 .github/workflows/pinot_tests.yml        | 55 ++++++++++++++++++++++
 .github/workflows/scripts/.pinot_test.sh | 80 ++++++++++++++++++++++++++++++++
 2 files changed, 135 insertions(+)

diff --git a/.github/workflows/pinot_tests.yml 
b/.github/workflows/pinot_tests.yml
new file mode 100644
index 0000000..efb3b1b
--- /dev/null
+++ b/.github/workflows/pinot_tests.yml
@@ -0,0 +1,55 @@
+#
+# 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.
+#
+
+name: Pinot Tests
+
+on:
+  push:
+    branches: [ master, adding_github_actions ]
+  pull_request:
+    branches: [ master ]
+
+jobs:
+  unit-test:
+    runs-on: ubuntu-latest
+    steps:
+    - uses: actions/checkout@v2
+    - name: Set up JDK 1.8
+      uses: actions/setup-java@v1
+      with:
+        java-version: 1.8
+    - name: Unit Test
+      env:
+        - RUN_INTEGRATION_TESTS: false
+        - GITHUB_CONTEXT: ${{ toJson(github) }}
+      run: .github/workflows/scripts/.pinot_test.sh
+
+  integration-test:
+    runs-on: ubuntu-latest
+    steps:
+    - uses: actions/checkout@v2
+    - name: Set up JDK 1.8
+      uses: actions/setup-java@v1
+      with:
+        java-version: 1.8
+    - name: Integration Test
+      env:
+        - RUN_INTEGRATION_TESTS: true
+        - GITHUB_CONTEXT: ${{ toJson(github) }}
+      run: .github/workflows/scripts/.pinot_test.sh
diff --git a/.github/workflows/scripts/.pinot_test.sh 
b/.github/workflows/scripts/.pinot_test.sh
new file mode 100755
index 0000000..38a1dff
--- /dev/null
+++ b/.github/workflows/scripts/.pinot_test.sh
@@ -0,0 +1,80 @@
+#!/bin/bash -x
+#
+# 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.
+#
+
+# ThirdEye related changes
+echo $GITHUB_EVENT_PATH
+echo $GITHUB_EVENT_PATH | jq ".before"
+git diff --name-only $TRAVIS_COMMIT_RANGE | egrep '^(thirdeye)'
+if [ $? -eq 0 ]; then
+  echo 'ThirdEye changes.'
+
+  if [ "$TRAVIS_JDK_VERSION" != 'oraclejdk8' ]; then
+    echo 'Skip ThirdEye tests for version other than oracle jdk8.'
+    exit 0
+  fi
+
+  if [ "RUN_INTEGRATION_TESTS" == 'false' ]; then
+    echo 'Skip ThirdEye tests when integration tests off'
+    exit 0
+  fi
+
+  cd thirdeye
+  mvn test -B ${DEPLOY_BUILD_OPTS}
+  failed=$?
+  if [ $failed -eq 0 ]; then
+    exit 0
+  else
+    exit 1
+  fi
+fi
+
+# Only run tests for JDK 8
+if [ "$TRAVIS_JDK_VERSION" != 'oraclejdk8' ]; then
+  echo 'Skip tests for version other than oracle jdk8.'
+  exit 0
+fi
+
+passed=0
+
+KAFKA_BUILD_OPTS=""
+if [ "$KAFKA_VERSION" != '2.0' ] && [ "$KAFKA_VERSION" != '' ]; then
+  KAFKA_BUILD_OPTS="-Dkafka.version=${KAFKA_VERSION}"
+fi
+
+# Only run integration tests if needed
+if [ "$RUN_INTEGRATION_TESTS" != 'false' ]; then
+  mvn test -B -P travis,travis-integration-tests-only ${DEPLOY_BUILD_OPTS} 
${KAFKA_BUILD_OPTS}
+  if [ $? -eq 0 ]; then
+    passed=1
+  fi
+else
+  mvn test -B -P travis,travis-no-integration-tests ${DEPLOY_BUILD_OPTS} 
${KAFKA_BUILD_OPTS}
+  if [ $? -eq 0 ]; then
+    passed=1
+  fi
+fi
+
+if [ $passed -eq 1 ]; then
+  # Only send code coverage data if passed
+  bash <(cat .codecov_bash)
+  exit 0
+else
+  exit 1
+fi


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org
For additional commands, e-mail: commits-h...@pinot.apache.org

Reply via email to