aboutsummaryrefslogtreecommitdiff
path: root/jenkins/package_builder.groovy
diff options
context:
space:
mode:
authorMatt Rendina <mrendina@stsci.edu>2017-04-18 13:25:32 -0400
committerMatt Rendina <mrendina@stsci.edu>2017-04-18 13:25:32 -0400
commitc898304423815fb795d07891fb2504e99d1549f7 (patch)
treeb21879f87e24f95d8ae1d1296bd914b6c55c86e8 /jenkins/package_builder.groovy
parent0b0b80a2582d684a6d8e4abf3b87d335772177dc (diff)
downloadbuild_control-c898304423815fb795d07891fb2504e99d1549f7.tar.gz
Testing conda machinery patching capability; use cleaner approach for shellc all arguments; manifest grooming; use filtered and culled manifest provided by build utility
Diffstat (limited to 'jenkins/package_builder.groovy')
-rw-r--r--jenkins/package_builder.groovy71
1 files changed, 36 insertions, 35 deletions
diff --git a/jenkins/package_builder.groovy b/jenkins/package_builder.groovy
index 2391abf..9f06ac7 100644
--- a/jenkins/package_builder.groovy
+++ b/jenkins/package_builder.groovy
@@ -3,60 +3,61 @@ node(this.label) {
dir(this.parent_workspace) {
println("inherited workspace: ${this.parent_workspace}")
- println("Nodelabel: ${this.label}")
- println("${env.JOB_NAME}")
- println("${env.JOB_BASE_NAME}")
- println("${env.BUILD_NUMBER}")
- println("${env.NODE_NAME}")
- println("${env.WORKSPACE}")
- println("${env.JENKINS_HOME}")
+ println("this.Nodelabel: ${this.label}")
+ println("env.JOB_NAME: ${env.JOB_NAME}")
+ println("env.JOB_BASE_NAME: ${env.JOB_BASE_NAME}")
+ println("env.BUILD_NUMBER: ${env.BUILD_NUMBER}")
+ println("env.NODE_NAME: ${env.NODE_NAME}")
+ println("env.WORKSPACE: ${env.WORKSPACE}")
+ println("env.JENKINS_HOME: ${env.JENKINS_HOME}")
println(currentBuild.buildVariables)
println("parameter py_version: ${this.py_version}")
env.PATH = "${this.parent_workspace}/miniconda/bin/:" + "${env.PATH}"
+ println("PATH: ${env.PATH}")
// Make the log files a bit more deterministic
env.PYTHONUNBUFFERED = "true"
- this.OSname = null
- uname = sh(script: "uname", returnStdout: true).trim()
- if (uname == "Darwin") {
- this.OSname = "MacOSX"
- env.PATH = "${env.PATH}:/sw/bin"
- this.CONDA_BLD_OUTPUT_DIR = "osx-64"
- }
- if (uname == "Linux") {
- this.OSname = uname
- this.CONDA_BLD_OUTPUT_DIR = "linux-64"
- }
- assert uname != null
- println("${this.CONDA_BLD_OUTPUT_DIR}")
-
- // In directory common to all package build jobs, run conda build for this
- // package.
+ // In the directory common to all package build jobs,
+ // run conda build --dirty for this package to use any existing work
+ // directory or source trees already obtained.
dir("conda-recipes") {
- build_cmd = "conda build"
+ cmd = "conda build"
stage("Build") {
- build_args = "--no-test --no-anaconda-upload --python=${this.py_version}" +
- " --numpy=${this.numpy_version} --skip-existing"
+ build_cmd = cmd
+ args = ["--no-test",
+ "--no-anaconda-upload",
+ "--python=${this.py_version}",
+ "--numpy=${this.numpy_version}",
+ "--skip-existing",
+ "--dirty"]
+ for (arg in args) {
+ build_cmd = "${build_cmd} ${arg}"
+ }
stat = 999
-
- stat = sh(script: "${build_cmd} ${build_args} ${env.JOB_BASE_NAME}",
- returnStatus: true)
- println("Shell call returned status: ${stat}")
+ stat = sh(script: "${build_cmd} ${env.JOB_BASE_NAME}",
+ returnStatus: true)
if (stat != 0) {
currentBuild.result = "FAILURE"
}
}
stage("Test") {
- build_args = "--test --no-anaconda-upload --python=${this.py_version}" +
- " --numpy=${this.numpy_version} --skip-existing"
- stat = sh(script: "${build_cmd} ${build_args} ${env.JOB_BASE_NAME}",
- returnStatus: true)
- println("Shell call returned status: ${stat}")
+ build_cmd = cmd
+ args = ["--test",
+ "--no-anaconda-upload",
+ "--python=${this.py_version}",
+ "--numpy=${this.numpy_version}",
+ "--skip-existing"]
+ for (arg in args) {
+ build_cmd = "${build_cmd} ${arg}"
+ }
+ stat = 999
+ stat = sh(script: "${build_cmd} ${env.JOB_BASE_NAME}",
+ returnStatus: true)
if (stat != 0) {
currentBuild.result = "UNSTABLE"
}