Skip to main content

Synchronize a container with a master container

Project description

Introduction
============
collective.contentsync addresses the case where many folders must be synchronized with one master folder template.

For example, your system has many clients who need to upload files into a directory structure. Your template may look like this:

Template
- Accreditation files
- Financial statements 2008
- Financial statements 2009
- Staff profiles

Every client must also have this structure since content is going to be uploaded into that structure. Suppose you have 1000 clients and now you add "Financial statements 2010" to your template. This new folder must be pushed to every single client. This process would be time-consuming by hand, hence the existence of collective.contentsync.

Rules of synchronization
========================
The terms "source" and "destination" are used. The rules are dependent on an item providing information as to whether it was created by a synchronization or a user.

1. New items in the source tree are copied to the corresponding location in the destination tree. If an item already exists at this location in the destination tree it is preserved.
2. Items which appear in the destination tree but not the source tree are deleted if and only if they were created during a synchronization and do not contain any items that were created by a user.
3. Items which appear in the destination tree and which were created during a synchronization are renamed if the corresponding source item is renamed. The rename is limited to title and does not include the id.

User interface
==============
The user is presented with a progress bar and a detailed log. This provides
constant feedback and prevents timeouts.

Usage
=====
Append /@@collective.contentsync.form to the URL of the item you wish to synchronize, or simply run the collective.contentsync profile in portal_setup. Running the profile will add a Synchronize tab to every folderish item in your site.

collective.contentsync has not been tested with a pure Zope application but should "just work" since it has no Plone dependencies.

Changelog
=========

1.01
----

* If an object in the source tree is renamed it is renamed in the target on a
* sync

* More progress outputs

1.0
----------------

* Initial release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
collective.contentsync-1.01-py2.4.egg (27.3 kB) Copy SHA256 hash SHA256 Egg 2.4 May 11, 2009
collective.contentsync-1.01.tar.gz (10.2 kB) Copy SHA256 hash SHA256 Source None May 11, 2009

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page