blob: b057e5b979ffddf334f28cf5f58878cd137e03b3 [file] [log] [blame]
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<link href="style.css" rel="stylesheet" type="text/css"/>
<title>Thrift module: application_deployment_model</title></head><body>
<div class="container-fluid">
<h1>Thrift module: application_deployment_model</h1>
<pre>This file describes the definitions of the Data Structures related to deployment of Application on
computational resources.
</pre><br/><table class="table-bordered table-striped table-condensed"><thead><tr><th>Module</th><th>Services</th><th>Data types</th><th>Constants</th></tr></thead><tbody>
<tr>
<td>application_deployment_model</td><td></td>
<td><a href="#Struct_ApplicationDeploymentDescription">ApplicationDeploymentDescription</a><br/>
<a href="#Struct_ApplicationModule">ApplicationModule</a><br/>
<a href="#Struct_CommandObject">CommandObject</a><br/>
<a href="#Struct_SetEnvPaths">SetEnvPaths</a><br/>
</td>
<td></td>
</tr></tbody></table>
<hr/><h2 id="Structs">Data structures</h2>
<div class="definition"><h3 id="Struct_SetEnvPaths">Struct: SetEnvPaths</h3>
<table class="table-bordered table-striped table-condensed"><thead><tr><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></tr></thead><tbody>
<tr><td>1</td><td>name</td><td><code>string</code></td><td></td><td>required</td><td></td></tr>
<tr><td>2</td><td>value</td><td><code>string</code></td><td></td><td>required</td><td></td></tr>
<tr><td>3</td><td>envPathOrder</td><td><code>i32</code></td><td></td><td>optional</td><td></td></tr>
</tbody></table><br/><pre>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
</pre><br/></div><div class="definition"><h3 id="Struct_CommandObject">Struct: CommandObject</h3>
<table class="table-bordered table-striped table-condensed"><thead><tr><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></tr></thead><tbody>
<tr><td>1</td><td>command</td><td><code>string</code></td><td></td><td>required</td><td></td></tr>
<tr><td>2</td><td>commandOrder</td><td><code>i32</code></td><td></td><td>optional</td><td></td></tr>
</tbody></table><br/><pre>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
</pre><br/></div><div class="definition"><h3 id="Struct_ApplicationModule">Struct: ApplicationModule</h3>
<table class="table-bordered table-striped table-condensed"><thead><tr><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></tr></thead><tbody>
<tr><td>1</td><td>appModuleId</td><td><code>string</code></td><td></td><td>required</td><td><code>"DO_NOT_SET_AT_CLIENTS"</code></td></tr>
<tr><td>2</td><td>appModuleName</td><td><code>string</code></td><td></td><td>required</td><td></td></tr>
<tr><td>3</td><td>appModuleVersion</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
<tr><td>4</td><td>appModuleDescription</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
</tbody></table><br/><pre>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
</pre><br/></div><div class="definition"><h3 id="Struct_ApplicationDeploymentDescription">Struct: ApplicationDeploymentDescription</h3>
<table class="table-bordered table-striped table-condensed"><thead><tr><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></tr></thead><tbody>
<tr><td>1</td><td>appDeploymentId</td><td><code>string</code></td><td></td><td>required</td><td><code>"DO_NOT_SET_AT_CLIENTS"</code></td></tr>
<tr><td>2</td><td>appModuleId</td><td><code>string</code></td><td></td><td>required</td><td></td></tr>
<tr><td>3</td><td>computeHostId</td><td><code>string</code></td><td></td><td>required</td><td></td></tr>
<tr><td>4</td><td>executablePath</td><td><code>string</code></td><td></td><td>required</td><td></td></tr>
<tr><td>5</td><td>parallelism</td><td><code><a href="parallelism_model.html#Enum_ApplicationParallelismType">parallelism_model.ApplicationParallelismType</a></code></td><td></td><td>required</td><td><code><code><a href="#Const_parallelism_model.ApplicationParallelismType.SERIAL">parallelism_model.ApplicationParallelismType.SERIAL</a></code></code></td></tr>
<tr><td>6</td><td>appDeploymentDescription</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
<tr><td>7</td><td>moduleLoadCmds</td><td><code>list&lt;<code><a href="#Struct_CommandObject">CommandObject</a></code>&gt;</code></td><td></td><td>optional</td><td></td></tr>
<tr><td>8</td><td>libPrependPaths</td><td><code>list&lt;<code><a href="#Struct_SetEnvPaths">SetEnvPaths</a></code>&gt;</code></td><td></td><td>optional</td><td></td></tr>
<tr><td>9</td><td>libAppendPaths</td><td><code>list&lt;<code><a href="#Struct_SetEnvPaths">SetEnvPaths</a></code>&gt;</code></td><td></td><td>optional</td><td></td></tr>
<tr><td>10</td><td>setEnvironment</td><td><code>list&lt;<code><a href="#Struct_SetEnvPaths">SetEnvPaths</a></code>&gt;</code></td><td></td><td>optional</td><td></td></tr>
<tr><td>11</td><td>preJobCommands</td><td><code>list&lt;<code><a href="#Struct_CommandObject">CommandObject</a></code>&gt;</code></td><td></td><td>optional</td><td></td></tr>
<tr><td>12</td><td>postJobCommands</td><td><code>list&lt;<code><a href="#Struct_CommandObject">CommandObject</a></code>&gt;</code></td><td></td><td>optional</td><td></td></tr>
<tr><td>13</td><td>defaultQueueName</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
<tr><td>14</td><td>defaultNodeCount</td><td><code>i32</code></td><td></td><td>optional</td><td></td></tr>
<tr><td>15</td><td>defaultCPUCount</td><td><code>i32</code></td><td></td><td>optional</td><td></td></tr>
<tr><td>16</td><td>defaultWalltime</td><td><code>i32</code></td><td></td><td>optional</td><td></td></tr>
<tr><td>17</td><td>editableByUser</td><td><code>bool</code></td><td></td><td>optional</td><td></td></tr>
</tbody></table><br/><pre>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
</pre><br/></div></div></body></html>