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/09/03 21:34:19 UTC

airavata git commit: updating python example

Repository: airavata
Updated Branches:
  refs/heads/airavata-0.15-release-branch 62f0d3bc8 -> 0223062d8


updating python example


Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/0223062d
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/0223062d
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/0223062d

Branch: refs/heads/airavata-0.15-release-branch
Commit: 0223062d830cf89f02753d1089ce6de05d732fa7
Parents: 62f0d3b
Author: Suresh Marru <sm...@apache.org>
Authored: Thu Sep 3 15:34:14 2015 -0400
Committer: Suresh Marru <sm...@apache.org>
Committed: Thu Sep 3 15:34:14 2015 -0400

----------------------------------------------------------------------
 .../samples/registerComputeResource.py          | 76 ++++++++++++++++++++
 1 file changed, 76 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/0223062d/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/samples/registerComputeResource.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/samples/registerComputeResource.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/samples/registerComputeResource.py
new file mode 100644
index 0000000..3c43df5
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/samples/registerComputeResource.py
@@ -0,0 +1,76 @@
+#!/usr/bin/env python
+
+#
+# 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.
+#
+
+import sys, ConfigParser
+
+sys.path.append('../lib')
+
+from apache.airavata.api import Airavata
+from apache.airavata.api.ttypes import *
+from apache.airavata.model.appcatalog.computeresource.ttypes import *
+
+from thrift import Thrift
+from thrift.transport import TSocket
+from thrift.transport import TTransport
+from thrift.protocol import TBinaryProtocol
+
+def main():
+    try:
+        # Read Airavata Client properties
+        airavataConfig = ConfigParser.RawConfigParser()
+        airavataConfig.read('../conf/airavata-client.properties')
+
+        host = airavataConfig.get('AiravataServer', 'host')
+        port = airavataConfig.getint('AiravataServer', 'port')
+        gateway_id = airavataConfig.get('GatewayProperties', 'gateway_id')
+
+        # Create a socket to the Airavata Server
+        transport = TSocket.TSocket(host, port)
+
+        # Use Buffered Protocol to speedup over raw sockets
+        transport = TTransport.TBufferedTransport(transport)
+
+        # Airavata currently uses Binary Protocol
+        protocol = TBinaryProtocol.TBinaryProtocol(transport)
+
+        # Create a Airavata client to use the protocol encoder
+        airavataClient = Airavata.Client(protocol)
+
+        # Connect to Airavata Server
+        transport.open()
+
+        #Create Project
+        computeResourceDesc = ComputeResourceDescription()
+        computeResourceDesc.
+        project.owner = "smarru"
+        project.name = "CLI-Test"
+        project.description = "Test project to illustrate Python Client"
+
+        print 'Created Project with Id:', airavataClient.createProject(gateway_id, project)
+
+        # Close Connection to Airavata Server
+        transport.close()
+
+    except Thrift.TException, tx:
+        print '%s' % (tx.message)
+
+if __name__ == "__main__":
+    main()