...
We should no longer need src/externals, and thus not need `pegasus-config --python-externals`. For RPM and DEB packages setting PYTHONPATH would not be required at all. For binary tarballs we could ship setup.sh, like HTCondor that can set PYTHONPATH with simply `pegasus-config --python`.
Pros
- Eliminates manual management of python dependencies in src/externals
- Eliminates need to set PYTHONPATH for RPM/DEB packages etc.
- Easy to add new packages.
Code Block | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
# https://stackoverflow.com/a/48285243 cd pegasus-src/lib/pegasus/python/ # Debian 9 docker run -i --rm -w /srv -v `pwd`:/srv debian:9 bash -s <<EOT apt-get update && apt-get -y install python-pip python-setuptools debhelper pip install stdeb rm -rf ./x pip download --no-binary=:all: . -d x cd x tar zxvf pika-1.1.0.tar.gz cd pika-1.1.0 python setup.py --command-packages=stdeb.command bdist_deb EOT # CentOS 7 docker run -i --rm -w /srv -v `pwd`:/srv centos:7 bash -s <<EOT yum -y install epel-release yum -y install python36-pip python36-setuptools rpm-build rm -rf ./x pip download --no-binary=:all: . -d x cd x tar zxvf pika-1.1.0.tar.gz cd pika-1.1.0 python3 setup.py bdist --formats=rpm |
...