Ignore:
Timestamp:
03/02/10 11:32:19 (14 years ago)
Author:
sdipsl
Message:
  • Protect rebuild.ksh creation in case of DRYRUNaaaa
  • Bugfix regarding backward compatibility : IGCM_card_DefineArrayFromOption ${card} ${flag_post} Seasonal will produce an array, take that into account whentesting his value
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/libIGCM/libIGCM_comp/libIGCM_comp.ksh

    r237 r238  
    168168                    # If option is not found (old cards) put SEASONAL ON by default 
    169169                    # 
    170                     if [ "$( eval echo \${${compname}_${flag_post}_Seasonal} )" = "Option not found ${flag_post}" ] ; then 
     170                    if [ "$( eval echo \${${compname}_${flag_post}_Seasonal[*]} )" = "Option not found ${flag_post}" ] ; then 
    171171                        eval ${compname}_${flag_post}_Seasonal=ON 
    172172                    fi 
     
    750750                        IGCM_sys_Mv ${generic_file_name}_????.nc ${RUN_DIR}/REBUILD_${PeriodDateBegin} 
    751751 
    752                         # Prepare headers for the shell dedicated to offline rebuild 
     752                        # Prepare headers for the shell dedicated to offline rebuild 
    753753                        if [ ! -f ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh ] ; then 
     754                            if [ $DRYRUN -le 1 ]; then 
    754755                            echo \#!/bin/ksh                                           > ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
    755756                            echo function IGCM_FlushRebuild                           >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
     
    759760                            echo IGCM_debug_Print 1 "IGCM_FlushRebuild"               >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
    760761                            echo echo                                                 >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
     762                            fi 
    761763                        fi 
    762764                        # Prepare the shell dedicated to offline rebuild 
    763                         echo IGCM_sys_rebuild ${file_in} ${generic_file_name}_*.nc    >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
    764                         echo IGCM_debug_Verif_Exit                                    >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
     765                        if [ $DRYRUN -le 1 ]; then 
     766                            echo IGCM_sys_rebuild ${file_in} ${generic_file_name}_*.nc    >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
     767                            echo IGCM_debug_Verif_Exit                                    >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
     768                        fi 
    765769                        # 
    766770                        # Load Patch we need to apply and apply 
    767                         if [ X$( eval echo \${${compname}_${flag_post}_Patches[0]} ) !=  X${NULL_STR} ]; then 
    768                             for Patch in $( eval echo \${${compname}_${flag_post}_Patches[*]} ); do 
    769                                 echo . ${libIGCM_POST}/libIGCM_post/IGCM_${Patch}.ksh >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
    770                                 echo IGCM_${Patch} ${file_in}                         >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
    771                             done 
     771                        if [ $DRYRUN -le 1 ]; then 
     772                            if [ X$( eval echo \${${compname}_${flag_post}_Patches[0]} ) !=  X${NULL_STR} ]; then 
     773                                for Patch in $( eval echo \${${compname}_${flag_post}_Patches[*]} ); do 
     774                                    echo . ${libIGCM_POST}/libIGCM_post/IGCM_${Patch}.ksh >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
     775                                    echo IGCM_${Patch} ${file_in}                         >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
     776                                done 
     777                            fi 
    772778                        fi 
    773779                        # 
    774                         echo IGCM_sys_Put_Out ${file_in} ${file_out}                  >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
    775                         echo IGCM_debug_Verif_Exit                                    >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
    776                         echo IGCM_sys_Rm ${generic_file_name}_*.nc                    >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
     780                        if [ $DRYRUN -le 1 ]; then 
     781                            echo IGCM_sys_Put_Out ${file_in} ${file_out}                  >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
     782                            echo IGCM_debug_Verif_Exit                                    >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
     783                            echo IGCM_sys_Rm ${generic_file_name}_*.nc                    >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
     784                        fi 
    777785                        SaveOnArchive=false 
    778786                    fi 
     
    788796                            eval FileToBeDeleted[${#FileToBeDeleted[@]}]=REBUILD_${PeriodDateBegin}/${file_in} > /dev/null 2>&1 
    789797                            # 
    790                             for Patch in $( eval echo \${${compname}_${flag_post}_Patches[*]} ); do 
    791                                 echo . ${libIGCM_POST}/libIGCM_post/IGCM_${Patch}.ksh     >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
    792                                 echo IGCM_${Patch} ${file_in}                             >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
    793                             done 
    794                             # 
    795                             echo IGCM_sys_Put_Out ${file_in} ${file_out}                  >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
    796                             echo IGCM_debug_Verif_Exit                                    >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
    797                             # 
     798                            if [ $DRYRUN -le 1 ]; then 
     799                                for Patch in $( eval echo \${${compname}_${flag_post}_Patches[*]} ); do 
     800                                    echo . ${libIGCM_POST}/libIGCM_post/IGCM_${Patch}.ksh     >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
     801                                    echo IGCM_${Patch} ${file_in}                             >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
     802                                done 
     803                                # 
     804                                echo IGCM_sys_Put_Out ${file_in} ${file_out}                  >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
     805                                echo IGCM_debug_Verif_Exit                                    >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 
     806                                # 
     807                            fi 
    798808                        fi 
    799809                    else 
Note: See TracChangeset for help on using the changeset viewer.