Skip to main content

Crawl filesystems for crontab files and schedule jobs.

Project description

Installation

To install cronster, type:

$ pip install cronster

Getting Started

Install Redis

To get started with cronster, install Redis on your computer (macOS & Homebrew in this example):

$ brew install redis
$ brew services start redis

Digital Ocean has a great tutorial on how install Redis on Ubuntu.

Run the crawler

Assuming Redis is running on your machine in default configuration and you want to crawl from ~/projects, run the following command:

$ cronster_crawler -r ~/projects

The full help output explains the other options of the CLI application. It is possible to change certain parameters should Redis on a different host/port or should you want to adjust the interval between crawls:

Usage: cronster_crawler [OPTIONS]

Options:
  -r, --root TEXT           Crawling root, default: the current working directory
  -h, --cache-host TEXT     Cache host, default: localhost
  -p, --cache-port INTEGER  Cache port, default: 6379 (Redis default)
  -i, --interval INTEGER    Crawling interval, default: 2 seconds
  --help                    Show this message and exit.

Run the scheduler

Assuming Redis is running on your machine in default configuration, run the following command:

$ cronster_scheduler

The full help output explains the other options of the CLI application. It is possible to change Redis-related parameters should Redis on a different host or port:

Usage: cronster_scheduler [OPTIONS]

Options:
  -h, --cache-host TEXT     Cache host, default: localhost
  -p, --cache-port INTEGER  Cache port, default: 6379 (Redis default)
  --help                    Show this message and exit.

Write a crontab file

Write the following YAML file to ~/projects/crontab (or any other location anywhere in the hierarchy under your root location):

test_job:
    cmd: echo "Hello, World!"
    schedule: "*/5 * * * *"

You should see the job being picked up by the crawler on the next crawl and should see the scheduler run the job every five minutes.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for cronster, version 0.1.1
Filename, size File type Python version Upload date Hashes
Filename, size cronster-0.1.1-py2.py3-none-any.whl (10.2 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size cronster-0.1.1.tar.gz (17.1 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page