Skip to end of metadata
Go to start of metadata

2017-06-23 - hcron v0.21 released. See announcement.

Namehcron - Periodic Command Scheduler
RequirementsPython 2.6
LicenseGPL v2
LinksRepository, Discussion, Email

What is hcron?

hcron is a periodic command scheduler along the lines of the ubiquitous cron–but with some really useful differences.

hcron scales easily from a handful of events to many thousands:

At Environment Canada, hcron is in 24/7 operational use with over 300 users, over 3000 event definitions, and more than 130000 events scheduled each day.

What Sets hcron Apart?

Many features are unique to hcron:

  • events are defined individually (by file)
  • key=value based event format
  • events are labelled and organized hierarchically
  • events are composable (include directive)
  • template events (template_event field)
  • event chaining (next_event and failover_event fields)
  • powerful and concise variable manipulation
  • events do not get clobbered during system reinstalls
  • network-oriented rather than host-oriented

Comparing cron/crontab to hcron

crontab entry:

# hello_dolly
0 11,21 * 2-12/2 * ssh exechost.abc.xyz 'echo "hello dolly" > /tmp/hello_dolly'; mail -s done Mister.Big@mailhost.abc.xyz

hcron event file (called hello_dolly):

as_user=
host=exechost.abc.xyz
command=echo "hello dolly" > /tmp/hello_dolly
notify_email=Mister.Big@mailhost.abc.xyz
notify_message=done
when_month=2-12/2
when_day=*
when_hour=11,21
when_minute=0
when_dow=2

Using hcron means never needing to check the crontab man page to remember the field order. But there is more to hcron than a key=value approach.

See the Documentation for more.


  • No labels