Skip to main content

If cron and supervisor had a love child.

  • Schedule and supervise jobs using internal Python modules, or external scripts and commands.
  • Schedule on-demand jobs to run once. Or run jobs from the command-line.
  • Configure and manage jobs from the command-line, via API, or using the web app UI.

An experimental fork of Wurkzen Wurker.

img

Version

0.1.30

Documentation

Complete documentation is available in this repository:

Development

Starting at version 0.1.0, Wurker development began to focus on PyPi packaging. To enable easier packaging for distribution, we began to use the Hatch project manager. Follow the following instructions to install pipx and hatch on your development environment:

Next, install system dependencies, as documented in the full Wurker Documentation.

After hatch and all system dependencies are successfully installed, cd into the wurker-hatch directory and do:

hatch env create
hatch shell

History

It kinda IS rocket science to make a robust, reliable scheduler, that also supervises jobs and lets you run jobs on-demand. In the history DevOps, there are a multitude of solutions for similar problems.

This is (another) one of them.

The first incarnation of this project was stupid. It let you run interval jobs in either sub-processes or threads. That was disastrous. The next iteration just implemented APScheduler and had done. It was a good fit for the project.

The most recent iteration of Wurker was a proprietary CIELO project called "Jobber", which at first was only a scheduler, but over the course of half a decade evolved to also replace the use of cron and supervisor. We had need of both facilities – scheduled and supervised – and it was a lot of work to maintain proper configuration and even harder to find out what went wrong. Jobber was a toy in comparison to Wurker, but it ran under heavy load for half a decade with lots of love from CIELO devops.

Wurker was developed by Joseph Edwards in his role as a founder of Wurkzen, Inc., which agreed to release the project under an MIT open-source license.

The current version, Wurker Hatchery, is a major upgrade focusing on PyPI packaging using the Hatch project manager. The repository has been moved to: wurker-hatch on GitLab

Authors

All of the people who have contributed code to Wurker Hatchery or Wurkzen Wurker:

  • Joseph Edwards VIII (maintainer)
  • Mehul Savaliya
  • Jose Sieres
  • Rick Cabrera

License

Licensed under MIT license.

Download files

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

Source Distribution

wurker-0.1.30.tar.gz (1.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wurker-0.1.30-py3-none-any.whl (1.2 MB view details)

Uploaded Python 3

File details

Details for the file wurker-0.1.30.tar.gz.

File metadata

  • Download URL: wurker-0.1.30.tar.gz
  • Upload date:
  • Size: 1.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.27.2

File hashes

Hashes for wurker-0.1.30.tar.gz
Algorithm Hash digest
SHA256 53e69994296b8760be091173a24218b045fde78f1b135f2f9af5da1a7dd387a0
MD5 fd426ee7e5900da0a163b82a32e0a89e
BLAKE2b-256 c01fd20d06e61f3bdefc6675d6f431005f8bfffc0ab259832919269523545046

See more details on using hashes here.

File details

Details for the file wurker-0.1.30-py3-none-any.whl.

File metadata

  • Download URL: wurker-0.1.30-py3-none-any.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.27.2

File hashes

Hashes for wurker-0.1.30-py3-none-any.whl
Algorithm Hash digest
SHA256 ddea7a9386023f6c523a5237a79dc5695f3730359415c4cd66550020d52f8009
MD5 8abed65c0106215c82c49ea84aa9e231
BLAKE2b-256 efa2d3a56304c984efca6f960504d1dd0f8e097f8e18513bbbfe171905e5edd1

See more details on using hashes here.

Supported by

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