libbarto 0.3.0

Websocket based job scheduling system
Documentation

barto - A job scheduling system

codecov CI sponsor

MSRV

1.89.0

bartos - The barto server

Crates.io Crates.io Crates.io

Configuration

bartos configuration is controlled via a toml file. By default this is located in the bartos directory rooted at the dirs2 config directory, i.e. /home/<user>/.config/bartos/bartos.toml on a Linux machine. The full path to the configuration file can also be specified as a command-line argument to bartos. See the help output bartos --help for more details.

Format

# Actix Configuration
[actix]
workers = 8                        # Required
ip = "0.0.0.0"                     # Required
port = "20000"                     # Required

# Actix TLS Configuration
[actix.tls]                        # Optional
ip = "0.0.0.1"                     # Required, if TLS
port = "20000"                     # Required, if TLS
cert_file_path = "/path/cert.pem"  # Required, if TLS
key_file_path = "/path/key.pem"    # Required, if TLS

# MariaDB Configuration
[mariadb]
host = "localhost"                 # Required
port = 3307                        # Optional, default 3306
username = "user"                  # Required
password = "pass"                  # Required
database = "db"                    # Required
options = "ssl=true"               # Optional, & separated key-value pairs

# stdout Tracing Configuration
[tracing.stdout]
with_target = true                 # Required
with_thread_ids = false            # Required
with_thread_names = false          # Required
with_line_number = false           # Required
with_level = true                  # Required
directives = "actix_server=error"  # Required

# File Tracing Configuration
[tracing.file]
quiet = 0                          # Required
verbose = 3                        # Required

# File Tracing Layer Configuration
[tracing.file.layer]
with_target = true                 # Required
with_thread_ids = false            # Required
with_thread_names = false          # Required
with_line_number = false           # Required
with_level = true                  # Required
directives = "actix_server=error"  # Required

# An array of schedules for barto clients
# This is [schedules.<bartoc name>].  This should match the name defined in your bartoc.toml.
[schedules.barto] = [
    { name = "echo", on_calendar = "*-*-* 10:R:R", cmds = [ "echo -n \"barto\"" ] }
]

The on_calendar format is outlined at Realtime

bartoc - The barto client

Crates.io Crates.io Crates.io

barto-cli - The barto command line client

Crates.io Crates.io Crates.io

libbarto - The shared library

docs.rs Crates.io Crates.io Crates.io