Thrift module: application_deployment_model

This file describes the definitions of the Data Structures related to deployment of Application on
 computational resources.


ModuleServicesData typesConstants
application_deployment_model ApplicationDeploymentDescription
ApplicationModule
CommandObject
SetEnvPaths

Data structures

Struct: SetEnvPaths

KeyFieldTypeDescriptionRequirednessDefault value
1namestringrequired
2valuestringrequired
3envPathOrderi32optional

Key Value pairs to be used to set environments

name:
  Name of the environment variable such as PATH, LD_LIBRARY_PATH, NETCDF_HOME.

value:
  Value of the environment variable to set

envPathOrder:
  The order of the setting of the env variables when there are multiple env variables

Struct: CommandObject

KeyFieldTypeDescriptionRequirednessDefault value
1commandstringrequired
2commandOrderi32optional

Job commands to be used in Pre Job, Post Job and Module Load Commands

command:
  The actual command in string format

commandOrder:
  Order of the command in the multiple command situation

Struct: ApplicationModule

KeyFieldTypeDescriptionRequirednessDefault value
1appModuleIdstringrequired"DO_NOT_SET_AT_CLIENTS"
2appModuleNamestringrequired
3appModuleVersionstringoptional
4appModuleDescriptionstringoptional

Application Module Information. A module has to be registered before registering a deployment.

appModuleId: Airavata Internal Unique Job ID. This is set by the registry.

appModuleName:
  Name of the application module.

appModuleVersion:
  Version of the application.

appModuleDescription:
   Descriprion of the Module


Struct: ApplicationDeploymentDescription

KeyFieldTypeDescriptionRequirednessDefault value
1appDeploymentIdstringrequired"DO_NOT_SET_AT_CLIENTS"
2appModuleIdstringrequired
3computeHostIdstringrequired
4executablePathstringrequired
5parallelismparallelism_model.ApplicationParallelismTyperequiredparallelism_model.ApplicationParallelismType.SERIAL
6appDeploymentDescriptionstringoptional
7moduleLoadCmdslist<CommandObject>optional
8libPrependPathslist<SetEnvPaths>optional
9libAppendPathslist<SetEnvPaths>optional
10setEnvironmentlist<SetEnvPaths>optional
11preJobCommandslist<CommandObject>optional
12postJobCommandslist<CommandObject>optional
13defaultQueueNamestringoptional
14defaultNodeCounti32optional
15defaultCPUCounti32optional
16defaultWalltimei32optional
17editableByUserbooloptional

Application Deployment Description

appDeploymentId: Airavata Internal Unique Job ID. This is set by the registry.

appModuleName:
  Application Module Name. This has to be precise describing the binary.

computeHostId:
  This ID maps application deployment to a particular resource previously described within Airavata.
  Example: Stampede is first registered and refered when registering WRF.

moduleLoadCmd:
 Command string to load modules. This will be placed in the job submisison
 Ex: module load amber

libPrependPaths:
 prepend to a path variable the value

libAppendPaths:
 append to a path variable the value

setEnvironment:
 assigns to the environment variable "NAME" the value