Cloudmesh Workflow¶
This project can also be taken as an independent study or as part of the Cloud Engineering class
Goals¶
In this project, you will be developing a workflow framework allowing cloudmesh shell tasks to be executed in a workflow engine. The workflow engine will be integrated with the cloudmesh backend database.
Workflows will be specified with the help of python functions. These functions will then be added to a queue. Futures are used to identify runnable functions that will be executed as soon as their parameters are defined.
A graphical user interface based on javascript Electron needs to be developed as part of this project. A preliminary code is available in Github at
The current implementation does not have parameter management included.
Requirements¶
Strong knowledge of python of the student working on the backend.
Knowledge of javascript of the student working on the graphical interface
Difficulty¶
moderate: The complexity of this project is moderate and allows you to look at advanced python language concepts as well as basic javascript features for rendering the workflow in real-time. You will need to understand multiprocessing in python. An example is provided in the Host.ping class in cloudmesh-cloud
Deliverables¶
Working benchmarks in form of reproducible workflows embedded in pytests
check-ins into GitHub by all team members. If only one team member checks in all other team members will not get credit.
benchmark of the tasks while reporting the results into the database
Definition of the objects stored in the database.