Cloudmesh Twister2 Interface

  • 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 framework in Python that allows us to use twister2 features. The project will include the design of a Python API and/or services so that twister2 functionality can easily be accessed from Python.

The design will be based on Python APIs and REST services. The REST services will be written with the help of OpenAPI allowing not only the development of clients written in Python, but also in a number of other languages, while leveraging automated REST service API code generators

Relevant links will be posted here shortly:

Requirements

  • Strong knowledge of Java and Python

  • Weekly activities and progress is required

  • Minimum project related work hours per week 6 - 12 hours

Difficulty

difficult: Twister2 is a large package, you will be asked to provide a subset of functionality that is determined by talking to Gregor von Laszewski.

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.

  • This project will not require you to write a report, but a manual page and documented source code