Что делает "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папка при запуске команды.

Смотрите примечание здесь:

https://github.com/collective/templer.plone.localcommands/

Для запуска локальной команды paster она должна вызываться из того же каталога, в котором находится каталог.egg-info (или внутри него дочерний каталог). Если шаблонам не удается найти каталог.egg-info, он не может выполнить локальную команду. Paster использует местоположение каталога.egg-info, чтобы найти файл setup.cfg, который затем используется для определения наличия локальных точек ввода команд.

Убедитесь, что у вас есть каталог.egg-info, сгенерированный внутри вашего пакета, и что вы вызываете paster из того же места или из дочерней папки.

Другие вопросы по тегам