+ 1.

Just one cosmetic name change to consider, may be the applicationCatalog.thrift 
should be also explicit and name it applicationCatalogAPI.thrift?

Suresh
On May 12, 2014, at 2:49 AM, Saminda Wijeratne <samin...@gmail.com> wrote:

> heads up on the name change for the above mentioned thrift file to 
> applicationCatalogDataModel.thrift [1]. 
> 
> Also added a new thrift file to define the initial ApplicationCatalog related 
> API functions @ [2]. It has,
> Functions to manage ComputerResourceDescriptions
> Functions to manage ApplicationInterfaces (for completeness)
> Functions to manage ApplicationDeployments (for completeness)
> Thanks,
> Saminda
> 
> 1. 
> https://git-wip-us.apache.org/repos/asf?p=airavata.git;a=blob;f=airavata-api/thrift-interface-descriptions/applicationCatalogDataModel.thrift;h=65314f06de3bc8c3bc31c41c8109d89f4265fcbf;hb=HEAD
> 2. 
> https://git-wip-us.apache.org/repos/asf?p=airavata.git;a=blob;f=airavata-api/thrift-interface-descriptions/applicationCatalog.thrift;h=19f81e5db1dcadf9d636beab6325dc795d9eab7e;hb=HEAD
> 
> 
> On Sun, May 11, 2014 at 12:25 PM, Saminda Wijeratne <samin...@gmail.com> 
> wrote:
> Thank you all for your feedback from both the mailing list and google hangout 
> discussions. As for the last weeks google hangout discussion we came to the 
> following conclusions regarding phase 1.
> 
> Focus only on thrift data model ComputeResourceDescription[1] (i.e. hosts)
> we'll re-evaluate the design after the tutorial
> Thrift API functions will be defined for the thrift data model 
> ComputeResourceDescription and its supporting models in a separate thrift file
> Thrift data models for the rest of the Application Catalog components will be 
> focussed upon later
> Reuse the existing ServiceDescriptor and ApplicationDescriptor schema objects 
> for the time-being to fill the missing void in the application catalog.
> A new component called "Application Catalog" will be introduced along with a 
> CPI for it
> We will be saving ComputeResourceDescription as the way we save thrift 
> objects. But ApplicationDescriptor and ServiceDescriptor will be saved as 
> blobs with basic id/name metadata fields to allow querying.
> Samples and tests which used descriptors to add applications will use the new 
> CPI/API functions as necessary to add applications to the Application Catalog
> GFac will retrieve applications from the application catalog retiring the old 
> Airavata API completely. However in order to minimize the changes at GFac 
> side it will transform the application catalog to schema objects 
> service/host/application descriptors.
> We will attempt to complete these changes by 16th May in order to start 
> testing and using them by next week.
> 
> Thanks,
> Saminda
> 
> 1. 
> https://git-wip-us.apache.org/repos/asf?p=airavata.git;a=blob;f=airavata-api/thrift-interface-descriptions/computeResourceDescription.thrift;h=c025f12ade908fbdd395a1d4c64f811e49f4dd3d;hb=HEAD
>  
> 
> On Tue, May 6, 2014 at 12:11 PM, Raminder Singh <raminderjsi...@gmail.com> 
> wrote:
> Thanks Sachith.  We can have host object independent of application as the 
> same host definition can be used for multiple applications. Please add 
> complete details of host and application properties like Application 
> type(MPI, OpenMP, MapReduce etc), JobManager (PBS, SLURM,EC2). You need to 
> consider extensibility of the models also as requirements may change with job 
> or monitoring manager details. 
> 
> Thanks
> Raminder
> 
> On May 5, 2014, at 4:12 PM, Sachith Withana <swsach...@gmail.com> wrote:
> 
>> 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 Gateway
>> API 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
>> 
> 
> 
> 

Reply via email to