Skip to content

The-Lennzer/TORN

Repository files navigation

      _____                   _______                   _____                    _____          
     /\    \                 /::\    \                 /\    \                  /\    \         
    /::\    \               /::::\    \               /::\    \                /::\____\        
    \:::\    \             /::::::\    \             /::::\    \              /::::|   |        
     \:::\    \           /::::::::\    \           /::::::\    \            /:::::|   |        
      \:::\    \         /:::/~~\:::\    \         /:::/\:::\    \          /::::::|   |        
       \:::\    \       /:::/    \:::\    \       /:::/__\:::\    \        /:::/|::|   |        
       /::::\    \     /:::/    / \:::\    \     /::::\   \:::\    \      /:::/ |::|   |        
      /::::::\    \   /:::/____/   \:::\____\   /::::::\   \:::\    \    /:::/  |::|   | _____  
     /:::/\:::\    \ |:::|    |     |:::|    | /:::/\:::\   \:::\____\  /:::/   |::|   |/\    \ 
    /:::/  \:::\____\|:::|____|     |:::|    |/:::/  \:::\   \:::|    |/:: /    |::|   /::\____\
   /:::/    \::/    / \:::\    \   /:::/    / \::/   |::::\  /:::|____|\::/    /|::|  /:::/    /
  /:::/    / \/____/   \:::\    \ /:::/    /   \/____|:::::\/:::/    /  \/____/ |::| /:::/    / 
 /:::/    /             \:::\    /:::/    /          |:::::::::/    /           |::|/:::/    /  
/:::/    /               \:::\__/:::/    /           |::|\::::/    /            |::::::/    /   
\::/    /                 \::::::::/    /            |::| \::/____/             |:::::/    /    
 \/____/                   \::::::/    /             |::|  ~|                   |::::/    /     
                            \::::/    /              |::|   |                   /:::/    /      
                             \::/____/               \::|   |                  /:::/    /       
                              ~~                      \:|   |                  \::/    /        
                                                       \|___|                   \/____/         

TORN(Task ORchestration eNgine)

TORN is a... well, a task orchestration engine, that let's you add jobs to a queue and executes them for you.

You can use the workers to queue jobs into a redis set and the workers will recursively process them.
TORN will be pakaged as an SDK and will be deployed to use with npm in the future

TORN MVP as of 14-06-2025 includes

  • REST API for enqueueing jobs
  • REST API for getting job health
  • worker method to process jobs
  • Executioner to execute each job and return structured results
  • Currently TORN only supports shell command based jobs
payload: {
    type: 'command',                         //only option as of now
    command: --shell command to execute--    //example: echo
    args: --array of arguments--             //example: ['hello', 'world']
}

On successfull completion of the job, the logger would print:

{   
    success: true,
    output: 'hello world',
    error: null
}

TORN also supports

  • retries with optional backoff ✔
  • dead letter queue for failed jobs ✔
  • metrics logging for each jobs ✔
  • concurrency using p-queues ✔

These are currently being worked on and will be available for TORN-v1.0.0

About

Task Orchestration Engine

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors