[Iplant-api-dev] Installing applications for use with the AGAVE API

Rion Dooley dooley at tacc.utexas.edu
Fri Dec 20 08:57:31 MST 2013


Hi Peter,

The short answer is that app registration is essentially the same. There are three differences that you should know about.


  1.  Agave handles input staging and archiving for you, so you don’t need to do that inside your wrapper script. This will help you turn around jobs quicker and make your environment a little more secure.
  2.  Agave allows you to specify defaults for queue, node count, processors per node, memory per node, and run time as part of the app description. When you do this, any parameters you provide defaults for in your app description do not need to to provided in a job request. This means you can now submit a job request specifying only a name, software id, and whatever inputs and parameters are needed.
  3.  Agave allows you to mix and match your own systems along with the iPlant HPC, and OSG resources. This means, if you have a local campus cluster, or a VM on EC2/Rackspace/Atmosphere/Rodeo, or even your own allocation on one of the existing HPC systems that iPlant uses, you can specify those as the executionSystem for your app and Agave will run your code there. This is particularly handy when you’re developing because you can tell Agave that your app’s deploymentPath is on the same system where the job should run, thus allowing you to build, test, register, and run your app all from the same system.

For more information, we have a writeup on app registration on the Agave developer’s site: http://agaveapi.co/application-management/. Check out the Agave Samples project (I’m filling out the tutorials today) for some  boilerplate examples of app descriptions, wrappers, system descriptions, etc. http://agaveapi.co/agave-quickstart-samples.

--
Rion




On Dec 20, 2013, at 7:52 AM, Lawson, Peter <pl8210 at uncw.edu<mailto:pl8210 at uncw.edu>> wrote:

I have a general question about the process of installing applications to interface with AGAVE API. WIth Foundation my understanding of application installation was derived from the documentation below:

Basic Application Development
To develop one of these applications, the requisite binaries, files, and resources are hosted in a subdirectory of a user's $IPLANTHOME iRODS directory, along with a special Bash-language script describing how the user code communicates with the iPlant job management system.
If the application under development is a simple script or is comprised of pre-compiled binaries that will run on a TACC resource, development of this directory can proceed on a local system that has the ability to use iRODS icommands and to GET/POST HTTPS from the command line | Tutorial |.
If the application needs to be compiled, takes special advantage of the software stack or physical architecture of the target HPC system, etc, the developer must first secure an XSEDE account and log onto the desired system before beginning development. Developer may then write scripts, compile and install requisite software, and test the command-line and batch-mode invocation of that software | Tutorial |.

Does this documentation also apply to the AGAVE API aside from changes in JSON to allow for interfacing with AGAVE? Thank you for your assistance and I apologize if this is a simple question that could have been answered by the AGAVE documentation.

-Pete L.

_______________________________________________
Iplant-api-dev Mailing List: Iplant-api-dev at iplantcollaborative.org<mailto:Iplant-api-dev at iplantcollaborative.org>
List Info and Archives: http://mail.iplantcollaborative.org/mailman/listinfo/iplant-api-dev
One-click Unsubscribe: http://mail.iplantcollaborative.org/mailman/options/iplant-api-dev/dooley%40tacc.utexas.edu?unsub=1&unsubconfirm=1

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.iplantcollaborative.org/pipermail/iplant-api-dev/attachments/20131220/cab7f53e/attachment.html 


More information about the Iplant-api-dev mailing list