Personal tools
You are here: Home Products Plonemon

Plonemon

Automatic restarter for Plone/Zope developers

Current release

No stable release available yet.

If you are interested in getting the source code of this project, you can get it from the code repository.

Project Description

The goal of Plonemon is to ease the frustration of Plone developers to remove the need to manual Zope restart when there is changes in codebase. All advanced web frameworks, like Django, can do this and there was a time when Plone/Zope could do this also. Then we were smitten by the frustration with defunct automatic product refresh, long boot times, and XML file hell and Plone was fun no more.

Plonemon will detect changes in Plone/Zope codebase and restart Zope automatically accordingly. An audio file played depending on whether restart succeed or not, so you can do other tasks whilst Zope is restarting on background.

Features

  • Recursively detect changes in ZCML, XML and py files
  • Automatically restart Zope
  • Audio playback depending on whether the restart succeed or failed

Dependencies

  • PExpect for controlling the process
  • pygame for audio playback
  • pyinotify for monitoring files.

pyinotify relies on Linux kernel feature called inotify and thus this application only works on Linux currently. However, it should be trivial to port it for other platforms.

Usage

Checkout product from Plone Collective repository to your home folder:

svn checkout https://svn.plone.org/svn/collective/plonemon/trunk ~/plonemon

Install dependencies (Debian based Linux):

sudo apt-get install python-pexpect python-pyinotify python-pygame

Command line parameters are [zope instance controller script] [spaceless comma separated list of monitored folders]. Run:

python ~/plonemon/plonemon.py bin/instance parts

Work.

To abort press CTRL+C.