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 <[email protected]> Authored: Thu Sep 3 15:34:14 2015 -0400 Committer: Suresh Marru <[email protected]> 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()
