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 0950e41e87e7603db91dce7cd2940ead8075bfcf
Author: Xiang Fu <[email protected]>
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 | 79 ++++++++++++++++++++++++++++++++
 2 files changed, 134 insertions(+)

diff --git a/.github/workflows/pinot_tests.yml 
b/.github/workflows/pinot_tests.yml
new file mode 100644
index 0000000..a31f21a
--- /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..4ec09a4
--- /dev/null
+++ b/.github/workflows/scripts/.pinot_test.sh
@@ -0,0 +1,79 @@
+#!/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
+printenv
+cat "${GITHUB_EVENT_PATH}"
+COMMIT_BEFORE=$(jq -r ".before" "${GITHUB_EVENT_PATH}")
+COMMIT_AFTER=$(jq -r ".after" "${GITHUB_EVENT_PATH}")
+echo "${COMMIT_BEFORE}"
+echo "${COMMIT_AFTER}"
+git diff --name-only "${COMMIT_BEFORE}" "${COMMIT_AFTER}" | grep -E 
'^(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
+  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
+
+# Only run integration tests if needed
+if [ "$RUN_INTEGRATION_TESTS" != 'false' ]; then
+  mvn test -B -P travis,travis-integration-tests-only
+  if [ $? -eq 0 ]; then
+    passed=1
+  fi
+else
+  mvn test -B -P travis,travis-no-integration-tests
+  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: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to