diff options
author | Fathi Boudra <fathi.boudra@linaro.org> | 2015-12-14 11:47:56 +0200 |
---|---|---|
committer | Fathi Boudra <fathi.boudra@linaro.org> | 2015-12-14 09:49:39 +0000 |
commit | 7184b6ee518b9ca6d24dda0c5f499ae23c80dc43 (patch) | |
tree | bf77f30be0c70f8726a4054ba24ffa6e804154f4 /odpi-bigtop-deb.yaml | |
parent | 46061a95b331f34c7fba24605417f4d0dffa4f49 (diff) |
odpi-bigtop: add build jobs to generate deb and rpm packages
Change-Id: I3f2b407f16e504f3d7f9f7ee4282dae8a0059f15
Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
Diffstat (limited to 'odpi-bigtop-deb.yaml')
-rw-r--r-- | odpi-bigtop-deb.yaml | 133 |
1 files changed, 133 insertions, 0 deletions
diff --git a/odpi-bigtop-deb.yaml b/odpi-bigtop-deb.yaml new file mode 100644 index 0000000000..8702d5fc6d --- /dev/null +++ b/odpi-bigtop-deb.yaml @@ -0,0 +1,133 @@ +- job: + name: odpi-bigtop-deb + project-type: freestyle + defaults: global + logrotate: + daysToKeep: 30 + numToKeep: 30 + artifactNumToKeep: 1 + properties: + - authorization: + anonymous: + - job-read + - job-extended-read + parameters: + - string: + name: ANT_OPTS + default: '-Xmx8G -XX:MaxPermSize=1G' + - string: + name: MAVEN_OPTS + default: '-Xmx8G -XX:MaxPermSize=1G' + - string: + name: JDK_URL + default: 'http://openjdk.linaro.org/releases/jdk7-server-release-1511.tar.xz' + - string: + name: MAVEN_URL + default: 'http://www.us.apache.org/dist/maven/maven-3/3.0.5/binaries/apache-maven-3.0.5-bin.tar.gz' + - string: + name: SCALA_URL + default: 'http://downloads.typesafe.com/scala/2.11.7/scala-2.11.7.tgz' + - string: + name: NODE_URL + default: 'https://nodejs.org/dist/v4.2.1/node-v4.2.1.tar.gz' + - string: + name: PROTOBUF_URL + default: 'https://github.com/google/protobuf/releases/download/v2.6.1/protobuf-2.6.1.tar.gz' + disabled: false + node: docker-jessie-arm64 + display-name: 'ODPi BigTop (deb)' + wrappers: + - timestamps + builders: + - shell: | + #!/bin/bash + + set -ex + + # number of CPU_CORES to build with + export CPU_CORES=$(getconf _NPROCESSORS_ONLN) + + # install pre-requisites + sudo apt-get update + sudo apt-get install -y --no-install-recommends \ + ant \ + asciidoc \ + chrpath \ + cmake \ + libcppunit-dev \ + libfuse-dev \ + libkrb5-dev \ + libldap2-dev \ + liblzo2-dev \ + libmysqlclient-dev \ + libsasl2-dev \ + libsqlite3-dev \ + libssl-dev \ + libxml2-dev \ + libxslt1-dev \ + libzip-dev \ + pkg-config \ + python-dev \ + python-setuptools \ + rsync \ + sharutils \ + subversion \ + xmlto + + # download OpenJDK 7 and Maven 3.0.5 explicitely + wget --progress=dot -e dotbytes=2M ${JDK_URL} ${MAVEN_URL} ${SCALA_URL} ${NODE_URL} ${PROTOBUF_URL} + tar -Jxf jdk*.tar.xz + tar -zxf apache-maven-*.tar.gz + tar -zxf scala-*.tgz + tar -zxf node-*.tar.gz + tar -zxf protobuf-*.tar.gz + + # replace cacerts with distro-supplied + cd jdk*/jre/lib/security/ + rm -f cacerts + ln -s /etc/ssl/certs/java/cacerts + + # set JAVA_HOME + cd ${WORKSPACE}/jdk* + export JAVA_HOME=${PWD} + + # set M3_HOME + cd ${WORKSPACE}/apache-maven-* + export M3_HOME=${PWD} + + # hack to use archiva + wget -q http://people.linaro.org/~fathi.boudra/settings.xml -O conf/settings.xml + mkdir ~/.m2 + cp -a conf/settings.xml ~/.m2/settings.xml + + # set SCALA_HOME + cd ${WORKSPACE}/scala-* + export SCALA_HOME=${PWD} + + # set PATH + export PATH=${JAVA_HOME}/bin:${M3_HOME}/bin:${PATH} + java -version + mvn -version + + # build and hookup nodejs + cd ${WORKSPACE}/node-* + ./configure --prefix=${WORKSPACE}/node + make -j${CPU_CORES} install + export PATH=${WORKSPACE}/node/bin/:${PATH} + + # build and hookup protobuf compiler + cd ${WORKSPACE}/protobuf-* + ./configure --prefix=${WORKSPACE}/protobuf + make -j${CPU_CORES} install + export PATH=${WORKSPACE}/protobuf/bin:${PATH} + export PKG_CONFIG_PATH=${WORKSPACE}/protobuf/lib/pkgconfig + + # clone the ODPi BigTop definitions + git clone --depth 1 https://git.linaro.org/people/fathi.boudra/odpi-bigtop.git ${WORKSPACE}/odpi-bigtop + cd ${WORKSPACE}/odpi-bigtop + + # okay everything is in place, this build will take a while + ./gradlew deb + publishers: + - archive: + artifacts: 'odpi-bigtop/output/**' |