Mercurial > hg
view contrib/build-linux-wheels.sh @ 35391:0432e54f4dbe
run-tests: stop automatically adding a (glob) for bundle backup lines
This is the first step to dropping the existing globs for '\' matches, now that
it is handled automatically. Instead of just dropping it, this pattern is now
used to convert to '/' paths, to reduce the amount of manual cleanup required
when creating tests on Windows.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Sun, 10 Dec 2017 19:21:48 -0500 |
parents | 637267114513 |
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/linux-wheel-centos5-blacklist" done