Назад | Перейти на главную страницу

Проблемы с развертыванием stxnext.static в plone 3.3.5

У меня проблемы с установкой stxnext.staticdeployment в Plone 3.3.5 на (устаревшем) сервере Suse Linux.

Мои шаги:

  1. чистая установка Plone 3.3.5 из унифицированный установщик unix
  2. добавление stxnext.staticdeployment к eggs и zcml раздел согласно инструкциям
  3. Бег buildout сценарий
  4. запуск zope с начальным пустым сайтом Plone

Все работает хорошо, кроме последнего шага, где я получаю следующие ошибки времени выполнения:

ERROR Five Could not import Product Products.CMFPlone
ERROR Application Couldn't install Five

Я что-то не так делаю или меня укусил баг в stxnext.staticdeployment?

Вот это bin/buildout вывод:

./bin/buildout 
Updating zope2.
Updating fake eggs
Updating productdistros.
Installing instance.
Updating zopepy.
Updating zopeskel.
Updating chown.
chown: Running chmod 600 .installed.cfg
Updating backup.
Updating unifiedinstaller.
Updating precompile.
  precompiling python scripts in /srv/pstatic/Plone-3.3.5/empty/products
  precompiling python scripts in /srv/pstatic/Plone-3.3.5/empty/parts/productdistros
*************** PICKED VERSIONS ****************
[versions]
BeautifulSoup = 3.2.1
five.globalrequest = 1.0
lxml = 3.2.3
stxnext.staticdeployment = 1.1
zope.globalrequest = 1.0

*************** /PICKED VERSIONS ***************

и instance.log Выслеживать

ERROR Five Could not import Product Products.CMFPlone
Traceback (most recent call last):
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/Products/Five/fiveconfigure.py", line 76, in loadProducts
    xmlconfig.include(_context, zcml, package=product)
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/xmlconfig.py", line 515, in include
    processxmlfile(f, context)
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/xmlconfig.py", line 370, in processxmlfile
    parser.parse(src)
  File "/srv/pstatic/Plone-3.3.5/Python-2.4/lib/python2.4/xml/sax/expatreader.py", line 107, in parse
    xmlreader.IncrementalParser.parse(self, source)
  File "/srv/pstatic/Plone-3.3.5/Python-2.4/lib/python2.4/xml/sax/xmlreader.py", line 123, in parse
    self.feed(buffer)
  File "/srv/pstatic/Plone-3.3.5/Python-2.4/lib/python2.4/xml/sax/expatreader.py", line 207, in feed
    self._parser.Parse(data, isFinal)
  File "/srv/pstatic/Plone-3.3.5/Python-2.4/lib/python2.4/xml/sax/expatreader.py", line 348, in end_element_ns
    self._cont_handler.endElementNS(pair, None)
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/xmlconfig.py", line 349, in endElementNS
    self.context.end()
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/config.py", line 544, in end
    self.stack.pop().finish()
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/config.py", line 692, in finish
    actions = self.handler(context, **args)
  File "/srv/pstatic/Plone-3.3.5/buildout-cache/eggs/z3c.autoinclude-0.3.1-py2.4.egg/z3c/autoinclude/zcml.py", line 104, in includePluginsDirective
    includeZCMLGroup(_context, info, filename)
  File "/srv/pstatic/Plone-3.3.5/buildout-cache/eggs/z3c.autoinclude-0.3.1-py2.4.egg/z3c/autoinclude/zcml.py", line 30, in includeZCMLGroup
    include(_context, filename, includable_package)
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/xmlconfig.py", line 515, in include
    processxmlfile(f, context)
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/xmlconfig.py", line 370, in processxmlfile
    parser.parse(src)
  File "/srv/pstatic/Plone-3.3.5/Python-2.4/lib/python2.4/xml/sax/expatreader.py", line 107, in parse
    xmlreader.IncrementalParser.parse(self, source)
  File "/srv/pstatic/Plone-3.3.5/Python-2.4/lib/python2.4/xml/sax/xmlreader.py", line 123, in parse
    self.feed(buffer)
  File "/srv/pstatic/Plone-3.3.5/Python-2.4/lib/python2.4/xml/sax/expatreader.py", line 207, in feed
    self._parser.Parse(data, isFinal)
  File "/srv/pstatic/Plone-3.3.5/Python-2.4/lib/python2.4/xml/sax/expatreader.py", line 348, in end_element_ns
    self._cont_handler.endElementNS(pair, None)
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/xmlconfig.py", line 349, in endElementNS
    self.context.end()
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/config.py", line 544, in end
    self.stack.pop().finish()
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/config.py", line 692, in finish
    actions = self.handler(context, **args)
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/xmlconfig.py", line 515, in include
    processxmlfile(f, context)
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/xmlconfig.py", line 370, in processxmlfile
    parser.parse(src)
  File "/srv/pstatic/Plone-3.3.5/Python-2.4/lib/python2.4/xml/sax/expatreader.py", line 107, in parse
    xmlreader.IncrementalParser.parse(self, source)
  File "/srv/pstatic/Plone-3.3.5/Python-2.4/lib/python2.4/xml/sax/xmlreader.py", line 123, in parse
    self.feed(buffer)
  File "/srv/pstatic/Plone-3.3.5/Python-2.4/lib/python2.4/xml/sax/expatreader.py", line 207, in feed
    self._parser.Parse(data, isFinal)
  File "/srv/pstatic/Plone-3.3.5/Python-2.4/lib/python2.4/xml/sax/expatreader.py", line 348, in end_element_ns
    self._cont_handler.endElementNS(pair, None)
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/xmlconfig.py", line 349, in endElementNS
    self.context.end()
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/config.py", line 544, in end
    self.stack.pop().finish()
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/config.py", line 691, in finish
    args = toargs(context, *self.argdata)
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/config.py", line 1383, in toargs
    args[str(name)] = field.fromUnicode(s)
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/fields.py", line 229, in fromUnicode
    v = vt.fromUnicode(s)
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/fields.py", line 139, in fromUnicode
    value = self.context.resolve(name)
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/config.py", line 184, in resolve
    mod = __import__(mname, *_import_chickens)
  File "/srv/pstatic/Plone-3.3.5/buildout-cache/eggs/stxnext.staticdeployment-1.1-py2.4.egg/stxnext/staticdeployment/adapters/transformations.py", line 28, in ?
    from plone.app.imaging.interfaces import IImageScaling
ZopeXMLConfigurationError: File "/srv/pstatic/Plone-3.3.5/buildout-cache/eggs/Plone-3.3.5-py2.4.egg/Products/CMFPlone/configure.zcml", line 116.4-116.60
    ZopeXMLConfigurationError: File "/srv/pstatic/Plone-3.3.5/buildout-cache/eggs/stxnext.staticdeployment-1.1-py2.4.egg/stxnext/staticdeployment/configure.zcml", line 15.4-15.34
    ZopeXMLConfigurationError: File "/srv/pstatic/Plone-3.3.5/buildout-cache/eggs/stxnext.staticdeployment-1.1-py2.4.egg/stxnext/staticdeployment/adapters/configure.zcml", line 5.4-10.10
    ImportError: No module named imaging.interfaces

и

ERROR Application Couldn't install Five
Traceback (most recent call last):
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/OFS/Application.py", line 786, in install_product
    initmethod(context)
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/Products/Five/__init__.py", line 28, in initialize
    zcml.load_site()
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/Products/Five/zcml.py", line 53, in load_site
    _context = xmlconfig.file(file)
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/xmlconfig.py", line 579, in file
    include(context, name, package)
  File "/srv/pstatic/Plone-3.3.5/Zope-2.10.11-final-py2.4/lib/python/zope/configuration/xmlconfig.py", line 517, in include
    assert _context.stack[-1].context is context
AssertionError

Похоже, что в stxnext.staticdeployment отсутствует зависимость plone.app.imaging, которая по умолчанию присутствует в Plone 4, но в Plone 3.x ее необходимо установить явно.

Я разместил этот выпуск здесь: https://github.com/collective/stxnext.staticdeployment/issues/13 но чтобы обойти эту проблему, просто убедитесь, что установлен plone.app.imaging.