5 Usage: docker-build.sh [OPTIONS]
15 ID_DEB_BUILD=`cd $D0; pwd`
17 UPLOAD_HOST=${UPLOAD_HOST:=ftp.indexdata.dk}
18 UPLOAD_PATH=${UPLOAD_PATH:=/home/ftp/pub}
20 while test $# -gt 0; do
22 -*=*) optarg=`echo "$1" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
47 if test -f IDMETA; then
53 if test "$DEBIAN_DIST_A" -o "$UBUNTU_DIST_A" -o "$CENTOS_DIST_A"; then
54 DEBIAN_DIST=$DEBIAN_DIST_A
55 UBUNTU_DIST=$UBUNTU_DIST_A
56 CENTOS_DIST=$CENTOS_DIST_A
59 if test "$CENTOS_DIST"; then
60 echo "CentOS not yet supported"
67 if test "$DEBIAN_DIST" -o "$UBUNTU_DIST"; then
69 DNAME=`awk '/Source:/ {print $2}' debian/control`
70 if test "$NAME" -a "$NAME" != "$DNAME"; then
71 echo "NAME in IDMETA ($NAME) does not match debian/control ($DNAME)"
80 UPLOAD_URI=${UPLOAD_HOST}:${UPLOAD_PATH}/${PRODUCT}
81 echo "Uploading to ${UPLOAD_URI}"
83 if test -n "${DEBIAN_DIST}"; then
84 for dist in ${DEBIAN_DIST}; do
85 ssh ${UPLOAD_HOST} "mkdir -p ${UPLOAD_PATH}/${PRODUCT}/debian/${dist}"
86 if ! scp build/debian/${dist}/* ${UPLOAD_URI}/debian/${dist}; then
87 echo "Upload failed for $dist"
92 if test -n "${UBUNTU_DIST}"; then
93 for dist in ${UBUNTU_DIST}; do
94 ssh ${UPLOAD_HOST} "mkdir -p ${UPLOAD_PATH}/${PRODUCT}/ubuntu/${dist}"
95 if ! scp build/ubuntu/${dist}/* ${UPLOAD_URI}/ubuntu/${dist}; then
96 echo "Upload failed for $dist"
101 if ! ssh ${UPLOAD_HOST} "sudo -n /home/indexdata/proj/git-tools/update-archive/update-archive.sh --ubuntu=\"${UBUNTU_DIST}\" --debian=\"${DEBIAN_DIST}\""; then
102 echo "update-archive.sh failed"
106 echo "Upload successful - we hope"
111 MKDEBSRC=${ID_DEB_BUILD}/id-mk-deb-src.sh
112 if test ! -x $MKDEBSRC; then
113 echo "$MKDEBSRC not found"
116 cp ${ID_DEB_BUILD}/in-docker.sh .
117 if ! ${ID_DEB_BUILD}/id-mk-deb-changelog.sh; then
118 echo "id-mk-deb-changelog.sh failed"
120 if ! ${MKDEBSRC}; then
121 echo "id-mk-deb-src.sh failed"
125 if test -f "$f"; then
130 if test -z "$DSC"; then
131 echo "${DSC} does not exist"
135 if test "${DEBIAN_DIST}"; then
136 for dist in ${DEBIAN_DIST}; do
137 sudo rm -fr build/debian/$dist
138 mkdir -p build/debian
139 cp -a deb-src build/debian/$dist
140 cp ${ID_DEB_BUILD}/in-docker.sh build/debian/$dist
143 if test "${UBUNTU_DIST}"; then
144 for dist in ${UBUNTU_DIST}; do
145 sudo rm -fr build/ubuntu/$dist
146 mkdir -p build/ubuntu
147 cp -a deb-src build/ubuntu/$dist
148 cp ${ID_DEB_BUILD}/in-docker.sh build/ubuntu/$dist
151 if test "${DEBIAN_DIST}"; then
152 for dist in ${DEBIAN_DIST}; do
153 cd build/debian/$dist
154 docker run -it --rm -v "$PWD:/build" -w /build/$PRODUCT-$VERSION debian:$dist ../in-docker.sh debian $dist
158 if test "${UBUNTU_DIST}"; then
159 for dist in ${UBUNTU_DIST}; do
160 cd build/ubuntu/$dist
161 docker run -it --rm -v "$PWD:/build" -w /build/$PRODUCT-$VERSION ubuntu:$dist ../in-docker.sh ubuntu $dist