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.33

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.33.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.33-py3-none-any.whl (1.2 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: wurker-0.1.33.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.33.tar.gz
Algorithm Hash digest
SHA256 ca665df46cb4ac35038311ed827d20b2264d26d1a7709c774e0388c9d2220565
MD5 e1cf7bc1dee842849897e34f337402c0
BLAKE2b-256 4098059013f2f44d374248693cd3fe8b656aac9571760ab13ab16ad7c24f6897

See more details on using hashes here.

File details

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

File metadata

  • Download URL: wurker-0.1.33-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.33-py3-none-any.whl
Algorithm Hash digest
SHA256 a1a4df1072bfb3ac4bf0d61cbf12d597d5ba4eec5e1c4d02815788c7f3fe12cd
MD5 29d014d33dabad38a285ecf7ff0e2fc7
BLAKE2b-256 309a798e38e362f91e7f16a230cb7a4bcbc5685bbea3dca4558486d44075f140

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