From dfeddce2e938582d63c2d0f8234ca60dc64c5de0 Mon Sep 17 00:00:00 2001 From: Simon Fortier Date: Mon, 1 Apr 2019 09:03:42 -0400 Subject: [PATCH 1/2] readme-draft wip --- README.md | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/README.md b/README.md index 0faac64..b3b7867 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,38 @@ [![CodeFactor](https://www.codefactor.io/repository/github/simon987/task_tracker/badge)](https://www.codefactor.io/repository/github/simon987/task_tracker) [![Build Status](https://ci.simon987.net/buildStatus/icon?job=task_tracker)](https://ci.simon987.net/job/task_tracker/) +Fast task tracker with authentication, statistics and web frontend + + + +### Postgres setup +```bash +sudo su postgres +createuser task_tracker +createdb task_tracker +psql task_tracker +>  +``` + +### Nginx Setup + +```nginx +index index.html; + +root /path/to/webroot; + +location / { + try_files $uri $uri/ /index.html; +} +location ~ /api(.*)$ { + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection 'upgrade'; + proxy_set_header Host $host; + proxy_pass http://127.0.0.1:3010$1?$args; # Change host/port if necessary +} +``` + ### Running tests ```bash cd test/ From fcefad21ca30ca859072cbc2b7579a79902319c4 Mon Sep 17 00:00:00 2001 From: Simon Fortier Date: Sat, 6 Apr 2019 21:10:07 -0400 Subject: [PATCH 2/2] Update README.md --- README.md | 30 ++++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index b3b7867..836f0fc 100644 --- a/README.md +++ b/README.md @@ -3,8 +3,34 @@ [![CodeFactor](https://www.codefactor.io/repository/github/simon987/task_tracker/badge)](https://www.codefactor.io/repository/github/simon987/task_tracker) [![Build Status](https://ci.simon987.net/buildStatus/icon?job=task_tracker)](https://ci.simon987.net/job/task_tracker/) -Fast task tracker with authentication, statistics and web frontend +Fast task tracker (job queue) with authentication, statistics and web frontend +### Features + +* Stateless/Fault tolerent +* Integrate projects (or queue, tube) with Github/Gogs/Gitea - make workers aware of new commits +* Granular user permissions for administration tasks +* Prioritisable (project-level and task-level) +* Optionnal unique task constraint +* Per-project rate-limitting +* Per-project and per-worker stats monitoring + +![image](https://user-images.githubusercontent.com/7120851/55676940-714cf980-58ac-11e9-8f5d-0d76a7afa80d.png) + +### Terminology + + +**task_tracker** | Beanstalkd | Amazon SQS | IronMQ +:---|:---|:---|:--- +Project | Tube | Queue | Queue +Task | Job | Message | Message +Recipe | Job data | Message body | Message body +Submit | Put | Send message | POST +Assign | Reserve | Receive message | GET +Release | Delete | Delete message | DELETE +max_assign_time | TTR (time-to-run) | Visibility timeout | Timeout +\- | Delay | Delivery delay | Delay +\- | - | Retention Period | Expires in ### Postgres setup @@ -13,7 +39,7 @@ sudo su postgres createuser task_tracker createdb task_tracker psql task_tracker ->  +> ALTER USER "task_tracker" WITH PASSWORD 'task_tracker'; ``` ### Nginx Setup