@tkimnguyen, thanks for the welcome.
Code samples as screenshots: yeah, I got carried away.
Cloning news item... that was my first step, but stopping there was not suitable for a few reasons. Moving on.
buildout.cfg:
[buildout]
extends =
base.cfg
versions.cfg
# http://dist.plone.org/release/5.0.7/versions.cfg
find-links +=
http://dist.plone.org/release/5.0.7
effective-user = plone_daemon
buildout-user = plone_buildout
need-sudo = yes
eggs =
Plone
Pillow
Products.PloneHotfix20160830
Products.PloneHotfix20161129
# nhus.blog.post
zcml =
# plone.reload
develop =
# src/nhus.blog.post
var-dir=${buildout:directory}/var
backups-dir=${buildout:var-dir}
user=khhjgh:asdghjkl
deprecation-warnings = off
verbose-security = off
parts =
zeoserver
client1
backup
zopepy
unifiedinstaller
precompiler
setpermissions
[zeoserver]
<= zeoserver_base
recipe = plone.recipe.zeoserver
zeo-address = 127.0.0.1:8100
[client1]
<= client_base
recipe = plone.recipe.zope2instance
zeo-address = ${zeoserver:zeo-address}
http-address = 8080
[versions]
setuptools =
zc.buildout =
Pillow = 3.4.2
Products.DocFinderTab = 1.0.5
Products.PloneHotfix20160830 = 1.3
Products.PloneHotfix20161129 = 1.2
bobtemplates.plone = 1.0.5
buildout.sanitycheck = 1.0.2
collective.checkdocs = 0.2
collective.recipe.backup = 3.0.0
mr.bob = 0.1.2
pkginfo = 1.4.1
plone.recipe.unifiedinstaller = 4.3.2
requests-toolbelt = 0.7.0
zest.pocompile = 1.4
# Required by:
# Jinja2==2.8
MarkupSafe = 0.23
# Required by:
# clint==0.5.1
args = 0.1.0
# Required by:
# twine==1.8.1
clint = 0.5.1
# Required by:
# zest.releaser==6.8
colorama = 0.3.7
Errors: Right now it's good; as you can see, my addon is commented out. I'll post again in a few minutes with the results of uncommenting those two lines; I'll show you everything from bulidout
to bin/instance fg
. I won't go on a dependency hunt (this time, yet) because it doesn't explicitly state that I need missed anything...
brb.
UPDATED
@tkimnguyen, et al.
Am I supposed to be running buildout with some special development flag? I seem to recall doing that once, based on some instruction to drag-in an additional config file... am I supposed to do that every time I expect src/ to be dragged in?
Output of zeocluster$ sudo -u plone_buildout bin/buildout
:
Develop: '/opt/plone/zeocluster/src/nhus.blog.post'
Uninstalling precompiler.
Uninstalling zopepy.
Uninstalling client1.
Updating zeoserver.
Installing client1.
/opt/plone/zeocluster/local/lib/python2.7/site-packages/pkg_resources/__init__.py:183: RuntimeWarning: You have iterated over the result of pkg_resources.parse_version. This is a legacy behavior which is inconsistent with the new version class introduced in setuptools 8.0. In most cases, conversion to a tuple is unnecessary. For comparison of versions, sort the Version instances directly. If you have another use case requiring the tuple, please file a bug with the setuptools project describing that need.
stacklevel=1,
Generated script '/opt/plone/zeocluster/bin/client1'.
Generated interpreter '/opt/plone/zeocluster/parts/client1/bin/interpreter'.
Generated script '/opt/plone/zeocluster/bin/pilprint.pyc'.
Generated script '/opt/plone/zeocluster/bin/pildriver.py'.
Generated script '/opt/plone/zeocluster/bin/enhancer.py'.
Generated script '/opt/plone/zeocluster/bin/explode.pyc'.
Generated script '/opt/plone/zeocluster/bin/painter.py'.
Generated script '/opt/plone/zeocluster/bin/viewer.py'.
Generated script '/opt/plone/zeocluster/bin/pilfont.py'.
Generated script '/opt/plone/zeocluster/bin/pilconvert.py'.
Generated script '/opt/plone/zeocluster/bin/enhancer.pyc'.
Generated script '/opt/plone/zeocluster/bin/pilfont.pyc'.
Generated script '/opt/plone/zeocluster/bin/viewer.pyc'.
Generated script '/opt/plone/zeocluster/bin/explode.py'.
Generated script '/opt/plone/zeocluster/bin/createfontdatachunk.pyc'.
Generated script '/opt/plone/zeocluster/bin/createfontdatachunk.py'.
Generated script '/opt/plone/zeocluster/bin/thresholder.pyc'.
Generated script '/opt/plone/zeocluster/bin/gifmaker.py'.
Generated script '/opt/plone/zeocluster/bin/player.py'.
Generated script '/opt/plone/zeocluster/bin/pilfile.pyc'.
Generated script '/opt/plone/zeocluster/bin/painter.pyc'.
Generated script '/opt/plone/zeocluster/bin/pilfile.py'.
Generated script '/opt/plone/zeocluster/bin/pildriver.pyc'.
Generated script '/opt/plone/zeocluster/bin/gifmaker.pyc'.
Generated script '/opt/plone/zeocluster/bin/pilconvert.pyc'.
Generated script '/opt/plone/zeocluster/bin/thresholder.py'.
Generated script '/opt/plone/zeocluster/bin/pilprint.py'.
Generated script '/opt/plone/zeocluster/bin/player.pyc'.
Updating backup.
Installing zopepy.
Generated interpreter '/opt/plone/zeocluster/bin/zopepy'.
Updating unifiedinstaller.
Installing precompiler.
Compiling Python files.
SyntaxError: ('invalid syntax', ('/opt/plone/zeocluster/lib/python2.7/site-packages/jinja2/asyncfilters.py', 7, 9, 'async def auto_to_seq(value):\n'))
SyntaxError: ('invalid syntax', ('/opt/plone/zeocluster/lib/python2.7/site-packages/jinja2/asyncsupport.py', 22, 9, 'async def concat_async(async_gen):\n'))
Compiling locale files.
Updating setpermissions.
setpermissions: Running # Dummy references to force this to execute after referenced parts
echo /opt/plone/zeocluster/var/backups yes > /dev/null
chmod 600 .installed.cfg
# Make sure anything we've created in var is r/w by our group
find /opt/plone/zeocluster/var -type d -exec chmod 770 {} \; 2> /dev/null
find /opt/plone/zeocluster/var -type f -exec chmod 660 {} \; 2> /dev/null
find /opt/plone/zeocluster/var -type d -exec chmod 770 {} \; 2> /dev/null
find /opt/plone/zeocluster/var -type f -exec chmod 660 {} \; 2> /dev/null
chmod 754 /opt/plone/zeocluster/bin/*
Versions had to be automatically picked.
The following part definition lists the versions picked:
[versions]
plone.recipe.command = 1.1
plone.recipe.precompiler = 0.6
# Required by:
# nhus.blog.post==1.0a1
z3c.jbot = 0.7.2
Those syntax errors popped up along the way somewhere but haven't appeared to prevent successful builds; i.e., they appear during buildouts which result in a working site.
Anyway... restart the cluster with zeocluster$ sudo -u plone_daemon bin/plonectl restart
:
zeoserver: .
daemon process restarted, pid=21878
client1: . . . .
daemon process restarted, pid=21883
Seems hopeful... but the site now gives a 503 error. So, as you suggested, zeocluster$ sudo -u plone_daemon bin/client1 fg
:
2017-06-14 20:22:57 INFO ZServer HTTP server started at Wed Jun 14 20:22:57 2017
Hostname: 0.0.0.0
Port: 8080
2017-06-14 20:22:59 INFO Products.PloneHotfix20160830 Applied resource patch
2017-06-14 20:22:59 INFO Products.PloneHotfix20160830 Applied confirm patch
2017-06-14 20:22:59 INFO Products.PloneHotfix20160830 Applied z3c_form patch
2017-06-14 20:22:59 INFO Products.PloneHotfix20160830 Applied in_portal patch
2017-06-14 20:22:59 INFO Products.PloneHotfix20160830 Applied plonerootlogin patch
2017-06-14 20:22:59 INFO Products.PloneHotfix20160830 Applied redirects patch
2017-06-14 20:22:59 INFO Products.PloneHotfix20160830 Applied redirect_folderfactories patch
2017-06-14 20:22:59 INFO Products.PloneHotfix20160830 Applied redirect_qi patch
2017-06-14 20:22:59 INFO Products.PloneHotfix20160830 Applied redirectto patch
2017-06-14 20:22:59 INFO Products.PloneHotfix20160830 Applied discussion patch
2017-06-14 20:22:59 INFO Products.PloneHotfix20160830 Applied user patch
2017-06-14 20:22:59 INFO Products.PloneHotfix20160830 Applied zmi patch
2017-06-14 20:22:59 INFO Products.PloneHotfix20160830 Hotfix installed
2017-06-14 20:22:59 INFO Products.PloneHotfix20161129 Applied publishing patch
2017-06-14 20:22:59 INFO Products.PloneHotfix20161129 Applied copy patch
2017-06-14 20:22:59 INFO Products.PloneHotfix20161129 You should call /@@apply-hotfix20161129 on all Plone Sites that have comments enabled.
2017-06-14 20:22:59 INFO Products.PloneHotfix20161129 Applied comments patch
2017-06-14 20:22:59 INFO Products.PloneHotfix20161129 Hotfix installed
2017-06-14 20:22:59 INFO ZEO.ClientStorage zeostorage ClientStorage (pid=22020) created RW/normal for storage: '1'
2017-06-14 20:22:59 INFO ZEO.cache created temporary cache file '<fdopen>'
2017-06-14 20:22:59 INFO ZEO.ClientStorage zeostorage Testing connection <ManagedClientConnection ('127.0.0.1', 8100)>
2017-06-14 20:22:59 INFO ZEO.zrpc.Connection(C) (127.0.0.1:8100) received handshake 'Z3101'
2017-06-14 20:23:00 INFO ZEO.ClientStorage zeostorage Server authentication protocol None
2017-06-14 20:23:00 INFO ZEO.ClientStorage zeostorage Connected to storage: ('localhost.localdomain', 8100)
2017-06-14 20:23:00 INFO ZEO.ClientStorage zeostorage No verification necessary -- empty cache
2017-06-14 20:23:04 INFO ZEO.ClientStorage zeostorage Disconnected from storage: "('localhost.localdomain', 8100)"
Traceback (most recent call last):
File "/opt/plone/zeocluster/parts/client1/bin/interpreter", line 282, in <module>
exec(compile(__file__f.read(), __file__, "exec"))
File "/opt/plone/buildout-cache/eggs/Zope2-2.13.26-py2.7.egg/Zope2/Startup/run.py", line 76, in <module>
run()
File "/opt/plone/buildout-cache/eggs/Zope2-2.13.26-py2.7.egg/Zope2/Startup/run.py", line 22, in run
starter.prepare()
File "/opt/plone/buildout-cache/eggs/Zope2-2.13.26-py2.7.egg/Zope2/Startup/__init__.py", line 92, in prepare
self.startZope()
File "/opt/plone/buildout-cache/eggs/Zope2-2.13.26-py2.7.egg/Zope2/Startup/__init__.py", line 268, in startZope
Zope2.startup()
File "/opt/plone/buildout-cache/eggs/Zope2-2.13.26-py2.7.egg/Zope2/__init__.py", line 47, in startup
_startup()
File "/opt/plone/buildout-cache/eggs/Zope2-2.13.26-py2.7.egg/Zope2/App/startup.py", line 120, in startup
load_zcml()
File "/opt/plone/buildout-cache/eggs/Zope2-2.13.26-py2.7.egg/Zope2/App/startup.py", line 52, in load_zcml
load_site()
File "/opt/plone/buildout-cache/eggs/Zope2-2.13.26-py2.7.egg/Zope2/App/zcml.py", line 46, in load_site
_context = xmlconfig.file(site_zcml)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 649, in file
include(context, name, package)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 548, in include
processxmlfile(f, context)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 380, in processxmlfile
parser.parse(src)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 107, in parse
xmlreader.IncrementalParser.parse(self, source)
File "/usr/lib/python2.7/xml/sax/xmlreader.py", line 123, in parse
self.feed(buffer)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 207, in feed
self._parser.Parse(data, isFinal)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 349, in end_element_ns
self._cont_handler.endElementNS(pair, None)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 359, in endElementNS
self.context.end()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 558, in end
self.stack.pop().finish()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 706, in finish
actions = self.handler(context, **args)
File "/opt/plone/buildout-cache/eggs/Zope2-2.13.26-py2.7.egg/OFS/metaconfigure.py", line 46, in loadProducts
xmlconfig.include(_context, zcml, package=product)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 548, in include
processxmlfile(f, context)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 380, in processxmlfile
parser.parse(src)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 107, in parse
xmlreader.IncrementalParser.parse(self, source)
File "/usr/lib/python2.7/xml/sax/xmlreader.py", line 123, in parse
self.feed(buffer)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 207, in feed
self._parser.Parse(data, isFinal)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 349, in end_element_ns
self._cont_handler.endElementNS(pair, None)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 359, in endElementNS
self.context.end()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 558, in end
self.stack.pop().finish()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 706, in finish
actions = self.handler(context, **args)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 548, in include
processxmlfile(f, context)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 380, in processxmlfile
parser.parse(src)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 107, in parse
xmlreader.IncrementalParser.parse(self, source)
File "/usr/lib/python2.7/xml/sax/xmlreader.py", line 123, in parse
self.feed(buffer)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 207, in feed
self._parser.Parse(data, isFinal)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 349, in end_element_ns
self._cont_handler.endElementNS(pair, None)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 359, in endElementNS
self.context.end()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 558, in end
self.stack.pop().finish()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 706, in finish
actions = self.handler(context, **args)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 548, in include
processxmlfile(f, context)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 380, in processxmlfile
parser.parse(src)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 107, in parse
xmlreader.IncrementalParser.parse(self, source)
File "/usr/lib/python2.7/xml/sax/xmlreader.py", line 123, in parse
self.feed(buffer)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 207, in feed
self._parser.Parse(data, isFinal)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 349, in end_element_ns
self._cont_handler.endElementNS(pair, None)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 359, in endElementNS
self.context.end()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 558, in end
self.stack.pop().finish()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 706, in finish
actions = self.handler(context, **args)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 548, in include
processxmlfile(f, context)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 380, in processxmlfile
parser.parse(src)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 107, in parse
xmlreader.IncrementalParser.parse(self, source)
File "/usr/lib/python2.7/xml/sax/xmlreader.py", line 123, in parse
self.feed(buffer)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 207, in feed
self._parser.Parse(data, isFinal)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 349, in end_element_ns
self._cont_handler.endElementNS(pair, None)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 359, in endElementNS
self.context.end()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 558, in end
self.stack.pop().finish()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 706, in finish
actions = self.handler(context, **args)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 548, in include
processxmlfile(f, context)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 380, in processxmlfile
parser.parse(src)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 107, in parse
xmlreader.IncrementalParser.parse(self, source)
File "/usr/lib/python2.7/xml/sax/xmlreader.py", line 123, in parse
self.feed(buffer)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 207, in feed
self._parser.Parse(data, isFinal)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 349, in end_element_ns
self._cont_handler.endElementNS(pair, None)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 359, in endElementNS
self.context.end()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 558, in end
self.stack.pop().finish()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 706, in finish
actions = self.handler(context, **args)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 548, in include
processxmlfile(f, context)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 380, in processxmlfile
parser.parse(src)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 107, in parse
xmlreader.IncrementalParser.parse(self, source)
File "/usr/lib/python2.7/xml/sax/xmlreader.py", line 123, in parse
self.feed(buffer)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 207, in feed
self._parser.Parse(data, isFinal)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 349, in end_element_ns
self._cont_handler.endElementNS(pair, None)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 359, in endElementNS
self.context.end()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 558, in end
self.stack.pop().finish()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 706, in finish
actions = self.handler(context, **args)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 548, in include
processxmlfile(f, context)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 380, in processxmlfile
parser.parse(src)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 107, in parse
xmlreader.IncrementalParser.parse(self, source)
File "/usr/lib/python2.7/xml/sax/xmlreader.py", line 123, in parse
self.feed(buffer)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 207, in feed
self._parser.Parse(data, isFinal)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 349, in end_element_ns
self._cont_handler.endElementNS(pair, None)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 359, in endElementNS
self.context.end()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 558, in end
self.stack.pop().finish()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 706, in finish
actions = self.handler(context, **args)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 548, in include
processxmlfile(f, context)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 380, in processxmlfile
parser.parse(src)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 107, in parse
xmlreader.IncrementalParser.parse(self, source)
File "/usr/lib/python2.7/xml/sax/xmlreader.py", line 123, in parse
self.feed(buffer)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 207, in feed
self._parser.Parse(data, isFinal)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 349, in end_element_ns
self._cont_handler.endElementNS(pair, None)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 359, in endElementNS
self.context.end()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 558, in end
self.stack.pop().finish()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 706, in finish
actions = self.handler(context, **args)
File "/opt/plone/buildout-cache/eggs/z3c.autoinclude-0.3.6-py2.7.egg/z3c/autoinclude/zcml.py", line 104, in includePluginsDirective
includeZCMLGroup(_context, info, filename)
File "/opt/plone/buildout-cache/eggs/z3c.autoinclude-0.3.6-py2.7.egg/z3c/autoinclude/zcml.py", line 30, in includeZCMLGroup
include(_context, filename, includable_package)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 548, in include
processxmlfile(f, context)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 380, in processxmlfile
parser.parse(src)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 107, in parse
xmlreader.IncrementalParser.parse(self, source)
File "/usr/lib/python2.7/xml/sax/xmlreader.py", line 123, in parse
self.feed(buffer)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 207, in feed
self._parser.Parse(data, isFinal)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 349, in end_element_ns
self._cont_handler.endElementNS(pair, None)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 359, in endElementNS
self.context.end()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 558, in end
self.stack.pop().finish()
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/config.py", line 706, in finish
actions = self.handler(context, **args)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 548, in include
processxmlfile(f, context)
File "/opt/plone/buildout-cache/eggs/zope.configuration-3.7.4-py2.7.egg/zope/configuration/xmlconfig.py", line 380, in processxmlfile
parser.parse(src)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 107, in parse
xmlreader.IncrementalParser.parse(self, source)
File "/usr/lib/python2.7/xml/sax/xmlreader.py", line 125, in parse
self.close()
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 217, in close
self.feed("", isFinal = 1)
File "/usr/lib/python2.7/xml/sax/expatreader.py", line 211, in feed
self._err_handler.fatalError(exc)
File "/usr/lib/python2.7/xml/sax/handler.py", line 38, in fatalError
raise exception
zope.configuration.xmlconfig.ZopeXMLConfigurationError: File "/opt/plone/zeocluster/parts/client1/etc/site.zcml", line 16.2-16.23
ZopeXMLConfigurationError: File "/opt/plone/buildout-cache/eggs/Products.ATContentTypes-2.2.13-py2.7.egg/Products/ATContentTypes/configure.zcml", line 18.2-18.44
ZopeXMLConfigurationError: File "/opt/plone/buildout-cache/eggs/plone.app.collection-1.1.7-py2.7.egg/plone/app/collection/configure.zcml", line 9.2-9.45
ZopeXMLConfigurationError: File "/opt/plone/buildout-cache/eggs/plone.app.querystring-1.3.17-py2.7.egg/plone/app/querystring/configure.zcml", line 11.2-11.42
ZopeXMLConfigurationError: File "/opt/plone/buildout-cache/eggs/plone.app.registry-1.5-py2.7.egg/plone/app/registry/configure.zcml", line 12.4-12.34
ZopeXMLConfigurationError: File "/opt/plone/buildout-cache/eggs/plone.app.registry-1.5-py2.7.egg/plone/app/registry/browser/configure.zcml", line 6.4-6.43
ZopeXMLConfigurationError: File "/opt/plone/buildout-cache/eggs/plone.app.z3cform-1.2.3-py2.7.egg/plone/app/z3cform/configure.zcml", line 10.2-10.41
ZopeXMLConfigurationError: File "/opt/plone/buildout-cache/eggs/plone.app.widgets-2.0.7-py2.7.egg/plone/app/widgets/configure.zcml", line 12.2-12.41
ZopeXMLConfigurationError: File "/opt/plone/buildout-cache/eggs/Products.CMFPlone-5.0.7-py2.7.egg/Products/CMFPlone/configure.zcml", line 108.4-112.10
ZopeXMLConfigurationError: File "/opt/plone/zeocluster/src/nhus.blog.post/src/nhus/blog/post/configure.zcml", line 11.2-11.32
ZopeSAXParseException: File "/opt/plone/zeocluster/src/nhus.blog.post/src/nhus/blog/post/browser/configure.zcml", line 20.2, unclosed token
This is a lot of information I didn't have before, so that's helpful in and of itself -- thanks for that.
While I start going over it, any other suggestions, anything else that jumps out at you, other pointers or things you see me doing wrong, are appreciated.
UPDATED
PS: Now I see again, at the bottom of the buildout output, what made me start the dependency hunt...
When I did $ sudo -u plone_buildout bin/pip install z3c.jbot
the dependency hunt led to a broken state (I suspect dragging in legacy stuff), but maybe it's because I didn't specify version?