Как перейти с virtualenv на buildout?

I ' Я пытаюсь переместить проект из virtualenv в buildout , но я не думаю, что понял всю концепцию buildout . Все учебники, которые я нашел, обсуждают buildout в контексте использования его с Zope , который я не использую и поэтому не вижу, как продолжить.

My Структура файла с virtualenv выглядит следующим образом:

myapp/
  app.py

, который запускается с использованием / path / to / venvs / myapp / bin / python /path/to/myapp/script.py.

С помощью сборки моя файловая структура:

myapp/
  app.py
  bootstrap.py
  buildout.cfg

Запуск python bootstrap.py и bin / buildout дает мне эти дополнительные файлы:

myapp/
  bin/
    buildout
  eggs/
    setuptools-0.6c12dev_r80622-py2.6.egg
    tornado-1.0.1-py2.6.egg
  parts/

На данный момент я не уверен, как "запустить" мое приложение.

Советы?

10
задан Phillip B Oldham 20 August 2010 в 14:46
поделиться

2 ответа

Следующий рецепт установит торнадо как яйцо и создаст скрипт python и myapp в каталоге bin с правильным путем поиска, чтобы найти яйцо торнадо.

[buildout] 
parts = python 
eggs = tornado 
extra-paths = ${buildout:directory}

[python] 
recipe = zc.recipe.egg 
interpreter = python 
eggs = ${buildout:eggs} 
entry-points = myapp=app:main 
extra-paths = ${buildout:extra-paths}
3
ответ дан 4 December 2019 в 03:14
поделиться

Buildout и virtualenv на самом деле косвенно связаны. Buildout - это действительно ограниченное и контролируемое развертывание программного обеспечения, а virtualenv - это инкапсуляция среды, в которой работает программное обеспечение Python. Buildout предоставляет то, что virtualenv делает внутри себя, а затем немного расширяет его.

Думайте о buildout как о наборе рецептов того, как взять ваш код и разместить его на удаленной системе, готовой к запуску. Часть этого процесса начинается с создания чистой песочницы (которую также может предоставить virtualenv), а затем добавления библиотек, частей и частей по мере необходимости.

Я не эксперт по построению, но я ожидал, что ваш основной код Python будет отображаться в разделе «bin» в структуре каталогов, и что вы каким-то образом будете вызывать его оттуда.

3
ответ дан 4 December 2019 в 03:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: