Difference between revisions of "VO-specific software and modules"
Line 45: | Line 45: | ||
prepend-path PATH "$fsldir/bin" | prepend-path PATH "$fsldir/bin" | ||
setenv FSLDIR "$fsldir" | setenv FSLDIR "$fsldir" | ||
+ | |||
+ | =Use the module= | ||
+ | |||
+ | * launch normal job | ||
+ | * check MODULEPATH | ||
+ | $ echo $MODULEPATH | ||
+ | [SNIP]:/etc/opt/vl-e/modulefiles::/data/esia/vlemed/modules | ||
+ | |||
+ | * check available modules | ||
+ | $module avail | ||
+ | [SNIP] | ||
+ | ------------------------------------ /data/esia/vlemed/modules ------------------------------------- | ||
+ | fsl/5.0 mypackage/5.0 | ||
+ | |||
+ | * use it: | ||
+ | module load fsl | ||
+ | show that it does not pick up the vlemed version: | ||
+ | $ module list | ||
+ | Currently Loaded Modulefiles: | ||
+ | 1) fsl/4.1.4 | ||
+ | use | ||
+ | module load fsl/5.0 | ||
+ | for that | ||
+ | |||
+ | * new packages are picked up automatically: | ||
+ | $ module load mypackage | ||
+ | $ module list | ||
+ | Currently Loaded Modulefiles: | ||
+ | 1) fsl/4.1.4 2) mypackage/5.0 |
Revision as of 16:01, 11 December 2009
Introduction
VOs sometimes have a need to deploy their own software at a particular site. For this the Software Group Manager VOMS role is available. Not all VOs have this role and not all VOs with this roles are supported at each site. However, if you are an SGM for a VO which is supported at Nikhef then this HOWTO will explain how you can deploy your own software and add your own module to the available modules for the modules command.
VOMS Role
In this HOWTO the VO vlemed was chosen as the example. This VO has a role
/Role=sgm
available, which gives users who possess that role the right to install software in the VO specific software area
VO Specific software area
Normally this software area is denoted using the environment variable
VO_<VO>_SW_DIR
e.g. for vlemed it is VO_VLEMED_SW_DIR
deploy software
cd $VO_VLEMED_SW_DIR
- wget - tar xzvf
add module
mkdir -p $VO_VLEMED_SW_DIR/modules/mypackage cd $VO_VLEMED_SW_DIR/modules/mypackage wget modulefile
#%Module1.0##################################################################### ## ## fsl modulefile ## proc ModulesHelp { } { global fslversion puts stderr "\tSet up the environment for FSL" puts stderr "\n\tVersion $fslversion\n" } module-whatis "sets FSL environment" # for Tcl script use only set fslversion 5.0 set fsldir "$env(VO_VLEMED_SW_DIR)/fsl-5.0" prepend-path PATH "$fsldir/bin" setenv FSLDIR "$fsldir"
Use the module
- launch normal job
- check MODULEPATH
$ echo $MODULEPATH [SNIP]:/etc/opt/vl-e/modulefiles::/data/esia/vlemed/modules
- check available modules
$module avail [SNIP] ------------------------------------ /data/esia/vlemed/modules ------------------------------------- fsl/5.0 mypackage/5.0
- use it:
module load fsl
show that it does not pick up the vlemed version:
$ module list Currently Loaded Modulefiles: 1) fsl/4.1.4
use
module load fsl/5.0
for that
- new packages are picked up automatically:
$ module load mypackage $ module list Currently Loaded Modulefiles: 1) fsl/4.1.4 2) mypackage/5.0