sudo: false

before_install:
 - export PATH=${PATH}:./vendor/bundle

install:
  - rvm use 2.2.3 --install --fuzzy
  - gem update --system
  - gem install sass
  - gem install jekyll -v 3.2.1

cache:
  directories:
    - $HOME/.ivy2/cache
    - $HOME/.sbt
    - $HOME/.coursier

before_cache:
  # Cleanup the cached directories to avoid unnecessary cache updates
  - find $HOME/.ivy2/cache -name "ivydata-*.properties" -print -delete
  - find $HOME/.sbt        -name "*.lock"               -print -delete

language: scala

scala:
  - 2.12.2
  - 2.11.11

env:
  - PLATFORM=JVM
  - PLATFORM=JS

jdk:
  - oraclejdk8

script:
  - if [ "$TRAVIS_SCALA_VERSION" == "2.12.2" -a "$PLATFORM" == "JVM" ]; then
      sbt ++$TRAVIS_SCALA_VERSION "; coverage; project$PLATFORM/test; coverageReport";
      sbt coverageAggregate && bash <(curl -s https://codecov.io/bash);
    elif [ "$PLATFORM" == "JS" ]; then
      sbt ++$TRAVIS_SCALA_VERSION surfaceJS/test;
      sbt ++$TRAVIS_SCALA_VERSION airframeJS/test;
    else
      sbt ++$TRAVIS_SCALA_VERSION project$PLATFORM/test;
    fi

sudo: false

before_install:
 - export PATH=${PATH}:./vendor/bundle

install:
  - rvm use 2.2.3 --install --fuzzy
  - gem update --system
  - gem install sass
  - gem install jekyll -v 3.2.1

cache:
  directories:
    - $HOME/.ivy2/cache
    - $HOME/.sbt
    - $HOME/.coursier

before_cache:
  # Cleanup the cached directories to avoid unnecessary cache updates
  - find $HOME/.ivy2/cache -name "ivydata-*.properties" -print -delete
  - find $HOME/.sbt        -name "*.lock"               -print -delete

language: scala

scala:
  - 2.12.2
  - 2.11.11

env:
  - PLATFORM=JVM
  - PLATFORM=JS PROJECT=airframe
  - PLATFORM=JS PROJECT=surface

jdk:
  - oraclejdk8

script:
  - if [ "$TRAVIS_SCALA_VERSION" == "2.12.2" -a "$PLATFORM" == "JVM" ]; then
      sbt ++$TRAVIS_SCALA_VERSION "; coverage; projectJVM/test; coverageReport";
      sbt coverageAggregate && bash <(curl -s https://codecov.io/bash);
    else
      sbt ++$TRAVIS_SCALA_VERSION ${PROJECT}${PLATFORM}/test;
    fi

Split project further to reduce memory consumption in Travis
Split project further to reduce memory consumption in Travis
