Options:
[--debian=distros]
[--ubuntu=distros]
+ [--verbose]
[--upload]
EOF
exit $1
}
-set -x
D0=`dirname $0`
ID_DEB_BUILD=`cd $D0; pwd`
--centos=*)
CENTOS_DIST_A=$optarg
;;
- --concurrency=*)
- concurrency=$optarg
- ;;
--upload)
upload=true
;;
+ --verbose)
+ set -x
+ ;;
-*)
do_help=yes
;;
if $centos; then
for dist in ${CENTOS_DIST}; do
case $dist in
+ centos5)
+ F=5.5;;
centos6)
- D=6;;
+ F=6;;
centos7)
- D=7;;
+ F=7;;
*)
echo "$dist not supported"
exit 1
esac
- ssh ${UPLOAD_HOST} "mkdir -p ${UPLOAD_PATH}/${PRODUCT}/redhat/centos/$D/RPMS"
- ssh ${UPLOAD_HOST} "mkdir -p ${UPLOAD_PATH}/${PRODUCT}/redhat/centos/$D/SRPMS"
- scp -r build/centos/$dist/rpmbuild/RPMS ${UPLOAD_URI}/redhat/centos/$D
- scp -r build/centos/$dist/rpmbuild/SRPMS ${UPLOAD_URI}/redhat/centos/$D
+ ssh ${UPLOAD_HOST} "mkdir -p ${UPLOAD_PATH}/${PRODUCT}/redhat/centos/$F/RPMS"
+ ssh ${UPLOAD_HOST} "mkdir -p ${UPLOAD_PATH}/${PRODUCT}/redhat/centos/$F/SRPMS"
+ scp -r build/centos/$dist/rpmbuild/RPMS ${UPLOAD_URI}/redhat/centos/$F
+ scp -r build/centos/$dist/rpmbuild/SRPMS ${UPLOAD_URI}/redhat/centos/$F
done
if ! ssh ${UPLOAD_HOST} "sudo -n /home/indexdata/proj/git-tools/update-archive/update-yum-archive.sh" >yum-update.log 2>&1; then
echo "update-yum-archive.sh failed; inspect yum-update.log"
if $centos; then
for dist in ${CENTOS_DIST}; do
- sudo rm -fr build/centos/$dist
+ test -d build/centos/$dist && sudo rm -fr build/centos/$dist
mkdir -p build/centos/$dist/rpmbuild
mkdir -p build/centos/$dist/rpmbuild/BUILD
mkdir -p build/centos/$dist/rpmbuild/BUILDROOT
if test "${DEBIAN_DIST}"; then
for dist in ${DEBIAN_DIST}; do
- sudo rm -fr build/debian/$dist
+ test -f build/debian/$dist && sudo rm -fr build/debian/$dist
mkdir -p build/debian
cp -a deb-src build/debian/$dist
cp ${ID_DEB_BUILD}/in-docker.sh build/debian/$dist
if test "${CENTOS_DIST}"; then
for dist in ${CENTOS_DIST}; do
case $dist in
+ centos5)
+ F=5.5
+ D=5;;
centos6)
+ F=6
D=6;;
centos7)
+ F=7
D=7;;
*)
echo "$dist not supported"
exit 1
esac
cd build/centos/$dist
- docker run -it --rm -v "$PWD:/build" -w /build/rpmbuild centos:$D ../in-docker-rpm.sh centos $D
+
+ echo "FROM centos:$D" >Dockerfile
+ echo "RUN yum install -y wget yum-utils redhat-rpm-config rpm-build gcc gcc-c++ make" >>Dockerfile
+ echo "RUN rpm --import http://ftp.indexdata.com/pub/yum/centos/$F/RPM-GPG-KEY-indexdata" >>Dockerfile
+ echo "RUN wget http://ftp.indexdata.com/pub/yum/centos/$F/indexdata.repo -P /etc/yum.repos.d/" >>Dockerfile
+ echo 'ENTRYPOINT ["/bin/sh", "-c"]' >>Dockerfile
+ docker build -t indexdata-build-centos-$D .
+ echo -n "$dist "
+ docker run --rm -v "$PWD:/build" -w /build/rpmbuild indexdata-build-centos-$D ../in-docker-rpm.sh >log 2>&1
+ if test $? -eq 0; then
+ echo Done
+ else
+ echo "Fail. Inspect build/centos/$dist/log"
+ exit 1
+ fi
cd ../../..
done
fi
if test "${DEBIAN_DIST}"; then
for dist in ${DEBIAN_DIST}; do
cd build/debian/$dist
- docker run -it --rm -v "$PWD:/build" -w /build/$PRODUCT-$VERSION debian:$dist ../in-docker.sh debian $dist
+ echo "FROM debian:$dist" >Dockerfile
+ echo 'RUN apt-get update && apt-get -q install -y wget devscripts equivs' >>Dockerfile
+ echo 'RUN wget -q -O - http://ftp.indexdata.dk/debian/indexdata.asc|apt-key add -' >>Dockerfile
+ echo "RUN echo \"deb http://ftp.indexdata.dk/debian $dist main\" >/etc/apt/sources.list.d/indexdata.list" >>Dockerfile
+ docker build -t indexdata-build-debian-$dist .
+ echo -n "Debian $dist "
+ docker run --rm -v "$PWD:/build" -w /build/$PRODUCT-$VERSION indexdata-build-debian-$dist ../in-docker.sh >log 2>&1
+ if test $? -eq 0; then
+ echo Done
+ else
+ echo "Fail. Inspect build/debian/$dist/log"
+ exit 1
+ fi
cd ../../..
done
fi
if test "${UBUNTU_DIST}"; then
for dist in ${UBUNTU_DIST}; do
cd build/ubuntu/$dist
- docker run -it --rm -v "$PWD:/build" -w /build/$PRODUCT-$VERSION ubuntu:$dist ../in-docker.sh ubuntu $dist
+ echo "FROM ubuntu:$dist" >Dockerfile
+ echo 'RUN apt-get update && apt-get -q install -y wget devscripts equivs' >>Dockerfile
+ echo 'RUN wget -q -O - http://ftp.indexdata.dk/debian/indexdata.asc|apt-key add -' >>Dockerfile
+ echo "RUN echo \"deb http://ftp.indexdata.dk/ubuntu $dist main\" >/etc/apt/sources.list.d/indexdata.list" >>Dockerfile
+ docker build -t indexdata-build-ubuntu-$dist .
+ echo -n "Ubuntu $dist "
+ docker run --rm -v "$PWD:/build" -w /build/$PRODUCT-$VERSION indexdata-build-ubuntu-$dist ../in-docker.sh >log 2>&1
+ if test $? -eq 0; then
+ echo Done
+ else
+ echo "Fail. Inspect build/ubuntu/$dist/log"
+ exit 1
+ fi
cd ../../..
done
fi