diff --git a/src/org/SHS/SDK.groovy b/src/org/SHS/SDK.groovy index 73a9969..3b9e6d0 100644 --- a/src/org/SHS/SDK.groovy +++ b/src/org/SHS/SDK.groovy @@ -1,6 +1,5 @@ package org.SHS -//@Library('SHS.Platforms') _ class SDK { def steps def pl @@ -12,33 +11,38 @@ class SDK { public void build() { try { - // код, который может вызвать исключение steps.stage("Download sources") { steps.checkout steps.scm } } catch (Exception e) { - // обработка всех остальных исключений - println "Произошла ошибка: ${e.getMessage()}" + println "Error: ${e.getMessage()}" } finally { - // код, который будет выполнен в любом случае, независимо от исключений - //pl.get() } //steps.print("Finally") //steps.print("file: /${steps.env.SHSSDK_DIR}/platforms.json") pl._root = steps.readJSON(file: "${steps.env.SHSSDK_DIR}/platforms.json") pl.forEach ({ dist, cmake_toolchain -> - steps.print("compile in ${dist.docker_image} with arg ${cmake_toolchain}") - // steps.docker.image("${dist.docker_image}-shssdk").inside() { - // steps.sh "rm -rf ./release" - // steps.sh "mkdir -p build" - // steps.sh "cd build && rm -rf ./* && cmake -G Ninja ${toolchain} -DBUILD_NUMBER=${env.BUILD_NUMBER} -DCMAKE_INSTALL_PREFIX=../release ../src" - // steps.sh "cd build && cmake --build ./ --target install -j${env.JOBS_COUNT}" - // steps.archiveArtifacts 'release/*/*/*' + //steps.print("compile in ${dist.docker_image} with arg ${cmake_toolchain}") + steps.docker.image("${dist.docker_image}-shssdk").inside() { + steps.sh "mkdir -p build" + steps.sh "rm -rf release/* build/* || true" + steps.sh "cd build && cmake -G Ninja ${toolchain} -DCMAKE_PREFIX_PATH=/soft/SHS/sdk -DBUILD_NUMBER=${env.BUILD_NUMBER} -DCMAKE_INSTALL_PREFIX=`pwd`/../release ../" + steps.sh "cd build && cmake --build ./ --target install -j${env.JOBS_COUNT}" + steps.archiveArtifacts 'release/*' // steps.sh 'rm -rf ./build ./bin ./release ./builds' - // }, + }, // //whiteList: ["ubuntu", "debian", "osx"], - // blackList: ["android"] + blackList: ["android"] }) + + steps.stage("Register for autobuild") { + def plugin_jobs_dir = "${env.SHSSDK_DIR}/plugin_jobs" + def checksum = steps.sh(script: "echo \"${env.JOB_NAME}\" | sha1sum -", returnStdout: true).trim().substring(0, 40) + def filename = checksum + ".name" + steps.sh "mkdir -p ${plugin_jobs_dir} || true" + steps.sh "echo \"${env.JOB_NAME}\" > ${plugin_jobs_dir}/${filename}" + } + } }