queued

General information
Installation guide
How to use
Configuration
Links

Report a bug

Daemon for starting jobs to queue of calculations. It was written as proof-of-concept.

$ queued --help
Simple daemon written on BASH for starting jobs to queue of calculations

Usage: queued [ -c /etc/queued.conf ] [ -v | --version ] [ -h | --help ]
Parametrs:
  -c               PATH     - path to configuration file. Default is '/etc/queued.conf'

  -v   --version            - show version and exit
  -h   --help               - show this help and exit
$ add_queued --help
add_queued [ -c /etc/queued.conf ] [ -p NUM ] [ -u USER ] [ -h | --help ] /path/to/script

Parameters:
    -c               PATH     - path to configuration file. Default is '/etc/queued.conf'
    -p               NUM      - job priority
    -u               USER     - username
    -h   --help               - show this help and exit

Developers and contributors

License

Installation

Instruction

Dependencies

I want note that all were tested on latest version of dependencies.

How to use

If you want to start the daemon just run

systemctl start queued

If you want to enable daemon autoload run

systemctl enable queued

But you may change path to configuration file or change parameters. To do it just copy (recommended) the source configuration file to new path

cp /etc/queued.conf /path/to/new/queued.conf

and edit it. Then copy the source service file to /etc:

cp /usr/lib/systemd/system/queued.service /etc/systemd/system/queued-my-profile.service

Replace following string in the file:

ExecStart=/usr/bin/queued

to

ExecStart=/usr/bin/queued -c /path/to/new/queued.conf

Adding a job

  1. Create shell script with the command (e.g. it have a name script.sh).
  2. Create priority file (script.sh.pr) with the job priority if it is needed.
  3. Create user file (script.sh.user) with the job username if it is needed.
  4. Copy files to $WORKDIR.

Also you may use add_queued.

Configuration

All settings are stored in /etc/queued.conf. After edit them you must restart daemon

systemctl restart queued

Options

WORKDIR Full path to directory with source jobs. Default is /var/lib/queued/work. This directory must contain source scripts script-name, a priority file (it is not necessary) script-name.pr and a file with username (it is not necessary too) script-name.user.
JOBDIR Full path to directory with running jobs. Default is /var/lib/queued/job. All job files will be moved here.
QUEUEFILE Full path to file with queue list. Default is /var/lib/queued/queue.
PRIORITY Default priority. Default is 0. The higher the value, the higher the priority of the task.
SLEEPTIME Time interval in minutes. Default is 5.
STARTASUSER Default user. Default is root. This user will own created files.

Links