From 00c28d4a087d897af070339caf74b1ab6e48abae Mon Sep 17 00:00:00 2001 From: Thomas Ferreira de Lima Date: Tue, 18 Dec 2018 15:58:33 -0500 Subject: [PATCH] tested script for linux32 as well. Also added +x permission to fix_wheel --- ci-scripts/docker/README.md | 16 ++++++++++++++-- ci-scripts/docker/fix_wheel.sh | 0 ci-scripts/docker/manylinux-docker.sh | 11 +++++++---- 3 files changed, 21 insertions(+), 6 deletions(-) mode change 100644 => 100755 ci-scripts/docker/fix_wheel.sh diff --git a/ci-scripts/docker/README.md b/ci-scripts/docker/README.md index 054333ed7..5ec87ee41 100644 --- a/ci-scripts/docker/README.md +++ b/ci-scripts/docker/README.md @@ -113,13 +113,25 @@ for PYBIN in /opt/python/*/bin; do done # Bundle external shared libraries into the wheels via auditwheel -for whl in /persist/wheelhouse/*linux_x86_64.whl; do +for whl in /persist/wheelhouse/*linux_*.whl; do auditwheel repair "$whl" -w /persist/wheelhouse/ done # Fix each wheel generated by auditwheel -for whl in /persist/wheelhouse/*manylinux1_x86_64.whl; do +for whl in /persist/wheelhouse/*manylinux1_*.whl; do ./ci-scripts/docker/fix_wheel.sh "$whl" done +# Install packages and test +TEST_HOME=/persist/klayout/testdata +for PYBIN in /opt/python/*/bin/; do + "${PYBIN}/pip" install klayout --no-index -f /persist/wheelhouse + "${PYBIN}/python" $TEST_HOME/pymod/import_db.py + "${PYBIN}/python" $TEST_HOME/pymod/import_rdb.py + "${PYBIN}/python" $TEST_HOME/pymod/import_tl.py + ``` + +I tested step 1-5 with both quay.io/pypa/manylinux1_x86_64 and quay.io/pypa/manylinux1_i686. So far the only failure was with `cp27-cp27mu` which gave this import error: + +`ImportError: /opt/python/cp27-cp27mu/lib/python2.7/site-packages/klayout/.libs/lib_pya.so: undefined symbol: PyUnicodeUCS2_AsUTF8String` diff --git a/ci-scripts/docker/fix_wheel.sh b/ci-scripts/docker/fix_wheel.sh old mode 100644 new mode 100755 diff --git a/ci-scripts/docker/manylinux-docker.sh b/ci-scripts/docker/manylinux-docker.sh index f21d40d7f..a4b958853 100644 --- a/ci-scripts/docker/manylinux-docker.sh +++ b/ci-scripts/docker/manylinux-docker.sh @@ -19,17 +19,20 @@ for PYBIN in /opt/python/*/bin; do done # Bundle external shared libraries into the wheels via auditwheel -for whl in /persist/wheelhouse/*linux_x86_64.whl; do +for whl in /persist/wheelhouse/*linux_*.whl; do auditwheel repair "$whl" -w /persist/wheelhouse/ done # Fix each wheel generated by auditwheel -for whl in /persist/wheelhouse/*manylinux1_x86_64.whl; do +for whl in /persist/wheelhouse/*manylinux1_*.whl; do ./ci-scripts/docker/fix_wheel.sh "$whl" done # Install packages and test +TEST_HOME=/persist/klayout/testdata for PYBIN in /opt/python/*/bin/; do - "${PYBIN}/pip" install klayout --no-index -f /io/wheelhouse - "${PYBIN}/python" -m unittest testdata/pymod/import_db.py testdata/pymod/import_rdb.py testdata/pymod/import_tl.py + "${PYBIN}/pip" install klayout --no-index -f /persist/wheelhouse + "${PYBIN}/python" $TEST_HOME/pymod/import_db.py + "${PYBIN}/python" $TEST_HOME/pymod/import_rdb.py + "${PYBIN}/python" $TEST_HOME/pymod/import_tl.py done