From 7c0be29f1347210dd4384873ec45bfb00ee47067 Mon Sep 17 00:00:00 2001 From: Matthieu Bessat Date: Sun, 21 Jul 2024 17:25:13 +0200 Subject: [PATCH] docs: README --- README.md | 48 ++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 38 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index a38838f..c80b8ea 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,43 @@ -## features +# Autotasker -- List the jobs available -- Run a background-process +Autotasker is a small server-side job runner and scheduler. -- actix -- tera +Autotasker free software licenced under [GPLv3](https://www.gnu.org/licenses/gpl-3.0.html). -## vocabulary +## Getting started -- Job -- JobRun +- Create a config file to define your tasks. +- Deploy the server (using git clone + cargo or docker or binary + systemd service). +- Enjoy! -Using -https://docs.rs/sqlx-models/latest/sqlx_models/ +## Philosophy + +Unix-like + +- Small. +- Can be configured with a file. +- Can be interfaced easily. + +## Features + +- [x] List the tasks availables. +- [x] Run tasks in background. +- [x] Store the logs and tasks runs in a sqlite DB. +- [ ] Schedule tasks (CRON-like). +- [ ] OpenMetrics exporter to alert when a task failed. +- [ ] External alerting when a task failed. +- [ ] Run task via webhook, with a webhook token. +- [ ] Content negociation with JSON or HTML. +- [ ] OAuth2 support for admin. + +## Vocabulary + +- `Task` is a configured command to be run. +- `TaskRun` refer to a singular task run. + +## Built with + +- [Axum](https://lib.rs/crates/axum) for web server. +- [Tera](https://lib.rs/crates/tera) for templating. +- [Sqlx](https://lib.rs/crates/sqlx) to interact with Sqlite. +- [Sqlite](https://sqlite.org/) for storing state and logs.