Skip to main content

Cron4Plone can do scheduled tasks in Plone

Project description

Product description
===================
Cron4Plone can do scheduled tasks in Plone, in a syntax very like \*NIX
systems' cron daemon. It plugs into Zope's ClockServer machinery.


Installation
============
1. Configure the ticker in the buildout (or zope.conf)::

[instance]
...
eggs =
...
Products.ClockServer
zope-conf-additional =
<clock-server>
method /<your-plone-site>/@@cron-tick
period 60
</clock-server>

2. Configure the scheduled tasks

In the Plone site setup, go to the cron4plone configuration. This form can
be used to enter cron-like jobs.

The cron job should have 5 elements: minute, hour, day_of_month, month and
command expression. For the command python and tal expression can be used.

definition: m h dom m command

Examples:
* 11 * * portal/@@run_me
15,30 * * * python: portal.my_tool.runThis()


3. Wait and see

In the ZMI, go to the CronTool. If a cronjob has run the history is shown.

Rationale
=========
Cron4plone uses the clockserver and allows advanced taask scheduling:

- scheduled tasks at scheduled times. E.g. I want to perform a certain
task at 3 AM at the first day of the month.

- single thread running the task: We don't want 2 threads running the
same task at the same time. With only using clock server this might
happen if a task takes longer than the tick period.


TODO
====
- Day of week is missing in cron-like syntax, add it.
- Improve doc test, currently test has basic coverage.
- Perhaps make a configuration form that allows users without cron syntax
knowledge to enter jobs.

License and credits
===================
Authors: "Huub Bouma", mailto:bouma@gw20e.com
"Kim Chee Leong", mailto:leong@gw20e.com

License: This product is licensed under the GNU Public License version 2.
See the file LICENSE included in this product.

Parts of the code were taken from
"PloneMaintenance", http://plone.org/products/plonemaintenance by
"Ingeniweb", http://www.ingeniweb.com/.

Changelog
=========

1.0 - Unreleased
----------------

* 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.

Source Distribution

Products.cron4plone-0.2dev-r86589.tar.gz (23.6 kB view details)

Uploaded Source

File details

Details for the file Products.cron4plone-0.2dev-r86589.tar.gz.

File metadata

File hashes

Hashes for Products.cron4plone-0.2dev-r86589.tar.gz
Algorithm Hash digest
SHA256 64785689bf7942bf6e951946e4f53ee3b30715543fa33ebd43d2c60d51df2525
MD5 c17556e7d496877550d4e41dea0b9916
BLAKE2b-256 294b1d78319eb14dfe741be8e88abb08ce5014a2f49542b017221fbdb7e46049

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page