#!/usr/bin/env groovy

pipeline {
  agent none
  stages {
    stage('Build and Verify') {

      agent {
        label 'snapdragon'
      }
      steps {
        sh 'export'
        sh 'make distclean'
        sh 'ccache -s'
        sh 'git fetch --tags'
        sh 'CCACHE_BASEDIR=${WORKSPACE} make eagle_default'
        sh 'ccache -s'
        // sanity check
        sh 'adb devices'
        sh 'make eagle_default sanity || true'
      }
      post {
        always {
          sh 'cat boards/atlflight/eagle/scripts/px4.log'
          sh 'cat boards/atlflight/eagle/scripts/minidm.log'
          sh 'make distclean'
        }
      }
      options {
        timeout(time: 60, unit: 'MINUTES')
      }

    }

  } // stages
  environment {
    CCACHE_DIR = '/tmp/ccache'
    CI = true
    ARM_CROSS_GCC_ROOT="/home/jenkins/Qualcomm/ARM_Tools/gcc-4.9-2014.11"
    HEXAGON_ARM_SYSROOT="/home/jenkins/Qualcomm/qrlinux_sysroot"
    HEXAGON_SDK_ROOT="/home/jenkins/Qualcomm/Hexagon_SDK/3.0"
    HEXAGON_TOOLS_ROOT="/home/jenkins/Qualcomm/HEXAGON_Tools/7.2.12/Tools"
  }
  options {
    buildDiscarder(logRotator(numToKeepStr: '20', artifactDaysToKeepStr: '40'))
    timeout(time: 60, unit: 'MINUTES')
  }
}
