Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/prixladi/tusker
Configurable task queue service with administration
https://github.com/prixladi/tusker
deno docker mongodb sass solidjs task-runner typescript
Last synced: about 6 hours ago
JSON representation
Configurable task queue service with administration
- Host: GitHub
- URL: https://github.com/prixladi/tusker
- Owner: prixladi
- License: mit
- Created: 2023-02-05T08:52:57.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2023-05-16T20:23:46.000Z (over 1 year ago)
- Last Synced: 2023-08-20T11:01:48.555Z (about 1 year ago)
- Topics: deno, docker, mongodb, sass, solidjs, task-runner, typescript
- Language: TypeScript
- Homepage:
- Size: 225 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Tusker
Selfhosted task runner supporting multiple queues, retrying, limits and many more settings such as:
- `maximum` running tasks in parallel
- `maximum` number tasks running each second
- `maximum` retries of each task
- `maximum` backoff of failed task
- `minimum` backoff after failed taskAllows (delayed) execution of tasks. (`executor`)
On application level queues and tasks can be created using REST Api. (`api`)
Also contains simple administration where user can configure queues. (`admin`)
### WARNING
Because there is no authorization yet, the application is intended to be running in your internal network **WITHOUT** exposition to the internet. Some kind of authorization and permission system is planned in the future.
## Services
Brief description of existing services.
- `api` - Deno service with REST Api for configuring queues and running tasks.
- `executor` - Deno service that executes tasks in queues.
- `admin` - Solidjs web app with administration.## Running application
For running application in production mode all you need is `docker` and `docker-compose`.
### Start
```bash
docker-compose up -d
```After successfully starting application using `docker-compose` administration will listen on `localhost:80` and api on `localhost:8000`.
## Application
![list](assets/list.png)
![edit](assets/edit.png)