Repository: airavata Updated Branches: refs/heads/master 124e286d0 -> 650e545f9
adding php samples to list application interfaces and add compute resource descriptions Project: http://git-wip-us.apache.org/repos/asf/airavata/repo Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/effb4d71 Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/effb4d71 Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/effb4d71 Branch: refs/heads/master Commit: effb4d71741bc830cf99872e997335e7c0731ceb Parents: 593d5a7 Author: Saminda Wijeratne <[email protected]> Authored: Fri May 23 11:07:59 2014 -0700 Committer: Saminda Wijeratne <[email protected]> Committed: Fri May 23 11:07:59 2014 -0700 ---------------------------------------------------------------------- .../resources/samples/add-compute-resources.php | 75 ++++++++++++++++++++ .../samples/list-application-interfaces.php | 73 +++++++++++++++++++ 2 files changed, 148 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/airavata/blob/effb4d71/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/samples/add-compute-resources.php ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/samples/add-compute-resources.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/samples/add-compute-resources.php new file mode 100644 index 0000000..d2fd87f --- /dev/null +++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/samples/add-compute-resources.php @@ -0,0 +1,75 @@ +<?php +namespace Airavata\Client\Samples; + +$GLOBALS['THRIFT_ROOT'] = '../lib/Thrift/'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Transport/TTransport.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Transport/TSocket.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Protocol/TProtocol.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Protocol/TBinaryProtocol.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Exception/TException.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Exception/TApplicationException.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Exception/TProtocolException.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Base/TBase.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Type/TType.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Type/TMessageType.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Factory/TStringFuncFactory.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'StringFunc/TStringFunc.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'StringFunc/Core.php'; + +$GLOBALS['AIRAVATA_ROOT'] = '../lib/Airavata/'; +require_once $GLOBALS['AIRAVATA_ROOT'] . 'API/Airavata.php'; +require_once $GLOBALS['AIRAVATA_ROOT'] . 'API/AppCatalog/ApplicationCatalogAPI.php'; +require_once $GLOBALS['AIRAVATA_ROOT'] . 'Model/Workspace/Experiment/Types.php'; +require_once $GLOBALS['AIRAVATA_ROOT'] . 'Model/AppCatalog/Types.php'; +require_once $GLOBALS['AIRAVATA_ROOT'] . 'API/Error/Types.php'; + +use Airavata\Model\Workspace\Experiment\ComputationalResourceScheduling; +use Airavata\Model\Workspace\Experiment\DataObjectType; +use Airavata\Model\Workspace\Experiment\UserConfigurationData; +use Airavata\Model\AppCatalog\ComputeResourceDescription; +use Thrift\Protocol\TBinaryProtocol; +use Thrift\Transport\TSocket; +use Airavata\API\AiravataClient; +use Airavata\API\AppCatalog\ApplicationCatalogAPIClient; +use Airavata\Model\Workspace\Experiment\Experiment; +use Airavata\Model\AppCatalog\JobSubmissionProtocol; +use Airavata\Model\AppCatalog\DataMovementProtocol; +use Airavata\Model\AppCatalog\GSISSHJobSubmission; +use Airavata\Model\AppCatalog\ResourceJobManager; + +//$transport = new TSocket('gw111.iu.xsede.org', 8930); +$transport = new TSocket('localhost', 8931); +$protocol = new TBinaryProtocol($transport); + +$airavataclient = new ApplicationCatalogAPIClient($protocol); +$transport->open(); + +echo "Airavata Server Version is: " . $airavataclient->getAPIVersion() . "\n"; + +echo "Add Compute Resources.... "."\n"; + +$id_list = $airavataclient->listComputeResourceDescriptions(); +$compute_resource = new ComputeResourceDescription(); +$compute_resource->hostName="stampede-host"; +$compute_resource->hostAliases=array("stampede"); +$compute_resource->ipAddresses=array("stampede.tacc.xsede.org"); +$compute_resource->isEmpty=false; +$compute_resource->scratchLocation="/home1/01437/ogce"; +$compute_resource->jobSubmissionProtocols=array(); +$compute_resource->dataMovementProtocols=array(); + +echo "Adding ".$compute_resource->hostName."..."; +$compute_resource_id=$airavataclient->addComputeResourceDescription($compute_resource); +echo "done [saved in the catalog as ".$compute_resource_id."]\n"; + +$gsissh_protoco_data=new GSISSHJobSubmission(); +$gsissh_protoco_data->resourceJobManager=ResourceJobManager::SLURM; +$gsissh_protoco_data->installedPath="/usr/bin/"; +$gsissh_protoco_data->sshPort=2222; +$gsissh_protoco_data->monitorMode="push"; + +echo "Adding GSISSH deployment to ".$compute_resource_id."..."; +$airavataclient->addGSISSHJobSubmissionProtocol($compute_resource_id, $gsissh_protoco_data); +echo "done\n"; +$transport->close(); +?> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/airavata/blob/effb4d71/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/samples/list-application-interfaces.php ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/samples/list-application-interfaces.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/samples/list-application-interfaces.php new file mode 100644 index 0000000..473e033 --- /dev/null +++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/samples/list-application-interfaces.php @@ -0,0 +1,73 @@ +<?php +namespace Airavata\Client\Samples; + +$GLOBALS['THRIFT_ROOT'] = '../lib/Thrift/'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Transport/TTransport.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Transport/TSocket.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Protocol/TProtocol.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Protocol/TBinaryProtocol.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Exception/TException.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Exception/TApplicationException.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Exception/TProtocolException.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Base/TBase.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Type/TType.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Type/TMessageType.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'Factory/TStringFuncFactory.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'StringFunc/TStringFunc.php'; +require_once $GLOBALS['THRIFT_ROOT'] . 'StringFunc/Core.php'; + +$GLOBALS['AIRAVATA_ROOT'] = '../lib/Airavata/'; +require_once $GLOBALS['AIRAVATA_ROOT'] . 'API/Airavata.php'; +require_once $GLOBALS['AIRAVATA_ROOT'] . 'API/AppCatalog/ApplicationCatalogAPI.php'; +require_once $GLOBALS['AIRAVATA_ROOT'] . 'Model/Workspace/Experiment/Types.php'; +require_once $GLOBALS['AIRAVATA_ROOT'] . 'Model/AppCatalog/Types.php'; +require_once $GLOBALS['AIRAVATA_ROOT'] . 'API/Error/Types.php'; + +use Airavata\Model\Workspace\Experiment\ComputationalResourceScheduling; +use Airavata\Model\Workspace\Experiment\DataObjectType; +use Airavata\Model\Workspace\Experiment\UserConfigurationData; +use Airavata\Model\ComputeResourceDescription; +use Airavata\Model\ApplicationInterface; +use Thrift\Protocol\TBinaryProtocol; +use Thrift\Transport\TSocket; +use Airavata\API\AiravataClient; +use Airavata\API\AppCatalog\ApplicationCatalogAPIClient; +use Airavata\Model\Workspace\Experiment\Experiment; +use Airavata\Model\AppCatalog\JobSubmissionProtocol; +use Airavata\Model\AppCatalog\DataMovementProtocol; + +//$transport = new TSocket('gw111.iu.xsede.org', 8930); +$transport = new TSocket('localhost', 8931); +$protocol = new TBinaryProtocol($transport); + +$airavataclient = new ApplicationCatalogAPIClient($protocol); +$transport->open(); + +echo "Airavata Server Version is: " . $airavataclient->getAPIVersion() . "\n"; + +echo "Listing Application Interfaces.... "."\n"; + +$id_list = $airavataclient->listApplicationInterfaceIds(); + +foreach($id_list as $id){ + echo "Application Interface Id : ".$id."\n"; + $app_interface = $airavataclient->getApplicationInterface($id); + echo "\t"."Interface Data : " . $app_interface->applicationInterfaceData."\n"; + echo "\t"."Deployments : ".count($app_interface->applicationDeployments)."\n"; + foreach($app_interface->applicationDeployments as $deployment){ + echo "\t\t"."Compute Resource : ".$deployment->computeResourceDescription->hostName."\n"; + echo "\t\t\t"."Application Data".$deployment->applicationDescriptor->applicationDescriptorData."\n"; + } +} + +//$compute_resource = new \ComputeResourceDescription(); +//$compute_resource->hostName="localhost"; +//$compute_resource->hostAliases=array("localhost"); +//$compute_resource->ipAddresses=array("127.0.0.1"); + +//Create a Experiment +$transport->close(); + +?> + +
