Documentation

This commit is contained in:
simon 2019-06-01 11:45:20 -04:00
parent aa15a1b29e
commit a4d362f3a8
3 changed files with 57 additions and 3 deletions

View File

@ -8,3 +8,55 @@ General purpose 'set and forget' task runner and API wrapper for [simon987/task_
cd src
python -m unittest discover
```
## Usage (task runner daemon)
Python 3.7
```bash
git clone https://github.com/simon987/task_tracker_drone
cd task_tracker_drone
python -m pip install -r requirements.txt
cd src
python ./drone.py "http://exemple-api-url.com/" "alias"
# You will have to manually grant permission to the worker from the
# web UI (For private/hidden projects)
```
## Usage (Library)
```bash
git submodule add https://github.com/simon987/task_tracker_drone
```
In your project:
```python
from task_tracker_drone.src.tt_drone.api import TaskTrackerApi, Worker, LOG_TRACE
api = TaskTrackerApi(https://tt.simon987.net/api)
worker = Worker.from_file(api)
if not worker:
worker = api.make_worker("alias")
worker.dump_to_file()
worker.fetch_task(project_id=1)
worker.submit_task(project=1,
recipe="",
priority="",
max_assign_time=1,
hash64=0,
unique_str="",
verification_count=1,
max_retries=1)
worker.bulk_submit_task(project=1, tasks=[])
worker.release_task(task_id=0, result=0, verification=0)
worker.get_project_list()
worker.get_secret(project=1)
worker.log(level=LOG_TRACE, message="", timestamp=0, scope="")
# You will have to manually grant permission from the web UI
worker.request_access(project=1, assign=True, submit=True)
```

View File

@ -12,6 +12,6 @@ pip install -r requirements.txt
deactivate
echo "starting drone"
screen -S tt_drone -d -m bash -c "source env/bin/activate && python src/drone.py"
screen -S tt_drone -d -m bash -c "source env/bin/activate && python src/drone.py 'https://tt.simon987.net' 'tt_drone'"
sleep 1
screen -list

View File

@ -2,6 +2,8 @@ import signal
import threading
import time
import sys
from tt_drone.api import (Worker, TaskTrackerApi)
from tt_drone.worker import (WorkerContext)
@ -61,10 +63,10 @@ def drone(ctx: WorkerContext):
pass
api = TaskTrackerApi("https://tt.simon987.net/api")
api = TaskTrackerApi(sys.argv[1])
worker = Worker.from_file(api)
if not worker:
worker = api.make_worker("drone")
worker = api.make_worker(sys.argv[2])
worker.dump_to_file()
projects = worker.get_project_list()
for project in projects: