User Story¶
I want a system where I will be able to execute arbitrary tasks on a set of nodes. These tasks could be complex and require to execute some tasks before or after in a certain order. If possible, I want to reuse tasks for different projects if some parts of projects are similar.
I want to define an order of tasks and ask the system to execute it. I want to provide a conditions on where to execute these tasks - nodes are different and it is important to be able to choose the nodes. Then I want to copy-paste these tasks to nodes and execute.
The system should be deployed somewhere by organization or person, who have access to executing nodes I want to use. I don’t want to deploy the whole system to use it.
I want to be able to use the infrastructure provided to me by the system installation, and also attach my own infrastruction there. E.g., I may want to use my own credentials to cloud services to expand the infrastructure and use both installation and my cloud simultaneously.
The system should execute the combination of tasks and return me results. I want to be able to download results of tasks execution and any corresponding logs of processes.
I want to be able to conditionally execute tasks as a reaction to some event or condition fulfilled. These events and condition could be either externally generated (by me or other systems I allowed to) or appear as results of task execution or processing.
I don’t want other users of the system to have access to my files or results of execution.