| # Configuration file for Travis continuous integration. |
| # |
| # 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. |
| # |
| --- |
| language: generic |
| |
| addons: |
| apt: |
| packages: |
| - openjdk-8-jdk |
| - unzip |
| sonarcloud: |
| organization: "kylin" |
| token: |
| secure: "2ca24e5a04ad1fca4ca956953810421aa8bd1470" |
| |
| cache: |
| directories: |
| - $HOME/.m2 |
| |
| jobs: |
| include: |
| - name: Linux ARM64 |
| arch: arm64-graviton2 |
| dist: focal |
| virt: vm |
| group: edge |
| - name: Linux x86 |
| arch: amd64 |
| |
| before_install: |
| - export JAVA_HOME="/usr/lib/jvm/java-8-openjdk-${TRAVIS_CPU_ARCH}"; |
| - export PATH="$JAVA_HOME/bin:$PATH"; |
| - echo "Downloading Maven 3.8.1" |
| - wget --quiet https://archive.apache.org/dist/maven/maven-3/3.8.1/binaries/apache-maven-3.8.1-bin.zip |
| - unzip -qq -o apache-maven-3.8.1-bin.zip |
| - export M2_HOME=$PWD/apache-maven-3.8.1 |
| - export PATH=$M2_HOME/bin:$PATH |
| - mvn -version |
| - echo "MAVEN_OPTS='-Xms1024m -Xmx3072m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=384m'" > ~/.mavenrc |
| - sed -i 's/log4j.logger.org.apache.kylin=DEBUG/log4j.logger.org.apache.kylin=WARN/g' build/conf/kylin-server-log4j.properties |
| - sed -i 's/log4j.logger.org.apache.kylin=INFO/log4j.logger.org.apache.kylin=WARN/g' build/conf/kylin-tools-log4j.properties |
| - sed -i 's/log4j.logger.org.apache.kylin=INFO/log4j.logger.org.apache.kylin=WARN/g' kylin-spark-project/build/conf/kylin-tools-log4j.properties |
| |
| - if [[ $(uname -m) == 'aarch64' ]];then export JAVA_HOME="/usr/lib/jvm/java-8-openjdk-arm64";fi |
| |
| script: |
| # mvn clean org.jacoco:jacoco-maven-plugin:prepare-agent test coveralls:report -e |
| # Skip coveralls temporarily, fix it asap |
| - mvn clean test -q -Psandbox -Pspark3 |
| - if [[ -n "${TRAVIS_PULL_REQUEST_SLUG}" && "${TRAVIS_PULL_REQUEST_SLUG}" != "${TRAVIS_REPO_SLUG}" ]]; then |
| echo "The pull request from ${TRAVIS_PULL_REQUEST_SLUG} is an EXTERNAL pull request. Skip sonar analysis."; |
| else |
| git fetch --unshallow --quiet; |
| mvn sonar:sonar -e -Dsonar.host.url=https://sonarcloud.io -Dsonar.login=2ca24e5a04ad1fca4ca956953810421aa8bd1470 -Dsonar.organization=kylin; |
| fi |
| |
| notification: |
| email: |
| recipients: |
| - dev@kylin.apache.org |
| on_failure: always |
| |
| after_success: |
| - bash <(curl -s https://codecov.io/bash) |
| |
| before_cache: |
| # Remove project's local artifacts to force maven reactor resolve |
| - rm -rf $HOME/.m2/repository/org/apache/kylin |
| |
| # blocklist |
| branches: |
| except: |
| - document |