File: Jenkinsfile

package info (click to toggle)
znc 1.7.2-3
  • links: PTS
  • area: main
  • in suites: buster
  • size: 8,520 kB
  • sloc: cpp: 45,532; sh: 3,577; perl: 1,182; python: 867; makefile: 392; tcl: 218; ansic: 188; pascal: 65
file content (33 lines) | stat: -rw-r--r-- 969 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#!groovy

timestamps {
  node('freebsd') {
    // freebsd 10.3 + pkg install git openjdk cmake icu pkgconf swig30 python3 boost-libs gettext-tools qt5-buildtools qt5-network qt5-qmake
    timeout(time: 30, unit: 'MINUTES') {
      def wsdir = pwd()
      stage('Checkout') {
        step([$class: 'WsCleanup'])
        checkout scm
        sh 'git submodule update --init --recursive'
      }
      dir("$wsdir/build") {
        stage('Build') {
          sh "cmake $wsdir -DWANT_PERL=ON -DWANT_PYTHON=ON -DCMAKE_INSTALL_PREFIX=$wsdir/build/install-prefix"
          sh 'make VERBOSE=1 all'
        }
        stage('Unit test') {
          withEnv(['GTEST_OUTPUT=xml:unit-test.xml']) {
            sh 'make unittest'
          }
        }
        stage('Integration test') {
          withEnv(['GTEST_OUTPUT=xml:integration-test.xml']) {
            sh 'make install'
            sh 'make inttest'
          }
        }
        junit '**/*test.xml'
      }
    }
  }
}