language: java
jdk:
  - oraclejdk8
sudo: false
cache:
  directories:
<%_ if (applicationType !== 'microservice') { _%>
    - node
    - node_modules
<%_ } _%>
<%_ if (buildTool === 'maven') { _%>
    - $HOME/.m2
<%_ } else if (buildTool === 'gradle') { _%>
    - $HOME/.gradle
<%_ } _%>
<%_ if (applicationType !== 'microservice') { _%>
env:
  - NODE_VERSION=4.4.7
before_install:
  - nvm install $NODE_VERSION
  - npm install -g npm
  - npm install -g bower gulp-cli
  - node -v
  - npm -v
  - bower -v
  - gulp -v
  - java -version
install: npm install
<%_ } else { _%>
before_install:
  - java -version
<%_ } _%>
script:
<%_ if (buildTool === 'maven') { _%>
  - ./mvnw clean
  - ./mvnw test
<%_ } else if (buildTool === 'gradle') { _%>
  - ./gradlew clean
  - ./gradlew test
<%_ } _%>
<%_ if (applicationType !== 'microservice') { _%>
  - gulp test
<%_ } _%>
<%_ if (buildTool === 'maven') { _%>
  - ./mvnw package -Pprod -DskipTests
<%_ } else if (buildTool === 'gradle') { _%>
  - ./gradlew bootRepackage -Pprod -x test
<%_ } _%>
notifications:
  webhooks:
    on_success: change  # options: [always|never|change] default: always
    on_failure: always  # options: [always|never|change] default: always
    on_start: false     # default: false
