Hi all,After an offline discussion, we came up with an initial Application
Catalog design which captures the minimum requirements.
Any suggestions?
Functionalities for the GatewayAPI Thrift Functions
-
add // (not required for tutorial but will make life easier for us)
-
String add(application) //return application id
-
String add(applicationId,deployment) //return deployment id
-
get
-
get(applicationId) //return application
-
get(applicationId, deploymentId) //return deployment
-
remove //optional
-
remove(applicationId)
-
remove(applicationId, deploymentId)
-
update //optional
-
update(application)
-
update(applicationId, deployment)
-
list
-
String[] list() // list of application ids
-
String[] list(applicationId) // list of deployment ids
API Thrift Data model
Application (application id)
Input* : name/type/optional?
Output* : name/type/optional?/
Deployment* (deployment id)
Host (host id)
host IP
host job management protocol and properties
host data management protocol and properties
executable path
scratch location
job properties (key/value default values)
eg: Project Id, CPU count, Node count, Wall time
*0 or more
BOLD : minimum requirement
--
Thanks,
Sachith Withana