1 unstable release
0.1.0 | Jun 8, 2019 |
---|
#1 in #automaat
69 downloads per month
Used in 9 crates
9KB
68 lines
Automaat Core
🚧 Work In Progress 🚧
lib.rs
:
Automaat
Automaat can help you automate mundane and repeated tasks in a flexible way.
Its goal is to provide a simplified, user-friendly, and highly-customisable interface that combines "customer support" software, job schedulers and ad-hoc shell scripts you might currently be using at your organisation.
Automaat consists of several core crates:
automaat-core
(this one) – Provides the basic building blocks for the functionality of the other crates.automaat-server
– A server application, with an API to run processors, and persistent storage.automaat-web-client
– A WebAssembly-based application to interact with the server, and run processors.
There are also serveral existing processor implementations, each in their own crate:
automaat-processor-git-clone
– Clone any Git repository to the processor workspace.- [
automaat-processor-shell-command
][ps] – Execute a shell command. automaat-processor-redis-command
– Execute a Redis command.automaat-processor-string-regex
– Match (and replace) a string.automaat-processor-print-output
– Return a pre-defined string.
Using the automaat-server
crate, you can combine multiple processors into
a single Pipeline
, combined with a set of runtime Variable
s, to create
easy-to-use workflows to perform a specific task.
Core
This crate, automaat-core
, provides the main Processor
trait to create
new processors, and run them.
It also provides access to the Context
object, to share state between
multiple processors in a single run.
If you want to write your own processor, be sure to check out the
documentation of the Processor
trait.
Dependencies
~1.7–10MB
~119K SLoC