Mercurial > hg
view contrib/packaging/dockerrpm @ 47305:33e7508b0ae9
hg-cpython: fix new occuring TypeError
dd339191f2dc introduced a minor refactoring of error types that highlighted
a fragile error creation mechanism that was in place in the Rust `MixedIndex`.
`PyErr::from_instance` also accepts a Python class, as long as it's an
`Exception` class. Before the aforementioned commit, we never ran into a case
where this duck-typing mechanism failed. We rectify this behavior by doing the
instantiation ourselves.
Differential Revision: https://phab.mercurial-scm.org/D10764
author | Raphaël Gomès <rgomes@octobus.net> |
---|---|
date | Fri, 21 May 2021 17:37:53 +0200 |
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"