From a4d362f3a8752ad2c7d4313a0c8f56ff3efc4788 Mon Sep 17 00:00:00 2001 From: simon Date: Sat, 1 Jun 2019 11:45:20 -0400 Subject: [PATCH] Documentation --- README.md | 52 +++++++++++++++++++++++++++++++++++++++++++++++ jenkins/deploy.sh | 2 +- src/drone.py | 6 ++++-- 3 files changed, 57 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 79061a4..e538afb 100644 --- a/README.md +++ b/README.md @@ -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) +``` \ No newline at end of file diff --git a/jenkins/deploy.sh b/jenkins/deploy.sh index d509821..9b405c8 100755 --- a/jenkins/deploy.sh +++ b/jenkins/deploy.sh @@ -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 diff --git a/src/drone.py b/src/drone.py index e3e437b..95d1710 100644 --- a/src/drone.py +++ b/src/drone.py @@ -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: