Mercurial > hg
view contrib/packaging/dockerrpm @ 48313:bc04a7615c96 stable
tests: allow the true command to be provided by coreutils
The `true` command is sometimes provided as a symbolic link to the `coreutils`
single binary. This is the case on NixOS, on which the test was failing because
the symbolic link fully resolves to the latter name, equally valid but not
previously accepted by the test's golden output.
Differential Revision: https://phab.mercurial-scm.org/D11740
author | pacien <pacien.trangirard@pacien.net> |
---|---|
date | Tue, 09 Nov 2021 02:16:43 +0100 |
parents | e66a3bfcb19b |
children | 4713bcf78037 |
line wrap: on
line source
#!/bin/bash -e BUILDDIR=$(dirname $0) export ROOTDIR=$(cd $BUILDDIR/../..; pwd) PLATFORM="$1" shift # extra params are passed to buildrpm DOCKERFILE="$PLATFORM" OS_RELEASE="${PLATFORM//[a-z]/}" case "$PLATFORM" in fedora*) DOCKERFILE="${PLATFORM//[0-9]/}.template" ;; esac DOCKER=$($BUILDDIR/hg-docker docker-path) CONTAINER=hg-docker-$PLATFORM if [[ -z "${HG_DOCKER_OWN_USER}" ]]; then DOCKERUID=1000 DOCKERGID=1000 else DOCKERUID=$(id -u) DOCKERGID=$(id -g) fi $BUILDDIR/hg-docker build \ --build-arg UID=$DOCKERUID \ --build-arg GID=$DOCKERGID \ --build-arg OS_RELEASE=${OS_RELEASE:-latest} \ $BUILDDIR/docker/$DOCKERFILE $CONTAINER RPMBUILDDIR=$ROOTDIR/packages/$PLATFORM mkdir -p $RPMBUILDDIR $ROOTDIR/contrib/packaging/buildrpm --rpmbuilddir $RPMBUILDDIR --prepare $* DSHARED=/mnt/shared DBUILDUSER=build $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"