To publish into the information system only those VOs with storage areas on the SE a patch has been proposed.
This would solve https://ggus.eu/ws/ticket_info.php?ticket=94746 for QMUL, and allow a site config listing all the VOs supported, but not require storage space to be required for all.
The diff output of the proposed changes:
[root@se04 local]# diff -u config_gip_storm.orig config_gip_storm --- config_gip_storm.orig 2014-01-06 23:03:36.867806041 +0000 +++ config_gip_storm 2014-01-06 23:21:13.278603826 +0000 @@ -30,13 +30,40 @@ ############################################################################## # Get from config_gip_dpm in glite-yaim-dpm-4.0.6-1 and modified for StoRM + +function storeunique(){ + for name in ${SA_VOS} ; do + if [ "$1" = "$name" ] + then return 0 ; + fi ; + done + SA_VOS="${SA_VOS} $1" ; } + +function sa_vos () { + + for SA in ${STORM_STORAGEAREA_LIST}; do + + # Convert case + SA_UPP=`echo ${SA} | tr '[:lower:]' '[:upper:]'` + SA_LOW=`echo ${SA} | tr '[:upper:]' '[:lower:]'` + + # Remove DNS-like characters from SA_UPP names + SA_UPP=`echo ${SA_UPP} | sed -e 's/-//g' -e 's/\.//g'` + + x=STORM_${SA_UPP}_VONAME; SA_VONAME=${!x:-${SA_LOW}} + + storeunique ${SA_VONAME} + done +} + + function l_write_vo_info () { tofile=$1 # get_owner echo -n "get_owner =" >> ${tofile} nvo=0 - for VO in ${VOS}; do + for VO in ${SA_VOS}; do echo -n " echo ${VO};" >> ${tofile} nvo=1 done @@ -48,7 +75,7 @@ # get_acbr echo -n "get_acbr =" >> ${tofile} nvo=0 - for VO in ${VOS}; do + for VO in ${SA_VOS}; do echo -n " echo VO:${VO};" >> ${tofile} nvo=1 done @@ -201,6 +228,7 @@ get_services = echo EOF + sa_vos # Run function to complete file l_write_vo_info ${FILE} yaimlog INFO "${FUNCTION}: Successfully created ${FILE} !"