[2422] | 1 | #!/bin/bash |
---|
| 2 | # |
---|
[2423] | 3 | # Cron to keep track of the consumption and data volume |
---|
| 4 | # for GENCMIP6 project. |
---|
| 5 | # To be executed every day at 6am |
---|
[2422] | 6 | # ====================================================================== |
---|
| 7 | |
---|
[2423] | 8 | # Initialize module command |
---|
| 9 | # ========================= |
---|
[2422] | 10 | if [ -f /etc/bashrc ] ; then |
---|
[2429] | 11 | . /etc/bashrc |
---|
[2422] | 12 | fi |
---|
[2460] | 13 | |
---|
[2423] | 14 | # Load python |
---|
| 15 | # =========== |
---|
| 16 | #Â python/2.7.3 is the default, but it comes with matplotlib 1.2, |
---|
| 17 | # which is too old (no context manager for PdfPages) |
---|
[2422] | 18 | module load python/2.7.8 |
---|
| 19 | |
---|
[2423] | 20 | # Go to root directory |
---|
| 21 | # ==================== |
---|
[2460] | 22 | ROOT_DIR=$( dirname $0 ) |
---|
| 23 | cd ${ROOT_DIR} |
---|
[2422] | 24 | |
---|
[2423] | 25 | # Main script to get data |
---|
| 26 | # ======================= |
---|
[2427] | 27 | script="conso_gencmip6" |
---|
| 28 | printf "${script}\n" |
---|
| 29 | echo "--------------------" |
---|
[2437] | 30 | bin/${script}.py -v |
---|
[2427] | 31 | rc=$? |
---|
| 32 | if [ ${rc} -ne 0 ] ; then |
---|
| 33 | echo "${script} terminated abnormally" |
---|
| 34 | exit |
---|
| 35 | else |
---|
| 36 | echo "${script} OK" |
---|
| 37 | fi |
---|
[2422] | 38 | |
---|
[2423] | 39 | # Plot daily consumption |
---|
| 40 | # ====================== |
---|
| 41 | # -f : plot the whole period of the project |
---|
| 42 | # -d : copy plot on dods |
---|
[2460] | 43 | # -v : verbose mode |
---|
[2427] | 44 | script="plot_bilan" |
---|
| 45 | printf "\n${script}\n" |
---|
| 46 | echo "--------------------" |
---|
[2437] | 47 | bin/${script}.py -fv |
---|
| 48 | rc=$? |
---|
| 49 | if [ ${rc} -ne 0 ] ; then |
---|
| 50 | echo "${script} terminated abnormally" |
---|
| 51 | else |
---|
| 52 | echo "${script} OK" |
---|
| 53 | fi |
---|
| 54 | |
---|
| 55 | script="plot_bilan_jobs" |
---|
| 56 | printf "\n${script}\n" |
---|
| 57 | echo "--------------------" |
---|
[2460] | 58 | bin/${script}.py -fv |
---|
[2427] | 59 | rc=$? |
---|
| 60 | if [ ${rc} -ne 0 ] ; then |
---|
| 61 | echo "${script} terminated abnormally" |
---|
| 62 | else |
---|
| 63 | echo "${script} OK" |
---|
| 64 | fi |
---|
| 65 | |
---|
| 66 | script="plot_login" |
---|
| 67 | printf "\n${script}\n" |
---|
| 68 | echo "--------------------" |
---|
[2437] | 69 | bin/${script}.py -v |
---|
[2427] | 70 | rc=$? |
---|
| 71 | if [ ${rc} -ne 0 ] ; then |
---|
| 72 | echo "${script} terminated abnormally" |
---|
| 73 | else |
---|
| 74 | echo "${script} OK" |
---|
| 75 | fi |
---|
| 76 | |
---|
| 77 | script="plot_store" |
---|
| 78 | printf "\n${script}\n" |
---|
| 79 | echo "--------------------" |
---|
[2524] | 80 | #Â Last STORE file produced |
---|
| 81 | data_file="OUT_CONSO_STORE" |
---|
| 82 | OUTDIR="${HOME}/ConsoGENCMIP6/output" |
---|
| 83 | #Â Directories in last file |
---|
| 84 | dirlist=$( gawk '{if ($4 != "dirname") print $4}' ${OUTDIR}/${data_file} ) |
---|
| 85 | # Where to find the saved files |
---|
| 86 | SAVEDIR="${WORKDIR}/ConsoGENCMIP6/data" |
---|
| 87 | # Previous STORE files |
---|
| 88 | filelist=$( ls ${SAVEDIR}/${data_file}_* ) |
---|
| 89 | fileout="${data_file}_INIT" |
---|
| 90 | echo "date login dirsize dirname" > ${OUTDIR}/${fileout} |
---|
| 91 | for dir in ${dirlist} ; do |
---|
| 92 | grep -h "$dir\$" ${filelist} | head -1 |
---|
| 93 | grep -h "$dir\$" ${filelist} | head -1 >> ${OUTDIR}/${fileout} |
---|
| 94 | done |
---|
| 95 | |
---|
[2437] | 96 | bin/${script}.py -v |
---|
[2427] | 97 | rc=$? |
---|
| 98 | if [ ${rc} -ne 0 ] ; then |
---|
| 99 | echo "${script} terminated abnormally" |
---|
| 100 | else |
---|
| 101 | echo "${script} OK" |
---|
| 102 | fi |
---|
| 103 | |
---|
| 104 | printf "\nEnd of script OK\n" |
---|
[2433] | 105 | |
---|