Changeset 753


Ignore:
Timestamp:
11/21/12 17:11:04 (12 years ago)
Author:
labetoulle
Message:

Use IGCM_config_CommonConfiguration to define paths (R_OUT, R_SAVE, R_BUFR, ...) in RunChecker?.
See #93.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/libIGCM/AA_RunChecker

    r752 r753  
    11#!/bin/ksh 
    22 
    3 # Created by: S. Labetoulle 
    4 # Date:       May 19th 2010 
    53#************************************************************** 
    64# Author: Sonia Labetoulle 
     
    1715 
    1816# Display a report on how a simulation is faring. 
     17 
     18function ChangeUsr { 
     19 
     20#  echo ">$1<" 
     21 
     22  echo $1 | sed -e "s/${CurrentUsr}/${TargetUsr}/" \ 
     23                -e "s/${CurrentGrp}/${TargetGrp}/" 
     24 
     25} 
    1926 
    2027 
     
    4956    if [ ${NbOcc} -eq 1 ] ; then 
    5057 
    51       if ( [ ${UserName} == $( awk -v JobName=${JobName} '$1 ~ JobName {print $2}' ${SimuCatalog} ) ] && [ ${HostName} == $( awk -v JobName=${JobName} '$1 ~ JobName {print $3}' ${SimuCatalog} ) ] ) ; then 
     58      if ( [ ${TargetUsr} == $( awk -v JobName=${JobName} '$1 ~ JobName {print $2}' ${SimuCatalog} ) ] && [ ${HostName} == $( awk -v JobName=${JobName} '$1 ~ JobName {print $3}' ${SimuCatalog} ) ] ) ; then 
    5259        JobName=$( awk -v JobName=${JobName} '$1 ~ JobName {print $1}' ${SimuCatalog} ) 
    53         UserName=$( awk -v JobName=${JobName} '$1 ~ JobName {print $2}' ${SimuCatalog} ) 
     60        TargetUsr=$( awk -v JobName=${JobName} '$1 ~ JobName {print $2}' ${SimuCatalog} ) 
    5461        HostName=$( awk -v JobName=${JobName} '$1 ~ JobName {print $3}' ${SimuCatalog} ) 
    5562        SUBMIT_DIR=$( awk -v JobName=${JobName} '$1 ~ JobName {print $4}' ${SimuCatalog} ) 
     
    191198#D- Task type (computing or post-processing) 
    192199TaskType=post-processing 
     200typeset -i Verbosity=0 
     201 
     202CurrentUsr=$( whoami ) 
     203CurrentGrp=$( groups $CurrentUsr | awk '{print $3}' ) 
    193204 
    194205libIGCM=${libIGCM:=::modipsl::/libIGCM} 
     
    202213#------- 
    203214. ${libIGCM}/libIGCM_sys/libIGCM_sys.ksh 
     215. ${libIGCM}/libIGCM_config/libIGCM_config.ksh 
    204216 
    205217if ( [ $# -eq 0 ] ) ; then 
     
    209221 
    210222# Default argument values 
    211 UserName=$( whoami ) 
     223TargetUsr=${CurrentUsr} 
    212224HostName=$( hostname | sed -e "s/[0-9].*//" ) 
    213225 
     
    215227fg_new=".false." 
    216228fg_quiet=".false." 
     229(( NbHisto = 1 )) 
    217230 
    218231# Get arguments from command line 
     
    220233  case $1 in 
    221234    -h|--help|-help) 
    222       echo "usage: $0 [-u UserName] JobName" 
     235      echo "usage: $0 [-u TargetUsr] JobName" 
    223236      exit ;; 
    224237    -b|--nocolor) 
     
    235248      shift 2 ;; 
    236249    -u|--user) 
    237       UserName="$2" 
     250      TargetUsr="$2" 
    238251      shift 2 ;; 
    239252    -*) 
     
    247260JobName=$1 
    248261 
    249 echo "UserName = ${UserName}" 
     262echo "TargetUsr = ${TargetUsr}" 
    250263echo "HostName = ${HostName}" 
    251264 
    252 # Define useful directories 
    253 SCRAT_DIR=$( ccc_home -s -u ${UserName} ) 
    254 STORE_DIR=$( ccc_home -A -u ${UserName} ) 
    255 CWORK_DIR=$( ccc_home -W -u ${UserName} ) 
    256 WORK_DIR=$( ccc_home -w -u ${UserName} ) 
    257  
     265TargetGrp=$( groups $TargetUsr | awk '{print $3}' ) 
    258266 
    259267# Define the catalog in which the known simulations are stored 
     
    277285 
    278286 
    279 # Extract usefull information from run.card and config.card 
     287  # Extract usefull information from run.card and config.card 
    280288 
    281289  RunFile="${SUBMIT_DIR}/run.card" 
    282290  ConfFile="${SUBMIT_DIR}/config.card" 
     291 
     292  IGCM_config_CommonConfiguration ${SUBMIT_DIR}/config.card 
     293 
    283294 
    284295  if [ -s ${RunFile} ] ; then 
     
    297308  fi 
    298309 
    299   IGCM_card_DefineVariableFromOption ${ConfFile} UserChoices DateBegin 
    300   IGCM_card_DefineVariableFromOption ${ConfFile} UserChoices DateEnd 
    301   IGCM_card_DefineVariableFromOption ${ConfFile} UserChoices TagName 
    302   IGCM_card_DefineVariableFromOption ${ConfFile} UserChoices ExperimentName 
    303   IGCM_card_DefineVariableFromOption ${ConfFile} UserChoices SpaceName 
    304310  DateBegin=${config_UserChoices_DateBegin} 
    305311  DateEnd=${config_UserChoices_DateEnd} 
     
    321327  fi 
    322328 
    323   if [ ! X${ExperimentName} == X ] ; then 
    324     EXP_DIR=IGCM_OUT/${TagName}/${SpaceName}/${ExperimentName}/${JobName} 
    325   else 
    326     EXP_DIR=IGCM_OUT/${TagName}/${JobName} 
    327   fi 
    328  
    329   DATA_DIR=${STORE_DIR}/${EXP_DIR} 
    330   POST_DIR=${SCRAT_DIR}/${EXP_DIR}/Out 
    331   CWORK_DIR=${CWORK_DIR}/${EXP_DIR} 
    332   REBUILD_DIR=${SCRAT_DIR}/REBUILD/${TagName}/${JobName} 
     329  DATA_DIR=${R_SAVE} 
     330  POST_DIR=${R_BUFR}/Out 
     331  CWORK_DIR=${R_FIGR} 
     332  if [ X${config_Post_RebuildFromArchive} = Xtrue ] ; then 
     333    REBUILD_DIR=${R_SAVE}/TMP 
     334  else 
     335    REBUILD_DIR=${BIG_DIR}/${config_UserChoices_TagName}/${config_UserChoices_JobName} 
     336  fi 
     337 
     338  if [ ${TargetUsr} != ${CurrentUsr} ] ; then 
     339    DATA_DIR=$( ChangeUsr ${DATA_DIR}) 
     340    POST_DIR=$( ChangeUsr ${POST_DIR} ) 
     341    CWORK_DIR=$( ChangeUsr ${CWORK_DIR} ) 
     342    REBUILD_DIR=$( ChangeUsr ${REBUILD_DIR} ) 
     343  fi 
     344 
    333345  echo "Data:    >${DATA_DIR}<" 
    334346  echo "Rebuild: >${REBUILD_DIR}<" 
     
    336348  echo "Work:    >${CWORK_DIR}<" 
    337349 
    338  
    339350  if [ $PeriodState != "Waiting" ] ; then 
    340351 
     
    364375  # Check last REBUILD 
    365376  FileType=rebuild_* 
    366   (( num = 1 )) 
    367   LastDate[$num]=$( ls ${POST_DIR}/${FileType}.*.out | tail -n 1 | awk -F"." '{ print $2 }' ) 
    368  
    369   dum=$( basename $( grep ^IGCM_sys_PutBuffer_Out ${POST_DIR}/${FileType}.${LastDate[$num]}.out | tail -1 | awk '{ print $4 }' ) | awk -F"_" '{ print $3 }' ) 
    370  
    371   if [[ ${dum} == ${LastDate[$num]} ]] ; then 
    372     Result[$num]=OK 
    373   else 
    374     Result[$num]=KO 
     377  (( ind = 1 )) 
     378 
     379  LastDate[$ind]=$( ls ${POST_DIR}/${FileType}.*.out | tail -n ${NbHisto} | awk -F"." '{ print $2 }' ) 
     380 
     381  dum=$( basename $( grep ^IGCM_sys_PutBuffer_Out ${POST_DIR}/${FileType}.${LastDate[$ind]}.out | tail -1 | awk '{ print $4 }' ) | awk -F"_" '{ print $3 }' ) 
     382 
     383  if [[ ${dum} == ${LastDate[$ind]} ]] ; then 
     384    Result[$ind]=OK 
     385  else 
     386    Result[$ind]=KO 
    375387  fi 
    376388 
    377389  # Check last PACK jobs 
    378390  for FileType in pack_output pack_restart pack_debug ; do 
    379     (( num = num + 1 )) 
    380  
    381     LastDate[$num]=$( ls ${POST_DIR}/${FileType}.*.out | tail -n 1 | awk -F"." '{ print $2 }' ) 
    382  
    383     dum=$( basename $( grep ^IGCM_sys_Put_Out ${POST_DIR}/${FileType}.${LastDate[$num]}.out | tail -1 | awk '{ print $3 }' ) | awk -F"_" '{ print $3 }' ) 
    384  
    385     if [[ ${dum} == ${LastDate[$num]} ]] ; then 
    386       Result[$num]=OK 
     391    (( ind = ind + 1 )) 
     392 
     393    LastDate[$ind]=$( ls ${POST_DIR}/${FileType}.*.out | tail -n ${NbHisto} | awk -F"." '{ print $2 }' ) 
     394 
     395    dum=$( basename $( grep ^IGCM_sys_Put_Out ${POST_DIR}/${FileType}.${LastDate[$ind]}.out | tail -1 | awk '{ print $3 }' ) | awk -F"_" '{ print $3 }' ) 
     396 
     397    if [[ ${dum} == ${LastDate[$ind]} ]] ; then 
     398      Result[$ind]=OK 
    387399    else 
    388       Result[$num]=KO 
     400      Result[$ind]=KO 
    389401    fi 
    390402  done 
     
    396408 
    397409  FileType=monitoring 
    398   (( num = num + 1 )) 
    399  
    400   LastDate[$num]=$( cdo showyear ${CWORK_DIR}/MONITORING/files/ATM_bils_global_ave.nc 2> /dev/null | awk '{ print $NF }' ) 
     410  (( ind = ind + 1 )) 
     411 
     412  LastDate[$ind]=$( cdo showyear ${CWORK_DIR}/MONITORING/files/ATM_bils_global_ave.nc 2> /dev/null | awk '{ print $NF }' ) 
    401413 
    402414  # Check last ATLAS jobs 
    403415 
    404416  FileType=atlas 
    405   (( num = num + 1 )) 
    406  
    407   LastDate[$num]=$( ls ${CWORK_DIR}/ATLAS | tail -1 ) 
     417  (( ind = ind + 1 )) 
     418 
     419  LastDate[$ind]=$( ls ${CWORK_DIR}/ATLAS | tail -n ${NbHisto} ) 
    408420 
    409421 
Note: See TracChangeset for help on using the changeset viewer.