Oaradmin API Proposal
From WikiOAR
Contents |
Oaradmin API
2 years ago, a tool named oaradmin has been developed to ease the initial creation of OAR resources and to manage admission rules. We also wanted this tool to offer a configuration wizard but this part has never been coded. Oaradmin is written in Ruby.
Since then, we wrote a RESTful API for OAR (in perl). And now, it appears to us that if we build a configuration wizard, it has to be integrated inside the REST API and take the form of a web administration interface including:
- configuration variables setup
- epilogue/prologue files edition
- resources creation/edition (wrapping the current oaradmin ruby tool)
- admission rules edition (maybe wrapping the current oaradmin tool, but maybe not necessary)
- ssh keys management (initial creation, cpusets activation)
- ...
So, what we want now, is to integrate oaradmin (wrapped for the moment) into the API and to developp the missing features that should be used by a configuration wizard. The user interface part of the wizard is not to be coded during this project, as we have another project Web Portal Proposal that should have an "administration" part including this wizard. Anyway, this portal relies on the API and so, the API should provide anything the wizard will need. We want this project to interact with the Web Portal project. By the way, the feature #9935 should be taken into account (https://gforge.inria.fr/tracker/index.php?func=detail&aid=9935&group_id=125&atid=586)
When the oaradmin integration is made and wizard api ok, this work may be extended to adding features to the API and optimizing it. The OAR forge already contains feature requests for the API that may be taken into account during this internship.
Difficulty
Hard
Skills
- Perl
- REST concepts
- Ruby base knowledge (maybe necessary if oaradmin code needs to be touched)
- OAR administration knowledge
References
"OAR RESTful API": http://oar.imag.fr/archive/wiki-oar/index.php/OAR_API
Mentors
- Bruno Bzeznik
- Olivier Richard