Что делает "paster addcontent" неудачным для пакета, созданного с помощью шаблона Zopeskel "архетип"?
Вот ситуация:
- свежий Plone 4.2 buildout
- свежий пакет, созданный с использованием Zopeskel 2.21.1 с шаблоном 'archetype' и настроенный в моей сборке с использованием mr.developer
Попытка добавить некоторые типы контента в мой пакет не удалась с помощью:
[ajung@dev1 nva.aktionsmittel]$ bin/paster addcontent
Command 'addcontent' not known (you may need to run setup.py egg_info)
Запуск setup.py egg_info не помог.
setup.py содержит:
setup.py: paster_plugins=["ZopeSkel"]
setup.cfg содержит:
[zopeskel]
template = archetype
В чем заключается магия локальных команд для того, чтобы заставить работать "paster addcontent"? В других контекстах это сработало как надо?!
2 ответа
ZopeSkel 2 выпуска
Вы следуете плохому учебнику. Пожалуйста, убедитесь, что
Вы следуете инструкциям, приведенным здесь http://collective-docs.readthedocs.org/en/latest/getstarted/paste.html - команда paster должна исходить из buildout
Если вы не переходите по ссылке выше, дайте ссылку на страницу, инструкциям которой вы следуете, и я могу сжечь эту страницу, поскольку она содержит вводящие в заблуждение инструкции.
Убедитесь, что используемый вами paster получен из buildout (из командной строки это не так).
Убедитесь, что ваше яйцо зарегистрировано в buildout правильно в
eggs =
разделУбедитесь, что ваш файл setup.py содержит необходимый шаблон http://collective-docs.readthedocs.org/en/latest/getstarted/paste.html (примечание: пример ZopeSkel 3+)
Это способ информировать paster о вашем яйце и его зависимостях, и, таким образом, локальные команды могут работать.
Выпуск ZopeSkel 3 (внешне не связанный)
В ZopeSkel недавно произошли изменения, означающие, что если вы используете ZopeSkel 3+, вы должны быть в src
папка при запуске команды.
Смотрите примечание здесь:
Для запуска локальной команды paster она должна вызываться из того же каталога, в котором находится каталог.egg-info (или внутри него дочерний каталог). Если шаблонам не удается найти каталог.egg-info, он не может выполнить локальную команду. Paster использует местоположение каталога.egg-info, чтобы найти файл setup.cfg, который затем используется для определения наличия локальных точек ввода команд.
Убедитесь, что у вас есть каталог.egg-info, сгенерированный внутри вашего пакета, и что вы вызываете paster из того же места или из дочерней папки.