source: issm/trunk-jpl/packagers/linux/complete-issm-linux-binaries-python-3.sh@ 28175

Last change on this file since 28175 was 28175, checked in by jdquinn, 12 months ago

CHG: Modified test suites; svn bug fixes

  • Property svn:executable set to *
File size: 3.0 KB
Line 
1#!/bin/bash
2
3################################################################################
4# Wrapper script to build, package, and transfer to ISSM Web site ISSM
5# distributable package for Linux with Python 3 API.
6#
7# Normally, we would put this directly into the project configuration under
8# 'Build' -> 'Execute shell', but because it is a bit more involved, it is a
9# good idea to version it.
10#
11# When no failures/errors occur, performs the following:
12# - Builds ISSM according to configuration.
13# - Packages executables and libraries.
14# - Runs test suite against package.
15# - Transmits package to ISSM Web site for distribution.
16#
17# Options:
18# -b/--skipbuild Skip ISSM compilation.
19# -s/--skiptests Skip ISSM compilation and testing during packaging
20# step. Use if packaging fails for some reason but build
21# is valid.
22# -t/--transferonly Transfer package to ISSM Web site only. Use if transfer
23# fails for some reason to skip building, packaging, and
24# signing.
25#
26# NOTE:
27# - Use only *one* of the above options at a time, and make sure it is removed
28# again after a single run.
29# - Builds will fail when any of the above options are used on a clean
30# workspace. For example, if 'Source Code Management' -> 'Check-out Strategy'
31# select menu is set to "Always check out a fresh copy".
32################################################################################
33
34## Constants
35#
36PKG="ISSM-Linux-Python-3" # Name of directory to copy distributable files to
37PYTHON_NROPTIONS="--benchmark all --exclude 125 126 129 234 235 418 420 435 444 445 456 701 702 703 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1201 1202 1203 1204 1205 1206 1207 1208 1301 1302 1303 1304 1401 1402 1601 1602 2002 2003 2004 2005 2006 2007 2008 2010 2011 2012 2013 2020 2021 2051 2052 2053 2084 2085 2090 2091 2092 2101 2424 2425 3001:3300 3480 3481 4001:4100" # NOTE: Combination of test suites from basic, Dakota, and Solid Earth builds, with tests that require a restart and those that require the JVM excluded
38
39COMPRESSED_PKG="${PKG}.tar.gz"
40
41## Environment
42#
43export COMPRESSED_PKG
44export PKG
45export PYTHON_NROPTIONS
46
47## Parse options
48#
49if [ $# -gt 1 ]; then
50 echo "Can use only one option at a time"
51 exit 1
52fi
53
54# NOTE: We could do this with binary switching (i.e. 0011 to sign and transfer,
55# but the following is self-documenting).
56#
57build=1
58package=1
59transfer=1
60
61if [ $# -eq 1 ]; then
62 case $1 in
63 -b|--skipbuild) build=0; shift ;;
64 -s|--skiptests) build=0; ;;
65 -t|--transferonly) build=0; package=0; ;;
66 *) echo "Unknown parameter passed: $1"; exit 1 ;;
67 esac
68fi
69
70# Build
71if [ ${build} -eq 1 ]; then
72 ./jenkins/jenkins.sh ./jenkins/ross-debian_linux-binaries-python-3
73
74 if [ $? -ne 0 ]; then
75 exit 1
76 fi
77fi
78
79# Package
80if [ ${package} -eq 1 ]; then
81 ./packagers/linux/package-issm-linux-binaries-python-3.sh $1
82
83 if [ $? -ne 0 ]; then
84 exit 1
85 fi
86fi
87
88# Transfer distributable package to ISSM Web site
89if [ ${transfer} -eq 1 ]; then
90 ./packagers/linux/transfer-issm-linux-binaries.sh
91
92 if [ $? -ne 0 ]; then
93 exit 1
94 fi
95fi
96
Note: See TracBrowser for help on using the repository browser.