Mercurial > hg
view contrib/packaging/build-linux-wheels.sh @ 43535:8b533de0429d
index: use `index.has_node` in `revlog.addrevision`
Differential Revision: https://phab.mercurial-scm.org/D7323
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Sun, 03 Nov 2019 00:05:20 +0100 |
parents | 6f5b4ceea95b |
children |
line wrap: on
line source
#!/bin/bash # This file is directly inspired by # https://github.com/pypa/python-manylinux-demo/blob/master/travis/build-wheels.sh set -e -x PYTHON_TARGETS=$(ls -d /opt/python/cp27*/bin) # Create an user for the tests useradd hgbuilder # Bypass uid/gid problems cp -R /src /io && chown -R hgbuilder:hgbuilder /io # Compile wheels for Python 2.X for PYBIN in $PYTHON_TARGETS; do "${PYBIN}/pip" wheel /io/ -w wheelhouse/ done # Bundle external shared libraries into the wheels with # auditwheel (https://github.com/pypa/auditwheel) repair. # It also fix the ABI tag on the wheel making it pip installable. for whl in wheelhouse/*.whl; do auditwheel repair "$whl" -w /src/wheelhouse/ done # Install packages and run the tests for all Python versions cd /io/tests/ for PYBIN in $PYTHON_TARGETS; do # Install mercurial wheel as root "${PYBIN}/pip" install mercurial --no-index -f /src/wheelhouse # But run tests as hgbuilder user (non-root) su hgbuilder -c "\"${PYBIN}/python\" /io/tests/run-tests.py --with-hg=\"${PYBIN}/hg\" --blacklist=/io/contrib/packaging/linux-wheel-centos5-blacklist" done