Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move to manylinux_2_28 for aarch64, ppc64le builds. #1459

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/packages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,8 +59,8 @@ jobs:
include:
- {tag: manylinux2014, arch: x86_64}
- {tag: manylinux2014, arch: i686}
- {tag: manylinux_2_24, arch: aarch64}
- {tag: manylinux_2_24, arch: ppc64le}
- {tag: manylinux_2_28, arch: aarch64}
- {tag: manylinux_2_28, arch: ppc64le}
bryanculver marked this conversation as resolved.
Show resolved Hide resolved
- {tag: musllinux_1_1, arch: x86_64}
- {tag: musllinux_1_1, arch: i686}
- {tag: musllinux_1_1, arch: aarch64}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/bash

# Create manylinux_2_24 wheels for psycopg2
# Create manylinux_2_28 wheels for psycopg2
#
# Look at the .github/workflows/packages.yml file for hints about how to use it.

Copy link
Author

@bryanculver bryanculver Jun 7, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added the suggestion below which allowed strip_wheels to run and get to tests (and pass!)

Suggested change
PYTHON_VERSION="cp38"
pythonLocation=$(find /opt/python -maxdepth 1 -name "${PYTHON_VERSION}-*" -print -quit)
export PATH="${pythonLocation}/bin:${PATH}"

#...
+ for pyver in $PYVERS
+ pybin=/opt/python/cp39-cp39/bin
+ /opt/python/cp39-cp39/bin/pip install psycopg2-binary --no-index -f /app/psycopg2/dist/psycopg2-2.9.3
Looking in links: /app/psycopg2/dist/psycopg2-2.9.3
Processing ./dist/psycopg2-2.9.3/psycopg2_binary-2.9.3-cp39-cp39-manylinux_2_28_x86_64.whl
Installing collected packages: psycopg2-binary
Successfully installed psycopg2-binary-2.9.3
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
+ /opt/python/cp39-cp39/bin/python -c 'import psycopg2; print(psycopg2.__version__)'
2.9.3 (dt dec pq3 ext lo64)
+ /opt/python/cp39-cp39/bin/python -c 'import psycopg2; print(psycopg2.__libpq_version__)'
130005
+ /opt/python/cp39-cp39/bin/python -c 'import psycopg2; print(psycopg2.extensions.libpq_version())'
130005
+ [[ -n '' ]]
+ /opt/python/cp39-cp39/bin/python -c 'import tests; tests.unittest.main(defaultTest='\''tests.test_suite'\'')'
ss..................s.s.s..........ss.........ss.........s..ss.s...s.ssssssssssssssssss.................................ss................s.....s....s........s........s..s.s......s.s....................s.....s.......................................................................s.........................................................................................ss.......ss......................ss.s......................................s....sssss.sssssssssssss..................................................ssssssssss......................................................ss.....................................................s.........s.ssss.sssss...............s..............................................................
----------------------------------------------------------------------
Ran 738 tests in 4.848s

OK (skipped=96)
#...

Expand All @@ -27,11 +27,7 @@ if [[ "${PACKAGE_NAME:-}" ]]; then
fi

# Install prerequisite libraries
curl -k -s https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add -
echo "deb http://apt.postgresql.org/pub/repos/apt stretch-pgdg main" \
> /etc/apt/sources.list.d/pgdg.list
apt-get -y update
apt-get install -y libpq-dev
yum install -y libpq-devel
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Per Postgres docs, to get to libpq 14.

This does switch to using libpq5-devel which I don't know what that does to the support matrix. Tests seem to pass though!

Suggested change
yum install -y libpq-devel
dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
dnf -qy module disable postgresql
yum install -y libpq5-devel

Built and tested:

+ for pyver in $PYVERS
+ pybin=/opt/python/cp310-cp310/bin
+ /opt/python/cp310-cp310/bin/pip install psycopg2-binary --no-index -f /app/psycopg2/dist/psycopg2-2.9.3
Looking in links: /app/psycopg2/dist/psycopg2-2.9.3
Processing ./dist/psycopg2-2.9.3/psycopg2_binary-2.9.3-cp310-cp310-manylinux_2_28_x86_64.whl
Installing collected packages: psycopg2-binary
Successfully installed psycopg2-binary-2.9.3
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
+ /opt/python/cp310-cp310/bin/python -c 'import psycopg2; print(psycopg2.__version__)'
2.9.3 (dt dec pq3 ext lo64)
+ /opt/python/cp310-cp310/bin/python -c 'import psycopg2; print(psycopg2.__libpq_version__)'
140003
+ /opt/python/cp310-cp310/bin/python -c 'import psycopg2; print(psycopg2.extensions.libpq_version())'
140003
+ [[ -n '' ]]
+ /opt/python/cp310-cp310/bin/python -c 'import tests; tests.unittest.main(defaultTest='\''tests.test_suite'\'')'
ss..................s.s.s..........ss.........ss.........s..ss.s...s.ssssssssssssssssss.................................ss................s.....s....s........s........s..s.s......s.s....................s.....s.......................................................................s.........................................................................................ss.......ss......................ss.s......................................s....sssss.sssssssssssss..................................................ssssssssss......................................................ss.....................................................s.........s.ssss.sssss...............s..............................................................
----------------------------------------------------------------------
Ran 738 tests in 5.230s

OK (skipped=96)
#...


# Create the wheel packages
for pyver in $PYVERS; do
Expand Down