diff --git a/Jenkinsfile b/Jenkinsfile index bc43c82..282715c 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,4 +1,4 @@ -def build_docker(name) { +def build_docker(name, release_dir) { def image = "${name}-shstk" echo "Build image ${image}" def pref = "" @@ -12,6 +12,9 @@ def build_docker(name) { def args = "${pref} --build-arg LIBS_BUILD_NUMBER=${env.BUILD_NUMBER} --build-arg JOBS_COUNT=${jobs}" dir ("docker/${image}") { sh "docker build ${args} --no-cache -t ${image} ." + docker.image('${image}').inside('-v ${release_dir}:/soft/release') { + sh 'cp -vf /soft/shstk/release/* /soft/release/' + } } return "\n - ${image}" } @@ -19,6 +22,8 @@ node { stage("checkout") { checkout scm } + def rel_dir = sh(script: "pwd", returnStdout: true) + '/release' + echo "Release to ${rel_dir}" def _envmap = [:] def _env = sh(script: "env", returnStdout: true).trim().split("\n") _env.each{ l -> @@ -27,16 +32,18 @@ node { def _v = l.substring(_ind + 1); _envmap["${_n}"] = "${_v}"; } + sh "mkdir -p ${rel_dir}" def _msg = "Built images:" def platforms = ['debian', 'osx', 'windows', 'windows32', 'android', 'pi', 'ubuntu'] for (int i = 0; i < platforms.size(); ++i) { if (_envmap["BUILD_${platforms[i]}"] == "1") { stage("${platforms[i]}-shstk") { - _msg += build_docker("${platforms[i]}") + _msg += build_docker("${platforms[i]}", rel_dir) } } } sh "docker system prune -f" + archiveArtifacts '${rel_dir}/*' echo "${_msg}" } pipeline { diff --git a/pip b/pip index 686c970..ca44846 160000 --- a/pip +++ b/pip @@ -1 +1 @@ -Subproject commit 686c970e84c4a96dfc82cbb264c4a9563968d2c9 +Subproject commit ca44846240f3680cdff199d6943ecb13826b15ce