|
1 | 1 | #!/bin/bash -ex |
2 | | -cd /pymongo |
| 2 | +cd /src |
| 3 | + |
| 4 | +# Get access to testinstall. |
| 5 | +. .evergreen/utils.sh |
| 6 | + |
| 7 | +# Create temp directory for validated files. |
| 8 | +rm -rf validdist |
| 9 | +mkdir -p validdist |
| 10 | +mv dist/* validdist || true |
3 | 11 |
|
4 | 12 | # Compile wheels |
5 | | -for PYBIN in /opt/python/*/bin; do |
| 13 | +for PYTHON in /opt/python/*/bin/python; do |
6 | 14 | # Skip Python 3.3 and 3.9. |
7 | | - if [[ "$PYBIN" == *"cp33"* || "$PYBIN" == *"cp39"* ]]; then |
| 15 | + if [[ "$PYTHON" == *"cp33"* || "$PYTHON" == *"cp39"* ]]; then |
8 | 16 | continue |
9 | 17 | fi |
10 | 18 | # https://github.com/pypa/manylinux/issues/49 |
11 | 19 | rm -rf build |
12 | | - ${PYBIN}/python setup.py bdist_wheel |
13 | | -done |
| 20 | + $PYTHON setup.py bdist_wheel |
| 21 | + rm -rf build |
14 | 22 |
|
15 | | -# https://github.com/pypa/manylinux/issues/49 |
16 | | -rm -rf build |
| 23 | + # Audit wheels and write multilinux tag |
| 24 | + for whl in dist/*.whl; do |
| 25 | + # Skip already built manylinux1 wheels. |
| 26 | + if [[ "$whl" != *"manylinux"* ]]; then |
| 27 | + auditwheel repair $whl -w dist |
| 28 | + rm $whl |
| 29 | + fi |
| 30 | + done |
17 | 31 |
|
18 | | -# Audit wheels and write multilinux1 tag |
19 | | -for whl in dist/*.whl; do |
20 | | - # Skip already built manylinux1 wheels. |
21 | | - if [[ "$whl" != *"manylinux"* ]]; then |
22 | | - auditwheel repair $whl -w dist |
23 | | - rm $whl |
24 | | - fi |
| 32 | + # Test that each wheel is installable. |
| 33 | + # Test without virtualenv because it's not present on manylinux containers. |
| 34 | + for release in dist/*; do |
| 35 | + testinstall $PYTHON $release "without-virtualenv" |
| 36 | + mv $release validdist/ |
| 37 | + done |
25 | 38 | done |
| 39 | + |
| 40 | +mv validdist/* dist |
| 41 | +rm -rf validdist |
| 42 | +ls dist |
0 commit comments