mirror of
https://github.com/simon987/task_tracker.git
synced 2025-04-19 18:16:45 +00:00
commit
27fcf28923
58
README.md
58
README.md
@ -3,6 +3,64 @@
|
|||||||
[](https://www.codefactor.io/repository/github/simon987/task_tracker)
|
[](https://www.codefactor.io/repository/github/simon987/task_tracker)
|
||||||
[](https://ci.simon987.net/job/task_tracker/)
|
[](https://ci.simon987.net/job/task_tracker/)
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
### 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
|
||||||
|
```bash
|
||||||
|
sudo su postgres
|
||||||
|
createuser task_tracker
|
||||||
|
createdb task_tracker
|
||||||
|
psql task_tracker
|
||||||
|
> ALTER USER "task_tracker" WITH PASSWORD '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
|
### Running tests
|
||||||
```bash
|
```bash
|
||||||
cd test/
|
cd test/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user