cooperative-computing-lab/cctools — pull request #180 by dcbradley (2013-08-30 20:30:46+00:00)
Title: Added cvmfs option try_local_filesystem.

Currently, we have problems on some OSG sites where we use Parrot to provide access to our CVMFS repositories. The problem is that these sites have their own local CVMFS repository mounted to provide access to other software (e.g. the OSG client software). When our jobs run under Parrot, they fail to to be able to access executables that happen to be on the locally mounted repository, because we didn't configure Parrot to know about this repository. Rather than doing special configuration for each case such as this, we would prefer to have Parrot automatically fall back to local file access for CVMFS repositories that are locally mounted. This patch makes that possible.

The new default behavior is to only fall back to locally mounted repositories if the repository is not configured for access via Parrot's cvmfs client. If desired, the user can configure Parrot to instead use locally mounted repositories even if they are configured for access via Parrot. In this case, Parrot's cvmfs client would only be used if the repository is not locally mounted. The configuration is all managed by using the new try_local_filesytem option in the repository definitions listed in PARROT_CVMFS_REPO or in the --cvmfs-repos command-line option.

I would appreciate feedback on whether you think I am using the best method for falling back to local file access when that is desired.