96efd14
#!/bin/bash -ex
96efd14
ba865b3
resultdir="/var/lib/mock/javapackages-rawhide/result/"
96efd14
ba865b3
# create directories
ba865b3
repo=RPM/latest/
ba865b3
[[ ! -d ${repo} ]] && mkdir -p ${repo}
96efd14
ba865b3
# update version and release tag in spec file
ba865b3
version=`sed 's/-SNAPSHOT//' VERSION`
ba865b3
release=$(git describe --match="[^(jenkins)].*" --tags | sed 's/[^-]*-/0./;s/-/./;s/g/git/')
ba865b3
sed -i "s/^Version:\s\+[0-9.]*$/Version: ${version}/" javapackages-tools.spec
ba865b3
sed -i "s/^Release:\s\+[0-9.]*%{?dist}$/Release: ${release}/" javapackages-tools.spec
96efd14
ba865b3
# make tarball
ba865b3
git archive -v --prefix=javapackages-${version}/ HEAD | xz > javapackages-${version}.tar.xz
96efd14
ba865b3
# print root.log and build.log in case of failure
ba865b3
trap "cat ${resultdir}/root.log | tail -30; cat ${resultdir}/build.log || :" 0
ba865b3
ba865b3
# crate srpm
96efd14
rm -f SRPMS/*
96efd14
rpmbuild -bs --clean --define "_topdir `pwd`" --define "_sourcedir `pwd`" javapackages-tools.spec
96efd14
ba865b3
# build RPM with custom mock config
ba865b3
rm -Rf ${resultdir}/*
96efd14
mock -r ../..$PWD/fedora-rawhide-x86_64 SRPMS/*.src.rpm
96efd14
6ee6749
# get nosetests results
6ee6749
mock --copyout /builddir/build/BUILD/javapackages-${version}/test/nosetests.xml .
6ee6749
ba865b3
# remove unneeded stuff
ba865b3
rm -f javapackages-*.tar.xz
96efd14
ba865b3
last_bn=`grep "Build number" ${repo}/info.log | awk '{ print $3 }'`
ba865b3
if [ -n "${last_bn}" ]; then
ba865b3
    mkdir -p RPM/${last_bn}
ba865b3
    mv ${repo}/* RPM/${last_bn}
ba865b3
ba865b3
    # we only want keep RPMs from last 10 builds
538d008
    blist=`find ./RPM/ -maxdepth 1 -name "[0-9]*"`
ba865b3
    for bn in $blist; do
ba865b3
        if [ `basename $bn` -lt `expr $last_bn - 10` ]; then
538d008
            rm -Rf $bn
ba865b3
        fi
ba865b3
    done
96efd14
fi
96efd14
96efd14
# copy resulting RPMs to RPM/latest
ba865b3
cp ${resultdir}/* ${repo}
96efd14
ba865b3
tail -n 50 ${resultdir}/build.log
96efd14
ba865b3
createrepo ${repo}
96efd14
ba865b3
# store current build number into the file
ba865b3
echo "Build number: $BUILD_NUMBER" >> ${repo}/info.log
96efd14