Skip to main content

runseq

Simple job manager to run jobs sequentially in a Linux machine.

This simple command line tool was created to solve a problem similar to the ones described here:

Specifically, I wanted a way to execute long processing jobs sequentially and be able to modify the queue of upcomming jobs while a job was running.

usage

Using --help will show the tool usage:

usage: runseq [-h] {run,add,list,ls,remove,rm,clear,cl} ...

runs jobs sequentially

options:
-h, --help            show this help message and exit

actions:
valid actions

{run,add,list,ls,remove,rm,clear,cl}
    run                 run jobs as they appear on queue; this command does not return
    add                 add a job to the queue
    list (ls)           list jobs in the queue
    remove (rm)         remove a job from the queue
    clear (cl)          remove all finished jobs from the queue

To use this tool, a job runner process must be started with the command run.

You may want to run the job runner in the background as follows:

nohup runseq run > jobs.log 2>&1 &

Upon the first interaction with the job queue, runseq will create a sqlite database named runseq.sqlite3 in the current directory. If you want to save the database somewhere else, then set the desired path in the environment variable RUNSEQ_DB before running any runseq command.

To submit jobs to the queue, use the add command. The first argument is the priority, which should be an integer; the remaining arguments form the command to be executed. Jobs will be executed in decreasing priority order. A shell will be spawn by the runner process and the command will be execute in the shell, which means that shell builtin commands are available as in the following example:

runseq add 1 sleep 5 '&&' echo hello 

(note the quoted && to avoid being interpreted by the shell where the runseq add command is being executed)

authorhip and license

This program was created by Luís Gomes (https://research.variancia.com/) and is licensed under the GPLv3 license.

Download files

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

Source Distribution

runseq-0.3.0.tar.gz (41.0 kB view details)

Uploaded Source

Built Distribution

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

runseq-0.3.0-py3-none-any.whl (29.0 kB view details)

Uploaded Python 3

File details

Details for the file runseq-0.3.0.tar.gz.

File metadata

  • Download URL: runseq-0.3.0.tar.gz
  • Upload date:
  • Size: 41.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.2

File hashes

Hashes for runseq-0.3.0.tar.gz
Algorithm Hash digest
SHA256 82830a9bdefaac94cbc9c9183d6c06c95218d3715eda78afcbfd70afbf6e59d3
MD5 1e072bb302af671d9daca66bd8af1673
BLAKE2b-256 bb0605eca1058622a6cace877f8a3e7683cb3b856d9c7b080a06c7d252016c2e

See more details on using hashes here.

File details

Details for the file runseq-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: runseq-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 29.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.2

File hashes

Hashes for runseq-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b9459904572a022fc4015f97c0e6c60859f19f7857bc227b024007eb7eaebfaa
MD5 a377f0f721bcf05c76b11caa8fa65bc9
BLAKE2b-256 707e8a2a770ded67b21ca578b5b215fedf799cd7d5fc89a6a433c5b40d0e4e45

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 files

0.2.2

2 files

0.2.1

1 file

0.2.0

1 file

0.1.1

1 file

0.1.0

1 file

0.0.4

1 file

Supported by

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