Ticket #1244 (new enhancement)

Opened 13 years ago

Last modified 13 years ago

Add support for directory content I/O in CPSDirectorie's exportimport.py

Reported by: Olivier Grisel <olivier.grisel@…> Owned by: div
Priority: P2 Milestone: CPS 3.5.7
Component: CPSDirectory Version: TRUNK
Severity: normal Keywords:


We need a new XML adapter for exporting/importing directory entries.

This is needed for upgrading CPS instances with old direcories: #811

Implementation notes/open questions:

  • as directories are schema based, the XMLAdapter can be something similar to the CPSDocument XML adapter defined in source:CPSDocument/trunk/exportimport.py but entries are collected through a searchEntries request instead of an objectItems based traversal.
  • when using compound directories (Meta + Stacking + Backings): what should we allow to export: the roots, the leafs or any ?
  • whe should provide the CPSDirectory management UI with new CMF actions to ex- / import directories content TTW (with FileUploads? for imports).

Change History

comment:1 Changed 13 years ago by fguillaume

GenericSetup should only I/O what's in the ZODB.

I/O of arbitrary directories is important but isn't a "profile" problem, just a migration problem. It can be done through a ZMI action yes (that calls the GenericSetup? framework).

comment:2 Changed 13 years ago by div

This is needed also for a fresh new site, with existing ZODB Directories, because right now if one (re)import the CPSDefault profile on an existing site, it will lose all the created users.

comment:3 Changed 13 years ago by fguillaume

Hm good point, I've opened #1294 for that.

comment:4 Changed 13 years ago by ebarroca

  • Owner changed from fguillaume to div

comment:5 Changed 13 years ago by fguillaume

The natural format for directory I/O is either CSV or LDIF. CSV is probably simpler for now, except that we have to invent a syntax for lists, a simple separator is probably enough.

We can't have an export with one XML file per directory entry, that's way too much. For 10000 entries in a directory that becomes unmanageable, and remember that we want to strive to make the I/O exports as useful as possible (not just as an archive of configuration).

comment:6 Changed 13 years ago by ebarroca

  • Milestone changed from CPS 3.4.0 to CPS 3.4.1

comment:7 Changed 13 years ago by bdelbosc

  • Owner changed from div to bdelbosc

comment:8 Changed 13 years ago by bdelbosc

  • Owner changed from bdelbosc to div

I open #1433 for the migration of acl_users from 3.3.8 to 3.4.0

comment:9 Changed 13 years ago by sfermigier

  • Milestone changed from CPS 3.4.1 to CPS 3.4.2
Note: See TracTickets for help on using tickets.