Horust is a supervisor system written in rust and designed to be run in containers.
At this point, this should be considered Alpha software.
/etc/horust/services/
.
An example service:
```toml
path = "/usr/bin/mycoolapp.sh" restart-strategy = "always" start-delay = "10s" start-after = "my-other-service.toml" ```
Check the documentation for a complete reference.
You can also bootstrap the creation of a new service, by using horust --sample-service > new_service.toml
.
```toml name = "my-cool-service" command = "/bin/bash -c 'echo hello world'" working-directory = "/tmp/" start-delay = "2s" start-after = ["another.toml", "second.toml"] user = "root"
[restart] strategy = "never" backoff = "0s" attempts = 0
[healthiness] httpendpoint = "http://localhost:8080/healthcheck" filepath = "/var/myservice/up"
[failure] exit_code = [ 1, 2, 3] strategy = "ignore"
[termination] signal = "TERM" wait = "10s" ```
Horust itself can be tuned and modified by using the following shiny parameters: ```toml
sigterm
to a process before sending a SIGKILL.timeout-before-sigkill = "10s" ```
Thanks for considering contributing to horust!
Github Issue are a good place for getting started.
You can also search the code for TODO
s.
If you're planning to add new features, it's super awesome but please open an issue describing your proposal before you start working on it.
Have a look on DEVELOPMENT.md for more info on how to get started hacking on horust.
horust is provided under the MIT license. Please read the attached license file.