Skip to end of metadata
Go to start of metadata


This module will introduce users to the tools needed to access software installed on OASIS using Parrot and SkeletonKey.  Parrot is a tool that allows your application to access OASIS on sites that don't have it installed.  Although an increasing number of sites support OASIS on their compute nodes, there are sites that don't.  This module will show users how to run opportunistic jobs that use OASIS on those other sites.


Before going through the examples, login to and get a copy of the tutorial files:

osg-connect Login

Remote software access

Simplify software access with SkeletonKey

Due to the complexities involved in setting up Parrot to provide access to OASIS, users should use SkeletonKey to simplify the process involved.  SkeletonKey is a tool that

Creating the application tarball

Since we'll be running an application from OASIS, we'll create an application tarball to do some initial setup and then run the actual application

Create a directory for the script

Creating an application tarball

Create a shell script, ~/tutorial-oasis-parrot/oasis_app/ with the following lines.  One thing to note using OASIS through Parrot works the same way as using it on sites that have it available normally.

Create a R script ~/tutorial-oasis-parrot/oasis_app/test.R with the following lines:


Next, make sure the script is executable and create a tarball:

Creating an application tarball
Then copy the tarball to your public directory
Creating an application tarball

Creating a job wrapper

You'll need to do the following on the machine where you installed SkeletonKey
Open a file called ~/tutorial-oasis-parrot/oasis.ini and replace username with your username:


Run SkeletonKey on oasis.ini:

Creating an application tarball

This generates a wrapper called that you'll be using. Run the job wrapper to verify that it's working correctly

Creating an application tarball

Using the job wrapper

Submitting jobs to OSG connect

The following part of the tutorial is optional and will cover using a generated job wrapper in a HTCondor submit file. Create a file called ~/osg-oasis_parrot/oasis.submit with the following contents


Finally submit the job to HTCondor and verify that the jobs ran successfully

Submitting jobs to osg-connect

Once the jobs have run verify that they have run successfully:

Job verification

  • No labels