A cron job runner with self-healing and job dependencies.
Перейти к файлу
Peter Bengtsson 55ecca951e coveralls badge in the README 2014-08-04 10:15:26 -07:00
crontabber no test coverage necessary on local execution function 2014-08-04 10:14:13 -07:00
docs fix typo s/that/what/ 2014-07-26 18:47:47 +02:00
exampleapp ongoing state, fixes #35, r=@twobraids 2014-07-31 15:34:58 -07:00
.coveragerc all your pull requests are belong to coveralls 2014-08-04 09:53:05 -07:00
.gitignore a first working sample app 2014-04-07 14:51:46 -07:00
.pep8 happier with pep8 2014-04-07 15:20:28 -07:00
.travis.yml all your pull requests are belong to coveralls 2014-08-04 09:53:05 -07:00
LICENSE initial commit 2014-03-26 16:09:51 -07:00
MANIFEST.in version 0.5 2014-04-15 09:19:48 -07:00
README.md coveralls badge in the README 2014-08-04 10:15:26 -07:00
requirements.txt must be >1.2.3 2014-06-17 11:52:18 -07:00
setup.py multiprocessing setup.py hack, fixes #37 2014-06-12 16:06:10 -07:00
test-requirements.txt all your pull requests are belong to coveralls 2014-08-04 09:53:05 -07:00

README.md

crontabber

A cron job runner with self-healing and job dependencies.

License: MPL 2

Coverage Status

How to run tests

First you need to create a dedicated test database. We recommend you call it test_crontabber. Then you need the necessary credentials for it.

Before running the tests you need to install some extras to be able to run tests at all:

pip install -r test-requirements.txt

Next, in the root directory of the project create a file called test-crontabber.ini and it should look something like this:

[crontabber]
user=myusername
password=mypassword
dbname=test_crontabber

To start all the tests run:

PYTHONPATH=. nosetests

If you want to run a specific test in a specific file in a specific class you can define it per the nosetests standard like this for example:

PYTHONPATH=. nosetests tests crontabber/tests/test_crontabber.py:TestCrontabber.test_basic_run_job

If you want the tests to stop as soon as the first test fails add -x to that same command above.

Also, if you want nosetests to not capture stdout add -s to that same command as above.

How to do code coverage analysis

First you need to install the coverage module. Then, with `nosetests, you can run this:

PYTHONPATH=. nosetests --with-coverage --cover-erase --cover-html --cover-package=crontabber

After it has run, you can open the file cover/index.html in browser.

How to run the exampleapp

The example app helps you set up a playground to play around with and test crontabber to gain a better understanding of how it works.

The best place to start with is to read the exampleapp/README.md file and go through its steps. Once you get the basics to work you can start experimenting with adding your job classes.