Я развертываю весь свой код Python как RPM в CentOS 6/7
+ Я использую коджи Fedora для их сборки.Все работает нормально, если вы не хотите использовать virtualenv
или Software Collections
Некоторые проблемы:
- Если я не использую SCL, я связан с версиями System Python -
Python 2.6
и 2.7
- Если я хочу использовать
Software Collections
для получения более нового Python, все созданные мной rpm бесполезны, поскольку они встроены в Koji
и затем устанавливаются в системный путь Python - Если я хочучтобы использовать
virtualenv
для разработки, опять же rpms не пригодится - представьте, у меня есть свой собственный модуль config_manager, распространяемый RPM.Я активирую virtualenv
, и у меня нет возможности установить мой модуль в правильном месте (потому что мой config_manager не находится в pip, а RPM устанавливается в системном расположении по умолчанию)
Любые предложения о том, каксправиться с этой ситуацией?Пока единственное, что я придумал, это установить мои модули в пользовательский каталог.Затем в моем основном исполняемом скрипте Python я включаю этот каталог в путь.
Таким образом, даже если кто-то находится в virtualenv
или Software Collection
, мой код не потерпит неудачу из-за отсутствующих зависимостей.Но тогда это может вызвать проблемы совместимости между версиями Python.
Есть ли способ решить эту проблему правильно?Любые советы?