You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sm...@apache.org on 2015/11/11 17:35:27 UTC
[1/2] airavata git commit: Adding data storage model inline with
compute resource models
Repository: airavata
Updated Branches:
refs/heads/develop 832b14680 -> 5b9a48d57
Adding data storage model inline with compute resource models
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/091fcdca
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/091fcdca
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/091fcdca
Branch: refs/heads/develop
Commit: 091fcdca8237ced2ba8cca3e54c79d9469963e53
Parents: dd32d06
Author: smarru <sm...@apache.org>
Authored: Wed Nov 11 11:34:26 2015 -0500
Committer: smarru <sm...@apache.org>
Committed: Wed Nov 11 11:34:26 2015 -0500
----------------------------------------------------------------------
.../airavata-api/storage_resource_model.thrift | 168 +++++++++++++++++++
1 file changed, 168 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/091fcdca/thrift-interface-descriptions/airavata-api/storage_resource_model.thrift
----------------------------------------------------------------------
diff --git a/thrift-interface-descriptions/airavata-api/storage_resource_model.thrift b/thrift-interface-descriptions/airavata-api/storage_resource_model.thrift
new file mode 100644
index 0000000..655d90d
--- /dev/null
+++ b/thrift-interface-descriptions/airavata-api/storage_resource_model.thrift
@@ -0,0 +1,168 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+include "airavata_commons.thrift"
+
+namespace java org.apache.airavata.model.appcatalog.storageresource
+namespace php Airavata.Model.AppCatalog.StorageResource
+namespace cpp apache.airavata.model.appcatalog.storageresource
+namespace py apache.airavata.model.appcatalog.storageresource
+
+
+/**
+ * Enumeration of security authentication 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
+ *
+ *
+*/
+enum SecurityProtocol {
+ USERNAME_PASSWORD,
+ SSH_KEYS,
+ LOCAL
+}
+
+/**
+ * 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
+ *
+*/
+enum DataMovementProtocol {
+ LOCAL,
+ SCP,
+ SFTP,
+ GridFTP,
+ UNICORE_STORAGE_SERVICE
+}
+
+/**
+ * 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 SCPDataMovement {
+ 1: required string dataMovementInterfaceId = airavata_commons.DEFAULT_ID,
+ 2: required SecurityProtocol securityProtocol,
+ 3: optional string alternativeSCPHostName,
+ 4: optional i32 sshPort = 22
+}
+
+/**
+ * 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 GridFTPDataMovement {
+ 1: required string dataMovementInterfaceId = airavata_commons.DEFAULT_ID,
+ 2: required SecurityProtocol securityProtocol,
+ 3: required list<string> gridFTPEndPoints
+}
+
+/**
+ * Data Movement through UnicoreStorage
+ *
+ * unicoreEndPointURL:
+ * unicoreGateway End Point. The provider will query this service to fetch required service end points.
+*/
+struct UnicoreDataMovement {
+ 1: required string dataMovementInterfaceId = airavata_commons.DEFAULT_ID,
+ 2: required SecurityProtocol securityProtocol,
+ 3: required string unicoreEndPointURL
+}
+
+/**
+ * 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 LOCALDataMovement {
+ 1: required string dataMovementInterfaceId = airavata_commons.DEFAULT_ID,
+}
+
+
+/**
+ * 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
+ *
+*/
+struct DataMovementInterface {
+ 1: required string dataMovementInterfaceId,
+ 2: required DataMovementProtocol dataMovementProtocol,
+ 3: required i32 priorityOrder = 0,
+}
+
+/**
+ * Storage Resource Description
+ *
+ * storageResourceId: Airavata Internal Unique Identifier to distinguish Compute Resource.
+ *
+ * hostName:
+ * Fully Qualified Host Name.
+ *
+ * storageResourceDescription:
+ * A user friendly description of the resource.
+ *
+ *
+ * DataMovementProtocol:
+ * Option to specify a prefered data movement mechanism of the available options.
+ *
+ *
+*/
+struct StorageResourceDescription {
+ 1: required string storageResourceId = airavata_commons.DEFAULT_ID,
+ 2: required string hostName,
+ 3: optional string storageResourceDescription,
+ 4: optional bool enabled,
+ 5: optional list<DataMovementInterface> dataMovementInterfaces,
+}
[2/2] airavata git commit: Merge remote-tracking branch
'origin/develop' into develop
Posted by sm...@apache.org.
Merge remote-tracking branch 'origin/develop' into develop
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/5b9a48d5
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/5b9a48d5
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/5b9a48d5
Branch: refs/heads/develop
Commit: 5b9a48d57812ce3a3d9321c2e6104773c084969f
Parents: 091fcdc 832b146
Author: smarru <sm...@apache.org>
Authored: Wed Nov 11 11:35:25 2015 -0500
Committer: smarru <sm...@apache.org>
Committed: Wed Nov 11 11:35:25 2015 -0500
----------------------------------------------------------------------
.../apache/airavata/gfac/core/GFacUtils.java | 6 ++--
.../gfac/core/context/ProcessContext.java | 19 +++++++++----
.../org/apache/airavata/gfac/impl/Factory.java | 29 +++++++++++++++++---
.../airavata/gfac/impl/GFacEngineImpl.java | 3 +-
.../airavata/gfac/impl/task/DataStageTask.java | 4 +--
.../impl/task/DefaultJobSubmissionTask.java | 4 +--
.../gfac/impl/task/EnvironmentSetupTask.java | 2 +-
.../gfac/impl/task/ForkJobSubmissionTask.java | 2 +-
.../gfac/impl/task/SCPDataStageTask.java | 6 ++--
.../gfac/impl/task/utils/StreamData.java | 4 +--
10 files changed, 54 insertions(+), 25 deletions(-)
----------------------------------------------------------------------