A simple process manager written in Rust.
UNDER ACTIVE DEVELOPMENT
Igniter was written for fun and profit, the idea behind it is to a simple process manager to be used while developing projects that need some always on dependencies.
So imagine to be developing a frontend application and you need the API active on your machine and maybe some other dependencies (a database for example), Igniter reads an
.igniterc file and starts all the processes described into the configuration file.
There are a lot of other process manangers into the wild and most of them use a daemon process which monitors and manages all the child processes. Igniter does not provide a global daemon but instead runs a monitor process for every launched one, so there is a one-to-one relationship bewteen the process to be launched and the one which monitors.
Igniter is in its early stages, under active development and for such reasons is not yet feature complete neither its code is near to be considered good or safe. A list of future development ideas can be found into a further paragraph.
Suggestion and/or requests are always welcome!
Supported operating systems
Given its dependencies the supported OSs are the ones which are supported by
nix (link), this does not directly means that all the version are tested.
Currently there is no Windows support.
cargo install igniter
With an existing
.igniterc file into the current working directory issue
igniter from your terminal and Igniter will spawn all the processes defined into the configuration file.
TOML syntax supported, file in the root of your project. It is always needed a
.igniterc file to start monitoring a process.
[[process]] name = "process-1" # Required, the name of the process. Shown in list. cmd = "process" # The actual command to launch, must be the command without arguments args = [["-arg", "value"], ["--arg2"]] # Optional, must be an array of array max_retries = 10 # Optional, defaults to 0
The above block can be repeated any time needed into the same file to describe other processes, just mind to change the name.
igniter 0.1.0 Paolo Marino <firstname.lastname@example.org> A simple process manager USAGE: igniter [SUBCOMMAND] FLAGS: -h, --help Prints help information -V, --version Prints version information SUBCOMMANDS: help Prints this message or the help of the given subcommand(s) list list active processes monitor [INTERNAL] Monitors the provided command data as JSON stop Stops an already running process given its name
[x] Process restart on fail
 Environment variables
 Log Management
 Context awareness (Workspaces)