Вы можете очень легко создать файл зависимостей с помощью pip, что будет означать, что между серверами будут поддерживаться правильные версии каждого приложения
# Save dependancies to a file
pip freeze > requirement_file.txt
создает файл, например:
django==1.3
django-tagging
markdown
...
, который позже можно использовать для переустановки перечисленных приложений на другом сервере
# Install all dependancies in the file
pip install -r requirement_file.txt
Это приятный и простой подход.Вы можете усложнить работу с zc.buildout
http://pypi.python.org/pypi/zc.buildout
, который помогает управлять пакетами (python и non-python) с помощью сценариев (вы создаете «получатели», содержащие подробную информацию онеобходимые вам пакеты)
Если вам нужен более широкий контроль над установками сервера, вы можете использовать 'puppet' или 'chef'
http://projects.puppetlabs.com/projects/1/wiki/Big_Picture http://wiki.opscode.com/display/chef/Chef+Server
которые предназначены для автоматизации и развертывания не только зависимостей, но и целых серверов
Мне не нужно было использовать более простых файлов требований к пипсам, но другие варианты хороши, если вам нужно больше.
РЕДАКТИРОВАТЬ
Сохранение собственной версии приложений в пути к корню / питону вашего проекта может стать громоздким и трудным для отслеживания, я бы предложил использовать файл требований к пунктам.