diff options
author | Forest Gregg <fgregg@users.noreply.github.com> | 2017-04-21 14:57:10 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-04-21 14:57:10 -0500 |
commit | 9aa5713a449a181e050a0e02d044cbc4017a146c (patch) | |
tree | 989a2486e95093fc460a679d5ab2d09b30166492 | |
parent | 76abebe7a11b092fdc3e39b1bd44cc14d4cfa3cc (diff) | |
parent | 37994ff025b8799910edfe2948b66f7c4de7a4a0 (diff) | |
download | zope-interface-9aa5713a449a181e050a0e02d044cbc4017a146c.tar.gz |
Merge pull request #78 from zopefoundation/manylinux
CI setup for manylinux wheels on tagged commit
-rwxr-xr-x | .manylinux-install.sh | 21 | ||||
-rw-r--r-- | .manylinux.sh | 9 | ||||
-rw-r--r-- | .travis.yml | 15 |
3 files changed, 44 insertions, 1 deletions
diff --git a/.manylinux-install.sh b/.manylinux-install.sh new file mode 100755 index 0000000..c98313b --- /dev/null +++ b/.manylinux-install.sh @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +set -e -x + +# Compile wheels +for PYBIN in /opt/python/*/bin; do + if [[ "${PYBIN}" == *"cp27"* ]] || \ + [[ "${PYBIN}" == *"cp33"* ]] || \ + [[ "${PYBIN}" == *"cp34"* ]] || \ + [[ "${PYBIN}" == *"cp35"* ]] || \ + [[ "${PYBIN}" == *"cp36"* ]]; then + "${PYBIN}/pip" install -e /io/ + "${PYBIN}/pip" wheel /io/ -w wheelhouse/ + fi +done + +# Bundle external shared libraries into the wheels +for whl in wheelhouse/zope.interface*.whl; do + auditwheel repair "$whl" -w /io/wheelhouse/ +done + diff --git a/.manylinux.sh b/.manylinux.sh new file mode 100644 index 0000000..037a3b2 --- /dev/null +++ b/.manylinux.sh @@ -0,0 +1,9 @@ +#!/usr/bin/env bash + +set -e -x + +docker pull $DOCKER_IMAGE + +docker run --rm -v `pwd`:/io $DOCKER_IMAGE $PRE_CMD /io/.manylinux-install.sh + +pip install twine && twine upload -u zope.wheelbuilder -p $PYPIPASSWORD wheelhouse/* diff --git a/.travis.yml b/.travis.yml index f9683ff..dbc7a79 100644 --- a/.travis.yml +++ b/.travis.yml @@ -31,11 +31,24 @@ matrix: - os: osx language: generic env: TERRYFY_PYTHON='macpython 3.6.0' + - services: + - docker + env: DOCKER_IMAGE=quay.io/pypa/manylinux1_x86_64 + before_install: + - if [[ $TRAVIS_TAG ]]; then bash .manylinux.sh; fi + - exit 0 + - services: + - docker + env: + - DOCKER_IMAGE=quay.io/pypa/manylinux1_i686 + - PRE_CMD=linux32 + before_install: + - if [[ $TRAVIS_TAG ]]; then bash .manylinux.sh; fi + - exit 0 before_install: - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then git clone https://github.com/MacPython/terryfy; fi - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then source terryfy/travis_tools.sh; fi - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then get_python_environment $TERRYFY_PYTHON venv; fi - - if [[ "$TERRYFY_PYTHON" == "homebrew 3" ]]; then alias pip=`which pip3` ; fi install: - pip install -e .[test] script: |