Skip to main content

ZTFY scheduler package for ZTK/ZopeApp

Project description

What is ztfy.scheduler ?

ztfy.scheduler is a base package for those which need to build scheduled tasks which can run inside a ZTK/ZopeApp based environment (ZEO is required !). These tasks can be scheduled:

  • on a cron-style base,

  • at a given date/time (like the “at” command)

  • or at a given interval.

Scheduling is done through the APScheduler (http://packages.python.org/APScheduler/) package and so all these kinds of tasks can be scheduled with the same sets of settings. But tasks management is made through a simple web interface and tasks running history is stored in the ZODB.

On application start, the scheduler is run in a dedicated ZeroMQ process, which is also used to handle synchronization between tasks settings and scheduler jobs.

Tasks logs can be stored in the ZODB for a variable duration (based on a number of iterations). These log reports can also be sent by mail, on each run or only when errors are detected.

How to use ztfy.scheduler ?

A set of ztfy.scheduler usages are given as doctests in ztfy/scheduler/doctests/README.txt

Changelog

0.5.2

  • allow multiple recipients of task execution report

0.5.1

  • removed condition on debug mode run button

0.5.0

  • added task execution menu to run in debug mode without using ZMQ process

0.4.9

  • updated french translation

0.4.8

  • added tasks attributes relatives to empty reports handling

0.4.7

  • use “tztime” function in history sorting

0.4.6

  • added one second before checking ZMQ processes startup

0.4.5

  • remove ZTFY.security resources dependencies

0.4.4

  • convert roles edit forms to dialogs

0.4.3

  • register ZMQ scheduler process exit callback function

0.4.2

  • added system command execution task (local, or remote throught SSH)

  • added option to execute a task immediately on user’s request

0.4.1

  • removed title from jobs list template

0.4.0

  • complete package refactoring, with tasks and scheduler jobs synchronization based on a dedicated ZeroMQ process

0.3.4

  • changed package source layout

0.3.3

  • implement ztfy.security ILocalRoleManager interface

0.3.2

  • start and stop scheduler when scheduler utility is registered or unregistered, instead of when it’s added or removed

  • remove scheduler from schedulers handler when scheduler is stopped

0.3.1

  • update ShelveJobStore to take care of specific file systems configurations, because sometimes shelve modification time is not updated when “sync()” is called. From now on jobs configuration timestamp is stored in shelve and a blocking file lock is used to prevent concurrent modifications in it. At least it seems to work on Linux, any feedback concerning other OS is still welcome…

0.3.0

  • refactoring to follow last releases of ztfy.skin and ztfy.jqueryui packages

  • redefined interfaces so that tasks scheduling mode (cron-style, interval-style…) can be defined on a per-task basis and is not bound to the task class; new scheduling modes can also be added via registered utilities

  • store tasks execution log in tasks history

  • add an “URL getter” task, which can be used to call a remote “management” URL on periodic basis

  • add username/password/realm to ZEO connections

  • modify ZODB packer task to be able to pack another remote database instead of only those to which scheduler is defined

  • improved handling of transactions and conflict errors

0.2.2

  • changed ISite package import

0.2.1

  • updated database automatic upgrade code

0.2

  • migrated to ZTK-1.1

  • integrated ZODBPackerTask (moved from ztfy.blog package)

0.1

  • 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

ztfy.scheduler-0.5.2.tar.gz (86.8 kB view details)

Uploaded Source

Built Distribution

ztfy.scheduler-0.5.2-py2.7.egg (109.8 kB view details)

Uploaded Source

File details

Details for the file ztfy.scheduler-0.5.2.tar.gz.

File metadata

File hashes

Hashes for ztfy.scheduler-0.5.2.tar.gz
Algorithm Hash digest
SHA256 4cb8dabe2ffc7d06a5b57bf4b33cd43d97e5c059c8f5cfaaa68f310d9eddaf63
MD5 98183ddf66b2cd5f5f420424e081e44a
BLAKE2b-256 57798aed92c990f66526c826e31e81ab15668ca5a61304d1e4ae2b6d80d369e9

See more details on using hashes here.

File details

Details for the file ztfy.scheduler-0.5.2-py2.7.egg.

File metadata

File hashes

Hashes for ztfy.scheduler-0.5.2-py2.7.egg
Algorithm Hash digest
SHA256 bd3f301ed1dbbcf5e64d86d63c3818b3abca4416b23ed96ffcf4ecf7fca711a7
MD5 3e5ff30b6c9677bd51ab08a34b9896c9
BLAKE2b-256 47ecf0e8267d11def863256ee7e0062aab81a786ae8bdeebd93240e819cd5032

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