Repository: mahout Updated Branches: refs/heads/master 98be68ac7 -> eae79da4c
MAHOUT-1965 Multiple Spark Builds in TravisCI closes apache/mahout#303 Project: http://git-wip-us.apache.org/repos/asf/mahout/repo Commit: http://git-wip-us.apache.org/repos/asf/mahout/commit/eae79da4 Tree: http://git-wip-us.apache.org/repos/asf/mahout/tree/eae79da4 Diff: http://git-wip-us.apache.org/repos/asf/mahout/diff/eae79da4 Branch: refs/heads/master Commit: eae79da4c2642a195a63462f8781e56600c1295e Parents: 98be68a Author: rawkintrevo <[email protected]> Authored: Fri Apr 21 17:09:27 2017 -0500 Committer: rawkintrevo <[email protected]> Committed: Fri Apr 21 17:09:27 2017 -0500 ---------------------------------------------------------------------- .travis.yml | 76 +++++++++++++++++++++++++++++++++++++++++++++++++------- runtests.sh | 45 --------------------------------- 2 files changed, 67 insertions(+), 54 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/mahout/blob/eae79da4/.travis.yml ---------------------------------------------------------------------- diff --git a/.travis.yml b/.travis.yml index 36653d7..3846b5d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,22 @@ +# 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. + sudo: required +dist: trusty + cache: directories: - $HOME/.m2 @@ -12,11 +29,53 @@ branches: only: - master +env: + global: + - JAVA_OPTS=-Xmx3g + # exclude these modules + - EXCLUDE_MODULES='!flink' + - TEST_MODULES="hdfs,math,math-scala,spark" + - STANDARD_BUILD_OPTS="-Dmaven.javadoc.skip=true -B -V" + - PROFILES="-Phadoop2 -Ptravis" + # The file assumes a certain build order for the maven / nightly build deployments. matrix: include: + # Build Spark 1.6.3 , Scala 2.10 + - jdk: "oraclejdk7" + env: PROFILES="${PROFILES}" + + # Build Spark 2.0.2 , Scala 2.11 - replace -D... with profiles when available + - jdk: "oraclejdk7" + env: PROFILES="${PROFILES} -Dspark.version=2.0.2 -Dscala.version=2.11.8 -Dscala.compat.version=2.11" + + # Build Spark 2.1.0 , Scala 2.11 - replace -D... with profiles when available - jdk: "oraclejdk7" - env: PROFILE="-Dhadoop.version=2.4.1 -Dflink.version=1.1.3 -Dspark.version=1.6.2 -Ptravis" + env: PROFILES="${PROFILES} -Dspark.version=2.1.0 -Dscala.version=2.11.8 -Dscala.compat.version=2.11" + + # Build Spark 1.6.3 , Scala 2.10, ViennaCL + - jdk: "oraclejdk7" + env: PROFILES="${PROFILES} -Pviennacl" + +# # Build Spark 2.0.2 , Scala 2.11, ViennaCL - replace -D... with profiles when available +# - jdk: "oraclejdk7" +# env: PROFILES="${PROFILES} -Dspark.version=2.0.2 -Dscala.version=2.11.8 -Dscala.compat.version=2.11 -Pviennacl" +# +# # Build Spark 2.1.0 , Scala 2.11, ViennaCL - replace -D... with profiles when available +# - jdk: "oraclejdk7" +# env: PROFILES="${PROFILES} -Dspark.version=2.1.0 -Dscala.version=2.11.8 -Dscala.compat.version=2.11 -Pviennacl" + + # Build Spark 1.6.3 , Scala 2.10, ViennaCL-OMP + - jdk: "oraclejdk7" + env: PROFILES="${PROFILES} -Pviennacl-omp" TEST_MODULES="${TEST_MODULES},viennacl-omp" + +# # Build Spark 2.0.2 , Scala 2.11, ViennaCL-OMP - replace -D... with profiles when available +# - jdk: "oraclejdk7" +# env: PROFILES="${PROFILES} -Dspark.version=2.0.2 -Dscala.version=2.11.8 -Dscala.compat.version=2.11 -Pviennacl-omp" TEST_MODULES="${TEST_MODULES},viennacl-omp" +# +# # Build Spark 2.1.0 , Scala 2.11, ViennaCL-OMP - replace -D... with profiles when available +# - jdk: "oraclejdk7" +# env: PROFILES="${PROFILES} -Dspark.version=2.1.0 -Dscala.version=2.11.8 -Dscala.compat.version=2.11 -Pviennacl-omp" TEST_MODULES="${TEST_MODULES},viennacl-omp" git: depth: 10 @@ -24,10 +83,6 @@ git: #notifications: # slack: mahout:7vlbihiCBKuhEZK2610jkeeT -env: - global: - JAVA_OPTS=-Xmx3g - before_install: - wget https://archive.apache.org/dist/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.zip - unzip -qq apache-maven-3.3.9-bin.zip @@ -35,9 +90,12 @@ before_install: - export PATH=$M2_HOME/bin:$PATH - export MAHOUT_HOME=$PWD - sudo apt-get -qq update - - sudo apt-get install -y libviennacl-dev - + - sudo apt-get install ocl-icd-libopencl1 + - wget https://github.com/viennacl/viennacl-dev/archive/release-1.7.1.zip + - unzip -qq release-1.7.1.zip + - sudo cp -r viennacl-dev-release-1.7.1/viennacl /usr/include/viennacl + - sudo cp -r viennacl-dev-release-1.7.1/CL /usr/include/CL script: -- ./runtests.sh -#- mvn javadoc:javadoc + - mvn clean -pl $EXCLUDE_MODULES package $PROFILES $STANDARD_BUILD_OPTS -DskipTests + - mvn test -pl $TEST_MODULES $PROFILES http://git-wip-us.apache.org/repos/asf/mahout/blob/eae79da4/runtests.sh ---------------------------------------------------------------------- diff --git a/runtests.sh b/runtests.sh deleted file mode 100755 index 642ae54..0000000 --- a/runtests.sh +++ /dev/null @@ -1,45 +0,0 @@ -#!/usr/bin/env bash -# Abort on Error -set -ev - -export PING_SLEEP=30s -export WORKDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" -export BUILD_OUTPUT=$WORKDIR/build.out - -touch $BUILD_OUTPUT - -dump_output() { - echo Tailing the last 500 lines of output: - tail -500 $BUILD_OUTPUT -} -error_handler() { - echo ERROR: An error was encountered with the build. - dump_output - exit 1 -} -# If an error occurs, run our error handler to output a tail of the build -trap 'error_handler' ERR - -# Set up a repeating loop to send some output to Travis. - -bash -c "while true; do echo \$(date) - building ...; sleep $PING_SLEEP; done" & -PING_LOOP_PID=$! - - -# Build and test using maven. - -mvn clean -DskipTests=true -Dmaven.javadoc.skip=true -B -V install >> $BUILD_OUTPUT 2>&1 -cd hdfs && mvn test >> $BUILD_OUTPUT 2>&1 -cd ../math && mvn test >> $BUILD_OUTPUT 2>&1 -cd ../math-scala && mvn test >> $BUILD_OUTPUT 2>&1 -cd ../spark && mvn test >> $BUILD_OUTPUT 2>&1 -#cd ../viennacl && mvn test >> $BUILD_OUTPUT 2>&1 -#cd ../flink && mvn test >> $BUILD_OUTPUT 2>&1 -#cd ../h2o && mvn test >> $BUILD_OUTPUT 2>&1 - -# The build finished without returning an error so dump a tail of the output -dump_output - -# nicely terminate the ping output loop -kill $PING_LOOP_PID -
