diff --git a/TODO.md b/TODO.md index 7c21f32..924eaec 100644 --- a/TODO.md +++ b/TODO.md @@ -1,18 +1,31 @@ +# Work + +## TODO + +- [ ] Implement basic scheduler +- [ ] Implement basic auth with OAuth2 +- [ ] Validating config file +- [ ] Load config file from `/etc/` +- [ ] Add CSS style with bootstrap +- [ ] Add `Dockerfile` and docker-compose example +- [ ] Add CI/CD to build docker image +- [ ] Add configuration to limit the logs head and tail + - In a limited mode, we would filter out logs and only keep the head and tail AND Errors or stacktrace +- [ ] Save logs incremently, in regular fashion +- [ ] Add HTML table instead of UL for tasks run history +- [ ] Sort tasks run history by date +- [ ] Pagination of tasks run history +- [ ] JSON support, content-negotiation - [ ] Websocket return of logs -- [ ] setup sqlite -- [ ] setup task runs (or orders) in sqlite -- [ ] store of task run logs in sqlite +- [ ] Add openmetrics exporter endpoint to alert when jobs fails +- [ ] Add jobs groups? +- [ ] Add a way to trigger one or multiples tasks from a webhook endpoint, defined in a config file +- [ ] Support connecting to remote server by SSH to execute task +- [ ] Support role authorization RBAC, reader and writer. + - Reader can only read logs and tasks results + - Writter can trigger task run. -simple axum server -simple templating route with axum +## Archive -Use minijinja for templating with django syntax https://lib.rs/crates/minijinja - -login OAuth2 -list tasks -button to trigger job -api to get logs of task run -schedule tasks runs -simple frontenv with htmlx - -- [ ] webhook +- [x] setup sqlite +- [x] store of task run logs in sqlite