Я работаю над проектом DevOps для клиента, который использует Python.Хотя я никогда не использовал это профессионально, я знаю несколько вещей, таких как использование virtualenv и pip - хотя и не очень подробно.
Когда я смотрел на промежуточный блок, который я пытался подготовить для запуска функционалатестовый набор, я увидел хаос.Тонны пакетов, установленных по всему миру, и те, которые установлены внутри virtualenv, не соответствующие требованиям. Текст проекта.Ладно, подумал я, там много уборки.Начиная с глобальных пакетов.
Однако я сразу столкнулся с проблемой:
➜ ~ pip uninstall PyYAML
Not uninstalling PyYAML at /usr/lib/python2.7/dist-packages, owned by OS
ОК, кто-то должен был сделать 'sudo pip install PyYAML'.Я думаю, что знаю, как это исправить:
➜ ~ sudo pip uninstall PyYAML
Not uninstalling PyYAML at /usr/lib/python2.7/dist-packages, owned by OS
Э-э, видимо, нет.Поиск выявил некоторые аналогичные конфликты, вызванные тем, что пользователи устанавливали пакеты в обход pip, но я не уверен - почему бы pip даже знал о них, если бы это было так?Если «другим» способом не является размещение их в том же месте, которое бы использовал pip, - но если это так, почему он не может быть удален под sudo?