From 8115fdd0d05468d26ebdb4cf1162a033faf70b42 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20Soko=C5=82owski?= Date: Sat, 29 Oct 2022 19:02:40 +0200 Subject: [PATCH] ci: add Jenkinsfile.imports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jakub SokoĊ‚owski --- ci/Jenkinsfile.imports | 60 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 ci/Jenkinsfile.imports diff --git a/ci/Jenkinsfile.imports b/ci/Jenkinsfile.imports new file mode 100644 index 0000000000..b1ad359905 --- /dev/null +++ b/ci/Jenkinsfile.imports @@ -0,0 +1,60 @@ +library 'status-jenkins-lib@v1.5.1' + +/* Options section can't access functions in objects. */ +def isPRBuild = utils.isPRBuild() + +pipeline { + agent { label 'linux' } + + parameters { + choice( + name: 'VERBOSE', + description: 'Level of verbosity based on nimbus-build-system setup.', + choices: ['0', '1', '2'] + ) + } + + options { + timestamps() + /* Prevent Jenkins jobs from running forever */ + timeout(time: 120, unit: 'MINUTES') + /* manage how many builds we keep */ + buildDiscarder(logRotator( + numToKeepStr: '10', + daysToKeepStr: '30', + artifactNumToKeepStr: '3', + )) + /* Abort old PR builds. */ + disableConcurrentBuilds( + abortPrevious: isPRBuild + ) + } + + environment { + TARGET = 'e2e' + /* Improve make performance */ + MAKEFLAGS = "-j4 V=${params.VERBOSE}" + /* Disable colors in Nim compiler logs */ + NIMFLAGS = '--colors:off' + /* Makefile assumes the compiler folder is included */ + QTDIR = "/opt/qt/5.14.2/gcc_64" + /* Include library in order to compile the project */ + LD_LIBRARY_PATH = "$QTDIR/lib:$WORKSPACE/vendor/status-go/build/bin:$WORKSPACE/vendor/status-keycard-go/build/libkeycard/" + } + + stages { + stage('Build') { + steps { sh 'make statusq-sanity-checker' } + } + + stage('Check') { + steps { sh 'make run-statusq-sanity-checker' } + } + } + + post { + success { script { github.notifyPR(true) } } + failure { script { github.notifyPR(false) } } + cleanup { cleanWs() } + } +}