Thrift module: data_movement_models

ModuleServicesData typesConstants
data_movement_models DMType
DataMovementInterface
DataMovementProtocol
GridFTPDataMovement
LOCALDataMovement
SCPDataMovement
SecurityProtocol
UnicoreDataMovement

Enumerations

Enumeration: DMType


COMPUTE_RESOURCE0
STORAGE_RESOURCE1

Enumeration: SecurityProtocol

Enumeration of security sshKeyAuthentication and authorization mechanisms supported by Airavata. This enumeration just
 describes the supported mechanism. The corresponding security credentials are registered with Airavata Credential
 store.

USERNAME_PASSWORD:
 A User Name.

SSH_KEYS:
 SSH Keys

FIXME: Change GSI to a more precise generic security protocol - X509



USERNAME_PASSWORD0
SSH_KEYS1
GSI2
KERBEROS3
OAUTH4
LOCAL5

Enumeration: DataMovementProtocol

Enumeration of data movement supported by Airavata

SCP:
 Job manager supporting the Portal Batch System (PBS) protocol. Some examples include TORQUE, PBSPro, Grid Engine.

SFTP:
 The Simple Linux Utility for Resource Management is a open source workload manager.

GridFTP:
 Globus File Transfer Protocol

UNICORE_STORAGE_SERVICE:
 Storage Service Provided by Unicore



LOCAL0
SCP1
SFTP2
GridFTP3
UNICORE_STORAGE_SERVICE4

Data structures

Struct: SCPDataMovement

KeyFieldTypeDescriptionRequirednessDefault value
1dataMovementInterfaceIdstringrequired"DO_NOT_SET_AT_CLIENTS"
2securityProtocolSecurityProtocolrequired
3alternativeSCPHostNamestringoptional
4sshPorti32optional22

Data Movement through Secured Copy

alternativeSCPHostName:
 If the login to scp is different than the hostname itself, specify it here

sshPort:
 If a non-default port needs to used, specify it.

Struct: GridFTPDataMovement

KeyFieldTypeDescriptionRequirednessDefault value
1dataMovementInterfaceIdstringrequired"DO_NOT_SET_AT_CLIENTS"
2securityProtocolSecurityProtocolrequired
3gridFTPEndPointslist<string>required

Data Movement through GridFTP

alternativeSCPHostName:
 If the login to scp is different than the hostname itself, specify it here

sshPort:
 If a non-default port needs to used, specify it.

Struct: UnicoreDataMovement

KeyFieldTypeDescriptionRequirednessDefault value
1dataMovementInterfaceIdstringrequired"DO_NOT_SET_AT_CLIENTS"
2securityProtocolSecurityProtocolrequired
3unicoreEndPointURLstringrequired

Data Movement through UnicoreStorage

unicoreEndPointURL:
 unicoreGateway End Point. The provider will query this service to fetch required service end points.

Struct: LOCALDataMovement

KeyFieldTypeDescriptionRequirednessDefault value
1dataMovementInterfaceIdstringrequired"DO_NOT_SET_AT_CLIENTS"

LOCAL

alternativeSCPHostName:
 If the login to scp is different than the hostname itself, specify it here

sshPort:
 If a non-defualt port needs to used, specify it.

Struct: DataMovementInterface

KeyFieldTypeDescriptionRequirednessDefault value
1dataMovementInterfaceIdstringrequired
2dataMovementProtocolDataMovementProtocolrequired
3priorityOrderi32required0
4creationTimei64optional
5updateTimei64optional
6storageResourceIdstringoptional

Data Movement Interfaces

dataMovementInterfaceId: The Data Movement Interface has to be previously registered and referenced here.

priorityOrder:
 For resources with multiple interfaces, the priority order should be selected.
  Lower the numerical number, higher the priority