diff options
Diffstat (limited to 'JenkinsfileRT')
-rw-r--r-- | JenkinsfileRT | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/JenkinsfileRT b/JenkinsfileRT new file mode 100644 index 0000000..aac2be4 --- /dev/null +++ b/JenkinsfileRT @@ -0,0 +1,58 @@ +// Obtain files from source control system. +// [skip ci] and [ci skip] have no effect here. + if (utils.scm_checkout(['skip_disable':true])) return + +// Allow modification of the job configuration, affects all relevant build configs. +// Pass this object in the argument list to the`run()` function below to apply these settings to the job's execution. +jobconfig = new JobConfig() +jobconfig.post_test_summary = true + +// Config data to share between builds. +CFLAGS = '' +LDFLAGS = '' +DEFAULT_FLAGS = "${CFLAGS} ${LDFLAGS}" +// Some waf flags cause a prompt for input during configuration, hence the 'yes'. +configure_cmd = "yes '' | ./waf configure --prefix=./_install ${DEFAULT_FLAGS}" + +// Configure artifactory ingest +data_config = new DataConfig() +data_config.server_id = 'bytesalad' +data_config.root = 'tests_output' +data_config.match_prefix = '(.*)_result' // .json is appended automatically + +// Run nightly tests, which include the slow ones. +bc = new BuildConfig() +bc.nodetype = "RHEL-6" +bc.name = "release" +bc.env_vars = ['PATH=./_install/bin:$PATH', + 'OMP_NUM_THREADS=8', + 'TEST_BIGDATA=https://bytesalad.stsci.edu/artifactory', + 'jref=/grp/hst/cdbs/jref/', + 'iref=/grp/hst/cdbs/iref/', + 'oref=/grp/hst/cdbs/oref/'] +bc.conda_channels = ['http://ssb.stsci.edu/astroconda'] +bc.conda_packages = ['python=3.6', + 'cfitsio', + 'pkg-config', + 'pytest', + 'requests', + 'astropy', + 'ci-watson'] + +bc.build_cmds = [//"pip install git+https://github.com/spacetelescope/ci_watson.git@master", + "${configure_cmd} --release-with-symbols", + "./waf build", + "./waf install", + "calacs.e --version"] +//bc.test_cmds = ["pytest tests --basetemp=tests_output --junitxml results.xml --bigdata --slow -v"] +bc.test_cmds = ["pytest tests/acs/test_hrc_single.py --basetemp=tests_output --junitxml results.xml --bigdata --slow -v"] +bc.failedUnstableThresh = 1 +bc.failedFailureThresh = 6 + +// Upload artifacts +bc.test_configs = [data_config] + +// Iterate over configurations that define the (distributed) build matrix. +// Spawn a host of the given nodetype for each combination and run in parallel. +// Also apply the job configuration defined in `jobconfig` above. + utils.run([bc, jobconfig]) |