Modify

Ticket #134 (closed defect: fixed)

Opened 5 years ago

Last modified 5 years ago

plumi has unlisted python dependencies

Reported by: datakid Owned by: andycat
Priority: major Milestone: 4.1
Component: ATEngageVideo Severity:
Keywords: Cc:
Who will test this:

Description

A Lo and I have noticed that the plumi0.2-rc2 release does not work on the default plone-site package that comes with Debian Etch (and Ubuntu Gutsy Gibbon)

It should be noted in the install or readme txt for plumi that "apt-get install plone-site" on an up to date etch or gutsy installation will fail.

datakid@redfern:~$ sudo apt-cache showpkg plone-site
Package: plone-site
Versions: 
2.5.2-3 (/var/lib/apt/lists/http.us.debian.org_debian_dists_unstable_main_binary-i386_Packages)
 Description Language: 
                 File: /var/lib/apt/lists/http.us.debian.org_debian_dists_unstable_main_binary-i386_Packages
                  MD5: ce5d54e51e4477124ea93a26f65d4cd0


Reverse Depends: 
Dependencies: 
2.5.2-3 - zope-cmfplone (5 2.5.2-3) zope-common (2 0.5.35) zope2.9 (0 (null)) debconf (18 0.5) debconf-2.0 (0 (null)) plone (0 (null)) 
Provides: 
2.5.2-3 - 
Reverse Provides: 

A Lo thinks this is a Debian problem, I'm not so sure. Either way, we should fix the problem, or instead point people to the plone 2.5.4 installer here:  http://plone.org/products/plone/releases/2.5.4

on which it should work - I'm testing now.

I will follow this up with an actual bug report when I get home to my apt-installed plone instance.

Attachments

Change History

comment:1 Changed 5 years ago by datakid

Ok I got the error again

Method of reproduction:

  • Use Ubuntu Gutsy (7.10)
  • Install plone (either apt-get install plone-site or grab the "Unified Installer - for Linux/BSD/Mac OS X/UNIX/Solaris (compiles and installs Python, Zope and Plone plus dependencies for you)" from the plone site listed above)

If you apt-got (plone 2.5.2-3)

if you install using the Unified installer (plone 2.5.4)

  • svn co  https://svn.plone.org/svn/collective/Plumi/tags/plumi-0.2-rc2 into the Products dir (/opt/Plone-2.5.4/zeocluster/Products is the working dir post apt-get I think)
  • check all perms, chmod g+w, chown :zope etc
  • add
       products $INSTANCE/Products/plumi-0.2-rc2
    
    to /opt/Plone-2.5.4/zeocluster/client1/etc/zope.conf and /opt/Plone-2.5.4/zeocluster/client2/etc/zope.conf
  • restart zope
  • borken

Here's the output

NB: these errors are verbatim from the Unified installer. I didn't capture the errors on teh apt-get installation, although they were similar looking. I can re do that error if you need.

This error occurs if you set up the plone site before adding plumi to the products directory

Site Error

An error was encountered while publishing this resource.

AttributeError
Sorry, a site error occurred.

Traceback (innermost last):

    * Module ZPublisher.Publish, line 196, in publish_module_standard
    * Module Products.PlacelessTranslationService.PatchStringIO, line 34, in new_publish
    * Module ZPublisher.Publish, line 146, in publish
    * Module Zope2.App.startup, line 222, in zpublisher_exception_hook
    * Module ZPublisher.Publish, line 115, in publish
    * Module ZPublisher.mapply, line 88, in mapply
    * Module ZPublisher.Publish, line 41, in call_object
    * Module Shared.DC.Scripts.Bindings, line 311, in __call__
    * Module Shared.DC.Scripts.Bindings, line 348, in _bindAndExec
    * Module Products.CMFCore.FSPageTemplate, line 195, in _exec
    * Module Products.CacheSetup.patch_cmf, line 18, in FSPT_pt_render
    * Module Products.CacheSetup.patch_utils, line 9, in call_pattern
    * Module Products.CMFCore.FSPageTemplate, line 134, in pt_render
    * Module Products.CacheSetup.patch_cmf, line 68, in PT_pt_render
    * Module Products.CacheSetup.patch_utils, line 9, in call_pattern
    * Module Products.PageTemplates.PageTemplate, line 104, in pt_render
      <FSPageTemplate at /test_for_0.2rc2/document_view used for /test_for_0.2rc2/front-page>
    * Module TAL.TALInterpreter, line 238, in __call__
    * Module TAL.TALInterpreter, line 281, in interpret
    * Module TAL.TALInterpreter, line 749, in do_useMacro
    * Module TAL.TALInterpreter, line 281, in interpret
    * Module TAL.TALInterpreter, line 457, in do_optTag_tal
    * Module TAL.TALInterpreter, line 442, in do_optTag
    * Module TAL.TALInterpreter, line 437, in no_tag
    * Module TAL.TALInterpreter, line 281, in interpret
    * Module TAL.TALInterpreter, line 749, in do_useMacro
    * Module TAL.TALInterpreter, line 281, in interpret
    * Module TAL.TALInterpreter, line 511, in do_setGlobal_tal
    * Module Products.PageTemplates.TALES, line 221, in evaluate
      URL: file:CMFPlone/skins/plone_templates/global_defines.pt
      Line 3, Column 0
      Expression: standard:'context/@@plone'
      Names:

      {'container': <PloneSite at /test_for_0.2rc2>,
       'context': <ATDocument at /test_for_0.2rc2/front-page>,
       'default': <Products.PageTemplates.TALES.Default instance at 0xb71c8fec>,
       'here': <ATDocument at /test_for_0.2rc2/front-page>,
       'loop': <Products.PageTemplates.TALES.SafeMapping object at 0xbb1d66c>,
       'modules': <Products.PageTemplates.ZRPythonExpr._SecureModuleImporter instance at 0xb72237cc>,
       'nothing': None,
       'options': {'args': ()},
       'repeat': <Products.PageTemplates.TALES.SafeMapping object at 0xbb1d66c>,
       'request': <HTTPRequest, URL=http://localhost:8081/test_for_0.2rc2/front-page/document_view>,
       'root': <Application at >,
       'template': <FSPageTemplate at /test_for_0.2rc2/document_view used for /test_for_0.2rc2/front-page>,
       'traverse_subpath': [],
       'user': <PropertiedUser 'admin'>}

    * Module Products.PageTemplates.Expressions, line 185, in __call__
    * Module Products.PageTemplates.Expressions, line 173, in _eval
    * Module Products.PageTemplates.Expressions, line 127, in _eval
      __traceback_info__: context
    * Module Products.PageTemplates.Expressions, line 286, in restrictedTraverse
      __traceback_info__: {'path': ['@@plone'], 'TraversalRequestNameStack': []}
    * Module Products.Archetypes.BaseObject, line 1140, in __bobo_traverse__

AttributeError: @@plone (Also, the following error occurred while attempting to render the standard error message, please see the event log for full details: @@plone)

This error occurs if you set up the plone site after adding plumi to the products directory (error occurs in the main frame of the ZMI

Site Error

An error was encountered while publishing this resource.

Error Type: AttributeError
Error Value: site_properties

Troubleshooting Suggestions

    * The URL may be incorrect.
    * The parameters passed to this resource may be incorrect.
    * A resource that this resource relies on may be encountering an error.

For more detailed information about the error, please refer to the error log.

If the error persists please contact the site maintainer. Thank you for your patience. 

comment:2 Changed 5 years ago by datakid

note that moving the files from the plumi svn created folder (plumi-0.2-rc2) into the Products folder caused the same errors.

I then removed the adjustments I'd made to all the zope.conf's and still had the same errors.

comment:3 Changed 5 years ago by datakid

ok, then I tried adding the plumi-0.1-final to the Unified Installer installation, I added the line

products $INSTANCE/Products/plumi-0.1-final

and it seemed to work all of a sudden? No errors, and could add the plumi products.

comment:4 Changed 5 years ago by andycat

  • Milestone changed from 0.2 to 0.4

Looks like an error with Five

If you put products into the Products directory, you dont then add a new "products /path/" line into zope.conf. Its one or the other. The Products directory exists so you can drop things in there without changing the config. If you put products somewhere else, you then add a "products /path/" line in zope.conf

Anyway, Im not sure i trust this setup to be correct, in the first place. For instance, you say " This error occurs if you set up the plone site before adding plumi to the products directory " . Doesn that say it all? ie thats it not plumi, its how you have setup the server?

comment:5 Changed 5 years ago by datakid

I ran it in debug mode as asked:

/opt/Plone-2.5.5/zeocluster/client1/bin/runzope -X debug-mode=on
2007-12-13 14:12:06 INFO ZServer HTTP server started at Thu Dec 13 14:12:06 2007
        Hostname: 0.0.0.0
        Port: 8080
2007-12-13 14:12:06 INFO Zope Set effective user to "plone"
2007-12-13 14:12:10 WARNING Init Class Products.CMFFormController.ControllerBase.ControllerBase has a security declaration for nonexistent method 'getPostRequired'
2007-12-13 14:12:10 INFO ATMediaFile Installing Product
/opt/Plone-2.5.5/zeocluster/client1/Products/ATMediaFile/__init__.py:54: DeprecationWarning: The module, 'Products.CMFCore.CMFCorePermissions' is a deprecated compatiblity alias for 'Products.CMFCore.permissions';  please use the new module instead.
  from Products.CMFCore import CMFCorePermissions
/opt/Plone-2.5.5/zeocluster/client1/Products/ATMediaFile/__init__.py:56: DeprecationWarning: PloneUtilities is deprecated and will be removed in Plone 3.0, please import from Products.CMFPlone.utils instead.
  from Products.CMFPlone.PloneUtilities import ToolInit
2007-12-13 14:12:11 INFO ATVideo Installing Product
2007-12-13 14:12:11 INFO PlacelessTranslationService Applying patch 
*** Patching ZPublisher.Publish with the get_request patch! ***
2007-12-13 14:12:11 ERROR Zope Could not import Products.ATVideo
Traceback (most recent call last):
  File "/opt/Plone-2.5.5/lib/python/OFS/Application.py", line 708, in import_product
    product=__import__(pname, global_dict, global_dict, silly)
  File "/opt/Plone-2.5.5/zeocluster/client1/Products/ATVideo/__init__.py", line 75, in ?
    from Products.ATVocabularyManager.namedvocabulary import NamedVocabulary
  File "/opt/Plone-2.5.5/zeocluster/client1/Products/ATVocabularyManager/__init__.py", line 13, in ?
    from Products.ATVocabularyManager.namedvocabulary import NamedVocabulary
  File "/opt/Plone-2.5.5/zeocluster/client1/Products/ATVocabularyManager/namedvocabulary.py", line 19, in ?
    from Products.ATVocabularyManager.types.tree.vocabulary import TreeVocabulary
  File "/opt/Plone-2.5.5/zeocluster/client1/Products/ATVocabularyManager/types/__init__.py", line 3, in ?
    from Products.ATVocabularyManager.types import vdex
  File "/opt/Plone-2.5.5/zeocluster/client1/Products/ATVocabularyManager/types/vdex/__init__.py", line 1, in ?
    from Products.ATVocabularyManager.types.vdex.vocabularyxml import IMSVDEXVocabulary
  File "/opt/Plone-2.5.5/zeocluster/client1/Products/ATVocabularyManager/types/vdex/vocabularyxml.py", line 27, in ?
    from imsvdex.vdex import VDEXManager, VDEXError
ImportError: No module named imsvdex.vdex
Traceback (most recent call last):
  File "/opt/Plone-2.5.5/lib/python/Zope2/Startup/run.py", line 56, in ?
    run()
  File "/opt/Plone-2.5.5/lib/python/Zope2/Startup/run.py", line 21, in run
    starter.prepare()
  File "/opt/Plone-2.5.5/lib/python/Zope2/Startup/__init__.py", line 98, in prepare
    self.startZope()
  File "/opt/Plone-2.5.5/lib/python/Zope2/Startup/__init__.py", line 257, in startZope
    Zope2.startup()
  File "/opt/Plone-2.5.5/lib/python/Zope2/__init__.py", line 47, in startup
    _startup()
  File "/opt/Plone-2.5.5/lib/python/Zope2/App/startup.py", line 46, in startup
    OFS.Application.import_products()
  File "/opt/Plone-2.5.5/lib/python/OFS/Application.py", line 685, in import_products
    import_product(product_dir, product_name, raise_exc=debug_mode)
  File "/opt/Plone-2.5.5/lib/python/OFS/Application.py", line 723, in import_product
    raise sys.exc_info()
KeyError
engage@rosebud:/opt/Plone-2.5.5/zeocluster/client1/bin$

axxs then suggested "easy_install imsvdex"

to which I did:

engage@rosebud:/opt/Plone-2.5.5/zeocluster/client1/bin$ easy_install imsvdex
The program 'easy_install' is currently not installed.  You can install it by typing:
sudo apt-get install python-setuptools
bash: easy_install: command not found
engage@rosebud:/opt/Plone-2.5.5/zeocluster/client1/bin$ sudo easy_install imsvdex
[sudo] password for engage:
sudo: easy_install: command not found
engage@rosebud:/opt/Plone-2.5.5/zeocluster/client1/bin$ sudo apt-get install python-setuptools
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libportaudio2 python-docutils python-roman democracyplayer-data zope-common linux-headers-2.6.22-12-generic
  linux-headers-2.6.22-12 libntfs-3g5
Use 'apt-get autoremove' to remove them.
The following NEW packages will be installed:
  python-setuptools
0 upgraded, 1 newly installed, 0 to remove and 5 not upgraded.
Need to get 211kB of archives.
After unpacking 786kB of additional disk space will be used.
Get:1 http://au.archive.ubuntu.com gutsy/main python-setuptools 0.6c6-1 [211kB]
Fetched 211kB in 22s (9187B/s)        
Selecting previously deselected package python-setuptools.
(Reading database ... 150212 files and directories currently installed.)
Unpacking python-setuptools (from .../python-setuptools_0.6c6-1_all.deb) ...
Setting up python-setuptools (0.6c6-1) ...

engage@rosebud:/opt/Plone-2.5.5/zeocluster/client1/bin$ sudo easy_install imsvdex
Searching for imsvdex
Reading http://cheeseshop.python.org/pypi/imsvdex/
Reading http://cheeseshop.python.org/pypi/imsvdex/1.0-beta
Best match: imsvdex 1.0-beta
Downloading http://pypi.python.org/packages/source/i/imsvdex/imsvdex-1.0-beta.tar.gz#md5=98692001777f3415bd7cdf677d4976ab
Processing imsvdex-1.0-beta.tar.gz
Running imsvdex-1.0-beta/setup.py -q bdist_egg --dist-dir /tmp/easy_install-opMolb/imsvdex-1.0-beta/egg-dist-tmp-cArxCB
Adding imsvdex 1.0-beta to easy-install.pth file

Installed /usr/lib/python2.5/site-packages/imsvdex-1.0_beta-py2.5.egg
Processing dependencies for imsvdex
Searching for elementtreewriter>=1.0
Reading http://cheeseshop.python.org/pypi/elementtreewriter/
Reading http://cheeseshop.python.org/pypi/elementtreewriter/1.0
Best match: elementtreewriter 1.0
Downloading http://pypi.python.org/packages/source/e/elementtreewriter/elementtreewriter-1.0.tar.gz#md5=e56a9c03b3b552e9b3f3acda11fcc089
Processing elementtreewriter-1.0.tar.gz
Running elementtreewriter-1.0/setup.py -q bdist_egg --dist-dir /tmp/easy_install-GKa61O/elementtreewriter-1.0/egg-dist-tmp-q7hfkE
Adding elementtreewriter 1.0 to easy-install.pth file

Installed /usr/lib/python2.5/site-packages/elementtreewriter-1.0-py2.5.egg
Searching for elementtree>=1.2.6
Reading http://cheeseshop.python.org/pypi/elementtree/
Reading http://effbot.org/zone/element-index.htm
Reading http://effbot.org/downloads#elementtree
Reading http://cheeseshop.python.org/pypi/elementtree/1.2.6-20050316
Best match: elementtree 1.2.7-20070827-preview
Downloading http://effbot.org/media/downloads/elementtree-1.2.7-20070827-preview.zip
Processing elementtree-1.2.7-20070827-preview.zip
Running elementtree-1.2.7-20070827-preview/setup.py -q bdist_egg --dist-dir /tmp/easy_install-96vblI/elementtree-1.2.7-20070827-preview/egg-dist-tmp-EiQRHM
zip_safe flag not set; analyzing archive contents...
Adding elementtree 1.2.7-20070827-preview to easy-install.pth file

Installed /usr/lib/python2.5/site-packages/elementtree-1.2.7_20070827_preview-py2.5.egg
Finished processing dependencies for imsvdex
engage@rosebud:/opt/Plone-2.5.5/zeocluster/client1/bin$ sudo ./zopectl fg
/opt/Plone-2.5.5/zeocluster/client1/bin/runzope -X debug-mode=on
2007-12-13 14:37:54 INFO ZServer HTTP server started at Thu Dec 13 14:37:54 2007
        Hostname: 0.0.0.0
        Port: 8080
2007-12-13 14:37:55 INFO Zope Set effective user to "plone"
2007-12-13 14:37:57 WARNING Init Class Products.CMFFormController.ControllerBase.ControllerBase has a security declaration for nonexistent method 'getPostRequired'
2007-12-13 14:37:58 INFO ATMediaFile Installing Product
/opt/Plone-2.5.5/zeocluster/client1/Products/ATMediaFile/__init__.py:54: DeprecationWarning: The module, 'Products.CMFCore.CMFCorePermissions' is a deprecated compatiblity alias for 'Products.CMFCore.permissions';  please use the new module instead.
  from Products.CMFCore import CMFCorePermissions
/opt/Plone-2.5.5/zeocluster/client1/Products/ATMediaFile/__init__.py:56: DeprecationWarning: PloneUtilities is deprecated and will be removed in Plone 3.0, please import from Products.CMFPlone.utils instead.
  from Products.CMFPlone.PloneUtilities import ToolInit
2007-12-13 14:37:58 INFO ATVideo Installing Product
2007-12-13 14:37:58 INFO PlacelessTranslationService Applying patch 
*** Patching ZPublisher.Publish with the get_request patch! ***
2007-12-13 14:37:58 ERROR Zope Could not import Products.ATVideo
Traceback (most recent call last):
  File "/opt/Plone-2.5.5/lib/python/OFS/Application.py", line 708, in import_product
    product=__import__(pname, global_dict, global_dict, silly)
  File "/opt/Plone-2.5.5/zeocluster/client1/Products/ATVideo/__init__.py", line 75, in ?
    from Products.ATVocabularyManager.namedvocabulary import NamedVocabulary
  File "/opt/Plone-2.5.5/zeocluster/client1/Products/ATVocabularyManager/__init__.py", line 13, in ?
    from Products.ATVocabularyManager.namedvocabulary import NamedVocabulary
  File "/opt/Plone-2.5.5/zeocluster/client1/Products/ATVocabularyManager/namedvocabulary.py", line 19, in ?
    from Products.ATVocabularyManager.types.tree.vocabulary import TreeVocabulary
  File "/opt/Plone-2.5.5/zeocluster/client1/Products/ATVocabularyManager/types/__init__.py", line 3, in ?
    from Products.ATVocabularyManager.types import vdex
  File "/opt/Plone-2.5.5/zeocluster/client1/Products/ATVocabularyManager/types/vdex/__init__.py", line 1, in ?
    from Products.ATVocabularyManager.types.vdex.vocabularyxml import IMSVDEXVocabulary
  File "/opt/Plone-2.5.5/zeocluster/client1/Products/ATVocabularyManager/types/vdex/vocabularyxml.py", line 27, in ?
    from imsvdex.vdex import VDEXManager, VDEXError
ImportError: No module named imsvdex.vdex
Traceback (most recent call last):
  File "/opt/Plone-2.5.5/lib/python/Zope2/Startup/run.py", line 56, in ?
    run()
  File "/opt/Plone-2.5.5/lib/python/Zope2/Startup/run.py", line 21, in run
    starter.prepare()
  File "/opt/Plone-2.5.5/lib/python/Zope2/Startup/__init__.py", line 98, in prepare
    self.startZope()
  File "/opt/Plone-2.5.5/lib/python/Zope2/Startup/__init__.py", line 257, in startZope
    Zope2.startup()
  File "/opt/Plone-2.5.5/lib/python/Zope2/__init__.py", line 47, in startup
    _startup()
  File "/opt/Plone-2.5.5/lib/python/Zope2/App/startup.py", line 46, in startup
    OFS.Application.import_products()
  File "/opt/Plone-2.5.5/lib/python/OFS/Application.py", line 685, in import_products
    import_product(product_dir, product_name, raise_exc=debug_mode)
  File "/opt/Plone-2.5.5/lib/python/OFS/Application.py", line 723, in import_product
    raise sys.exc_info()
KeyError

I've restarted the computer and am going to try again.

comment:6 Changed 5 years ago by datakid

So I got the same error.

I asked axxs if it was becuase easy_install put imsvdex in /usr/lib/python2.5/site-packages instead of /opt/Plone-2.5.5/lib/python (I don't even know if that sentence makes sense)

He told me to use easy_install-2.4 (instead of the default which is for python 2.5). Still no go - exactly the same error. hmm

comment:7 Changed 5 years ago by datakid

Ok, short story is: it _does_ work with the unified installer. IF you do some extra stuff.

  1. needed to run
engage@rosebud:/opt/Plone-2.5.5/Python-2.4.4/bin$ sudo ./easy_install imsvdex

instead of just plain old easy_install-2,4

  1. the output from the debug mode looks like this:  http://datakid.pastebin.com/mb27477d

Note that there still seem to be some errors in there. I don't know if you know about them?

  1. Couldn't work out which products to install when it came to installing them in the plone quickinstall interface, so I installed everything. Mostly fine, except for PressRoom? 1.1.1 (This Product is broken) which has the output:
Status
    new
Error
    There were Errors during install, check Transcript 
Portlets

        * here/render_portletification/macros/left
        * here/portlet_publish/macros/portlet
        * here/portlet_browse/macros/portlet
        * here/render_portletification/macros/right
        * here/portlet_recent_callouts/macros/portlet
        * here/portlet_recent_comments/macros/portlet

You can see the transcrip here:  http://datakid.pastebin.com/m4f7a28b

I think that's about it.

What is the solution to this problem? Can we add this into the installer? Should we merely document it in the README?

comment:8 Changed 5 years ago by datakid

So I tried to add a CallOut? anyway, (because is why) and the errors are here:  http://datakid.pastebin.com/m1c079ef6

comment:9 Changed 5 years ago by datakid

Further note.

The regular easy_install imsvdex that didn't initially work for the Unified Installer makes the apt-get plone install work.

Yay! We should add to README.txt or INSTALL.txt or something

comment:10 Changed 5 years ago by kev

sorry i got in on this discussion late. it is trivial to add the imsvdex egg to buildout.cfg, and let buildout handle it for people who install it that way. for other methods of install, it just needs to be made clear that imsvdex, or any other egg that we want to use in plone, must be installed into local python (the python that our zope is using). apt-get install plone-site, uses systems python. installing with the unified installer, installs a local python to '/opt/Plone-2.5.x/Python-2.4.4/bin'

this is stated in plone documentation... from the unifiedinstaller readme.txt:

"The Python installed by the Unified Installer will *not* interfere with any other Python on your system. The Installer bundles Python 2.4.4, placing it at /opt/Plone-2.5.4/Python-2.4.4"

but maybe should be stated again in the plumi documentation.

comment:11 Changed 5 years ago by datakid

  • Status changed from new to closed
  • Resolution set to fixed
  • Summary changed from plumi doesn't work on Debian's plone-site pkg to plumi has unlisted python dependencies

comment:12 Changed 5 years ago by datakid

changes to INSTALL.txt added to trunk:  http://dev.plone.org/collective/changeset/55566

comment:13 Changed 5 years ago by datakid

Closing. Use the Unified Installer for plone 2.5.5, apply the patch found here http://dev.plone.org/plone/ticket/5935? and then See #144.

View

Add a comment

Modify Ticket

Action
as closed
The resolution will be deleted. Next status will be 'reopened'
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.