Автоматизировать paster create -t plone3_buildout
Я хочу автоматизировать процесс plone3_buildout.
Объяснение: По умолчанию (тот, который я использую) способ построения сайта Plone использует paster, вот так:
paster create -t plone3_buildout
Это задает мне несколько вопросов, а затем создать по умолчанию buildout
для сайта.
Что я хочу: я хочу автоматизировать этот процесс, используя buildout
, мой buildout
выполнит это paster
Команда, введите мои предварительно сконфигурированные значения для пастера.
Я не нашел рецепт, который может сделать это. Если у кого-то есть идея, как это сделать, пожалуйста, поделитесь информацией.
Если есть рецепт, который может передавать значения интерактивным командам (с известным выводом, как с командой plone3_buildout), это также будет полезно.
2 ответа
paster create
команда может принять --config
вариант. Это позволяет создавать или использовать файл с ответами на вопросы.
$ paster create -t plone3_buildout --config=saved.cfg my-buildout
...
answer questions
...
Теперь будет buildout.config
файл в текущем каталоге.
$ cat saved.cfg
[pastescript]
eggifiedplone__eval__ = True
zope_user = admin
expert_mode = all
zope2_install =
plone_products_install =
tarballs__eval__ = False
egg_plugins__eval__ = []
plone_version = 3.3.4
debug_mode = off
plus = +
dot = .
zope_password =
http_port__eval__ = 8080
egg = test_buildout
z29tarballs__eval__ = False
eggifiedzope__eval__ = False
verbose_security = off
Вы можете изменить этот файл и запустить paster с помощью той же команды.
$ paster create -t plone3_buildout --config=saved.cfg my-new-buildout
На этот раз он не задаст вам никаких вопросов. Все ответы придут из конфигурационного файла. В последней версии ZopeSkel (2.15+) также есть способ сохранить эти настройки в $HOME/.zopeskel
,
Существует утилита под названием "ожидание", предназначенная для автоматизации интерактивных операций командной строки.
Другой подход заключается в изменении или клонировании и настройке сценария и шаблона plone3_buildout в пакете ZopeSkel.
Однако в этот момент, если вы жестко программируете все переменные, вы также можете создать компоновку один раз, вставить в систему управления версиями и скопировать / клонировать ее для создания новых экземпляров.