From b6d72ab75a94772866ef7d52fdd43a9ec83827ed Mon Sep 17 00:00:00 2001 From: Ralph Lange Date: Mon, 15 Jun 2015 17:28:12 +0200 Subject: [PATCH 1/2] jenkins: add CloudBees build job --- jenkins/cloudbees_build | 78 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 jenkins/cloudbees_build diff --git a/jenkins/cloudbees_build b/jenkins/cloudbees_build new file mode 100644 index 0000000..ad72b40 --- /dev/null +++ b/jenkins/cloudbees_build @@ -0,0 +1,78 @@ +# easyPVA C++ implementation +# Jenkins @ Cloudbees build script +# +# Jenkins invokes scripts with the "-ex" option. So the build is considered a failure +# if any of the commands exits with a non-zero exit code. +# +# Author: Ralph Lange +# Copyright (C) 2013 Helmholtz-Zentrum Berlin für Materialien und Energie GmbH +# Copyright (C) 2014-2015 ITER Organization. +# All rights reserved. Use is subject to license terms. + +########################################### +# Determine EPICS Base version + +DEFAULT_BASE=3.14.12.5 + +BASE=${1:-${DEFAULT_BASE}} +if [ "${1}" = "${DEFAULT_BASE}" -o -z "${1}" ]; then + BUILD_DOCS=YES +fi + +########################################### +# Fetch and unpack dependencies + +export STUFF=/tmp/stuff + +rm -fr ${STUFF} +mkdir -p ${STUFF} +cd ${STUFF} + +wget -nv https://openepics.ci.cloudbees.com/job/Base-${BASE}_Build/lastSuccessfulBuild/artifact/base-${BASE}.CB-dist.tar.gz +wget -nv https://openepics.ci.cloudbees.com/job/Doxygen-1.8.3_Build/lastSuccessfulBuild/artifact/doxygen-1.8.3.CB-dist.tar.gz +wget -nv https://openepics.ci.cloudbees.com/job/pvCommonCPP_Build/BASE=${BASE}/lastSuccessfulBuild/artifact/pvCommon.CB-dist.tar.gz +wget -nv https://openepics.ci.cloudbees.com/job/pvDataCPP_Build/BASE=${BASE}/lastSuccessfulBuild/artifact/pvData.CB-dist.tar.gz +wget -nv https://openepics.ci.cloudbees.com/job/pvAccessCPP_Build/BASE=${BASE}/lastSuccessfulBuild/artifact/pvAccess.CB-dist.tar.gz +wget -nv https://openepics.ci.cloudbees.com/job/normativeTypesCPP_Build/BASE=${BASE}/lastSuccessfulBuild/artifact/normativeTypes.CB-dist.tar.gz +tar -xzf base-${BASE}.CB-dist.tar.gz +tar -xzf doxygen-1.8.3.CB-dist.tar.gz +tar -xzf pvCommon.CB-dist.tar.gz +tar -xzf pvData.CB-dist.tar.gz +tar -xzf pvAccess.CB-dist.tar.gz +tar -xzf normativeTypes.CB-dist.tar.gz + +########################################### +# Build + +cd ${WORKSPACE} + +export EPICS_BASE=${STUFF} +export EPICS_HOST_ARCH=$(${EPICS_BASE}/startup/EpicsHostArch) +export LD_LIBRARY_PATH=${EPICS_BASE}/lib/${EPICS_HOST_ARCH} +export PATH=${STUFF}/bin:${PATH} + +cat > configure/RELEASE.local << EOF +EPICS_BASE=${EPICS_BASE} +EOF + +make distclean all +if [ "${BUILD_DOCS}" ]; then + doxygen +fi + +########################################### +# Test + +make runtests + +########################################### +# Create distribution + +tar --exclude=test* -czf easyPVA.CB-dist.tar.gz bin lib include dbd + +########################################### +# Publish documentation + +if [ "${BUILD_DOCS}" ]; then + rsync -aqP --delete -e ssh documentation epics-jenkins@web.sourceforge.net:/home/project-web/epics-pvdata/htdocs/docbuild/easyPVACPP/tip +fi From 49368493ce8beb63179fb1b5b53103011558eec6 Mon Sep 17 00:00:00 2001 From: Ralph Lange Date: Tue, 16 Jun 2015 17:28:47 +0200 Subject: [PATCH 2/2] jenkins: fix creating the artifact (pseudo binary distribution tar) --- jenkins/cloudbees_build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jenkins/cloudbees_build b/jenkins/cloudbees_build index ad72b40..2c602a9 100644 --- a/jenkins/cloudbees_build +++ b/jenkins/cloudbees_build @@ -68,7 +68,7 @@ make runtests ########################################### # Create distribution -tar --exclude=test* -czf easyPVA.CB-dist.tar.gz bin lib include dbd +tar --exclude=test* -czf easyPVA.CB-dist.tar.gz lib include ########################################### # Publish documentation