Commit 56fb07c4 authored by Charles Deltel's avatar Charles Deltel
Browse files

[ci] new tasks: macos build, and linux/macos release delivery

parent 208fb393
#!/bin/bash
set +xv
echo "
date : `date`
hostname : `hostname`
pwd : `pwd`
--------------------------
Jenkins build parameters
--------------------------
BRANCH_TO_BUILD : ${BRANCH_TO_BUILD}
RELEASE_TO_BUILD : ${RELEASE_TO_BUILD}
INRIA_FORGE_LOGIN : ${INRIA_FORGE_LOGIN}
TEST_VARIABLE : ${TEST_VARIABLE}
DEBUG : ${DEBUG}
"
[ "$DEBUG" != "true" ] && { set -e ; } || { echo "DEBUG mode, the script will NOT stop..." ; }
set -xv
################################################################
# COMPILATION #
################################################################
gcc --version
g++ --version
[ `gcc -dumpversion` = 4.7 ] && { echo "GCC 4.7"; } || { echo "GCC version is not 4.7, we exit"; exit 1; }
JENKINS_TASK=finalize-release-debian
ROOT_DIR=/builds/workspace/$JENKINS_TASK/
rm -rf $ROOT_DIR
mkdir -p $ROOT_DIR
cd $ROOT_DIR
git clone git+ssh://${INRIA_FORGE_LOGIN}@scm.gforge.inria.fr/gitroot/gatb-core/gatb-core.git
cd gatb-core
git checkout $BRANCH_TO_BUILD
cd gatb-core # this level should be removed soon
MAJOR="`echo $RELEASE_TO_BUILD |cut -d. -f1`"
MINOR="`echo $RELEASE_TO_BUILD |cut -d. -f2`"
PATCH="`echo $RELEASE_TO_BUILD |cut -d. -f3`"
/bin/bash -xv ./scripts/make_official_release.sh -s -M $MAJOR -m $MINOR -p $PATCH -c delivery
#!/bin/bash
set +xv
echo "
date : `date`
hostname : `hostname`
pwd : `pwd`
--------------------------
Jenkins build parameters
--------------------------
BRANCH_TO_BUILD : ${BRANCH_TO_BUILD}
RELEASE_TO_BUILD : ${RELEASE_TO_BUILD}
INRIA_FORGE_LOGIN : ${INRIA_FORGE_LOGIN}
TEST_VARIABLE : ${TEST_VARIABLE}
DEBUG : ${DEBUG}
"
[ "$DEBUG" != "true" ] && { set -e ; } || { echo "DEBUG mode, the script will NOT stop..." ; }
set -xv
################################################################
# COMPILATION #
################################################################
gcc --version
g++ --version
sw_vers -productVersion
JENKINS_TASK=finalize-release-macos
ROOT_DIR=/builds/workspace/$JENKINS_TASK/
rm -rf $ROOT_DIR
mkdir -p $ROOT_DIR
cd $ROOT_DIR
git clone git+ssh://${INRIA_FORGE_LOGIN}@scm.gforge.inria.fr/gitroot/gatb-core/gatb-core.git
cd gatb-core
git checkout $BRANCH_TO_BUILD
cd gatb-core # this level should be removed soon
MAJOR="`echo $RELEASE_TO_BUILD |cut -d. -f1`"
MINOR="`echo $RELEASE_TO_BUILD |cut -d. -f2`"
PATCH="`echo $RELEASE_TO_BUILD |cut -d. -f3`"
#----------
# upload below only perform tasks 1, 2, and 5 (see make_official_release.sh -h):
# 1 . compile the library on the hosted system using curent source code
# 2 . package library within a tar.gz file
# (3). tag Inria Forge using release number
# (4). create a corresponding Github release
# 5 . upload the library binary on Github
/bin/bash -xv ./scripts/make_official_release.sh -s -M $MAJOR -m $MINOR -p $PATCH -c upload
#!/bin/bash
#--------------------------------------------------------------#
# Continuous integration script for Jenkins #
#--------------------------------------------------------------#
#
# Default mode :
# This script will exit with error (exit code 1) if any of its steps fails.·
# To change this behaviour, choose DO_NOT_STOP_AT_ERROR in Jenkins (see below).
#--------------------------------------------------------------#
set +xv
echo "
date : `date`
hostname : `hostname`
pwd : `pwd`
--------------------------
Jenkins build parameters
--------------------------
BRANCH_TO_BUILD : ${BRANCH_TO_BUILD}
RELEASE_TO_BUILD : ${RELEASE_TO_BUILD}
INRIA_FORGE_LOGIN : ${INRIA_FORGE_LOGIN}
TEST_VARIABLE : ${TEST_VARIABLE}
DO_NOT_STOP_AT_ERROR : ${DO_NOT_STOP_AT_ERROR}
"
[ "$DO_NOT_STOP_AT_ERROR" != "true" ] && { set -e ; } || { echo "DEBUG mode, the script will NOT stop..." ; }
set -xv
################################################################
# COMPILATION #
################################################################
gcc --version
g++ --version
[ `gcc -dumpversion` = 4.2.1 ] && { echo "GCC 4.2.1"; } || { echo "GCC version is not 4.2.1, we exit"; exit 1; }
sw_vers -productVersion
#system_profiler SPSoftwareDataType
cd gatb-core
JENKINS_TASK=test-suite-macos-10.9.5-gcc-4.2.1
GIT_DIR=/builds/workspace/$JENKINS_TASK/gatb-core
#BUILD_DIR=/scratchdir/$JENKINS_TASK/gatb-core/build
BUILD_DIR=$GIT_DIR/build #N.B. /scratchdir not yet mounted on the osx slave (ciosx)
rm -rf $BUILD_DIR
mkdir -p $BUILD_DIR
cd $BUILD_DIR
cmake -Wno-dev $GIT_DIR
make
################################################################
# UNIT TESTS #
################################################################
export CPPUNIT_VERBOSE=1
# Specify single unit tests
#$BUILD_DIR/bin/gatb-core-cppunit TestBag
#$BUILD_DIR/bin/gatb-core-cppunit TestMap
# Launch the full test suite
$BUILD_DIR/bin/gatb-core-cppunit
################################################################
# CHECK FUNCTIONS (with precomputed reference results) #
################################################################
# Not ready
[ "$DO_NOT_STOP_AT_ERROR" = "true" ] && { exit 0 ; }
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment