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

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: wurker-0.1.31.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.31.tar.gz
Algorithm Hash digest
SHA256 c0e893717a3a1e6c741ed84453fe7355ec59f55437d87e900a1a39dd5d775768
MD5 d1db1864621bf6d2f99da023dcc7637d
BLAKE2b-256 5a4c9a2415e2088ffe13c44b67a6f2a5ff25a6944a4045e73448aeff4449bc85

See more details on using hashes here.

File details

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

File metadata

  • Download URL: wurker-0.1.31-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.31-py3-none-any.whl
Algorithm Hash digest
SHA256 f64f21fe4f9c775d6bf96628b4a0959e569f653d063e620a5a350c33f558d250
MD5 69bef843340da2be98a96a92bc5ed2d5
BLAKE2b-256 18c3edcd796dc548bea8e2a01ac70aaa2fef807972619a7366e155661f4ab93c

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