dockerrpm
55 lines
| 1.4 KiB
| text/plain
|
TextLexer
Gregory Szorc
|
r38024 | #!/bin/bash -e | ||
BUILDDIR=$(dirname $0) | ||||
export ROOTDIR=$(cd $BUILDDIR/../..; pwd) | ||||
PLATFORM="$1" | ||||
shift # extra params are passed to buildrpm | ||||
Mads Kiilerich
|
r43676 | DOCKERFILE="$PLATFORM" | ||
OS_RELEASE="${PLATFORM//[a-z]/}" | ||||
case "$PLATFORM" in | ||||
fedora*) | ||||
DOCKERFILE="${PLATFORM//[0-9]/}.template" | ||||
;; | ||||
esac | ||||
Gregory Szorc
|
r38476 | DOCKER=$($BUILDDIR/hg-docker docker-path) | ||
CONTAINER=hg-docker-$PLATFORM | ||||
Mathias De Mare
|
r49154 | DOCKERUID=$(id -u) | ||
DOCKERGID=$(id -g) | ||||
Mathias De Mare
|
r41270 | |||
Mads Kiilerich
|
r43676 | $BUILDDIR/hg-docker build \ | ||
--build-arg UID=$DOCKERUID \ | ||||
--build-arg GID=$DOCKERGID \ | ||||
--build-arg OS_RELEASE=${OS_RELEASE:-latest} \ | ||||
$BUILDDIR/docker/$DOCKERFILE $CONTAINER | ||||
Gregory Szorc
|
r38024 | |||
RPMBUILDDIR=$ROOTDIR/packages/$PLATFORM | ||||
Mads Kiilerich
|
r43672 | mkdir -p $RPMBUILDDIR | ||
Gregory Szorc
|
r38033 | $ROOTDIR/contrib/packaging/buildrpm --rpmbuilddir $RPMBUILDDIR --prepare $* | ||
Gregory Szorc
|
r38024 | |||
DSHARED=/mnt/shared | ||||
Gregory Szorc
|
r38475 | DBUILDUSER=build | ||
Gregory Szorc
|
r38024 | $DOCKER run -e http_proxy -e https_proxy -u $DBUILDUSER --rm -v $RPMBUILDDIR:$DSHARED $CONTAINER \ | ||
rpmbuild --define "_topdir $DSHARED" -ba $DSHARED/SPECS/mercurial.spec --clean | ||||
$DOCKER run -e http_proxy -e https_proxy -u $DBUILDUSER --rm -v $RPMBUILDDIR:$DSHARED $CONTAINER \ | ||||
createrepo $DSHARED | ||||
cat << EOF > $RPMBUILDDIR/mercurial.repo | ||||
# Place this file in /etc/yum.repos.d/mercurial.repo | ||||
[mercurial] | ||||
name=Mercurial packages for $PLATFORM | ||||
# baseurl=file://$RPMBUILDDIR/ | ||||
baseurl=http://hg.example.com/build/$PLATFORM/ | ||||
skip_if_unavailable=True | ||||
gpgcheck=0 | ||||
enabled=1 | ||||
EOF | ||||
echo | ||||
echo "Build complete - results can be found in $RPMBUILDDIR" | ||||