Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

Example workflow integration for ftw.publisher's staging and publishing system

Project Description


ftw.publisher.example is a example integration package providing a workflow integration for ftw.publisher. ftw.publisher is a staging and publishing system for Plone contents.

This package is installed on both systems, the editor system (sender) and the public system (receiver) - using the corresponding extras_requires.

It provides the following:

  • A simple custom workflow, registered for the standard content types, providing the default states private, pending, published and revision with the corresponding transitions.
  • Event handlers for the workflow transitions, wich automatically publishes the object on certain transitions.
  • Sanity checks which are configured as conditions for the transitions. They check, if it’s possible to publish the object (e.g. parent is published) and display warnings if referenced objects are not published.


On the sender system, just add the package to your buildout using the “sender” extras_require. You should also add a cronjob (ClockServer) which invokes the execution of the publisher queue.

You need to create a ClockServer-user on the sender instance with “Manager” role on the plone site. This username / password you need to configure in the sender buildout. The user will then be used to invoke the queue execution using Products.ClockServer.

sender buildout.cfg:


eggs +=
zcml +=

zope-conf-additional =
        method /PLONESITE/@@publisher-config-executeJobs
        period 600
        password USERS_PASSWORD

receiver buildout.cfg:


eggs +=
zcml +=

Then you need to add a second user on the receiver instance, which will receive the publisher jobs and create / update objects. Therefore he has to have enough priviledges.

Once you have installed the plone-sites, go to the publisher control panel on your sender instance (within the plone control panel) and add the target plone site URL (realm) and the username / password of the user created on the receiver instance.


Sponsored by 4teamwork GmbH.




  • Created package initially. [jbaumann]
Release History

Release History

This version
History Node


Download Files

Download Files

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

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
ftw.publisher.example-1.0.tar.gz (10.1 kB) Copy SHA256 Checksum SHA256 Source Apr 6, 2011

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting