source: XIOS/trunk/xios_test_suite/TEST_SUITE/run_test @ 1824

Last change on this file since 1824 was 1824, checked in by yushan, 5 years ago

XIOS test suite : add scripts for local compile and test. No copy to thredds/forge.

  • Property svn:executable set to *
File size: 3.0 KB
Line 
1#!/bin/bash
2
3source ../ARCH/arch-${arch}.env
4cd .. ; source load_env_local ; cd RUN_TEST_SUITE
5
6export machine_name=$xios_machine_name
7export machine_full_name=$xios_full_machine_name
8export xios_dir=$(bash -c "cd ../.. && pwd" 2>&1)
9
10export reference_file=xios_reference.tar.gz
11export reference_folder=xios_reference
12
13export build_dir=xios_test_suite/RUN_TEST_SUITE/build_${arch}_${mode}
14export xios_revision=$(svn info --show-item revision ../.. 2>&1)
15export relurl=$(svn info --show-item relative-url ../.. 2>&1)
16
17
18set -x
19
20
21bash -c "cd ../.. && ./make_xios --arch_path `pwd`/../ARCH --arch ${arch} --${mode} --build_dir ${build_dir} --job 16"
22export build_status=$?
23
24#----------- Fetch reference -----------
25cp ${xios_reference_dir}/${reference_file} ./
26tar -xzvf ${reference_file}
27
28rm -f ${reference_file}
29
30for i in $(ls ${reference_folder}/) 
31do
32  folder=${i%%}
33  bash -c "cd ${folder} && rm -rf config_*"
34  bash -c "cp -r ${reference_folder}/${folder}/config_* ./${folder}"
35done
36
37rm -rf ${reference_folder}
38
39
40rm -f plain_report.txt
41
42echo "#revision" ${xios_revision} >> plain_report.txt
43echo "#relurl" ${relurl} >> plain_report.txt
44echo "#machine" ${machine_name} >> plain_report.txt
45echo "#build_dir" ${xios_dir}/${build_dir} >> plain_report.txt
46echo "#arch" ${arch} >> plain_report.txt
47echo "#mode" ${mode} >> plain_report.txt
48
49if [[ ${build_status} == 0 ]]
50then
51
52rm -f setup.sh
53touch setup.sh
54>setup.sh
55for i in $(ls -d test_*/)
56do
57  cp setup.py ${i%%/}     
58  cp run_sub_test.sh ${i%%/}   
59  echo "bash -c \"cd " ${i%%/} " && python setup.py\" ">> setup.sh
60  echo "echo \"setup.py called from " ${i%%/} "\"">> setup.sh
61done
62
63export output=$(python user_config.py 2>&1 >/dev/null)
64
65if [ "$output" -ne 0 ]
66then
67        echo "user_config.py failed"
68        exit
69else
70        echo "user_config.py OK"
71fi
72
73
74cmake .
75ctest -V
76#ctest --output-on-failure
77make report
78
79rm -f test_*/setup.py
80rm -f test_*/run_sub_test.sh
81rm -f test_*/run_test_*.py
82rm -f test_*/CMakeLists.txt
83rm -f test_*/context_grid_dynamico.xml
84rm -f test_*/dynamico_grid.nc
85rm -f test_*/default_param.pyc
86rm -f test_*/user_param.pyc
87rm -f test_*/user_param.py.*
88
89rundir=${xios_test_suite_repository}/RUN
90mkdir -p $rundir ; CHMOD  $rundir
91mkdir -p ${rundir}/test_${machine_name} ; CHMOD ${xios_test_suite_repository}/test_${machine_name}
92
93cp plain_report.txt ${rundir}/test_${machine_name}/test_${xios_revision}_${machine_name}_${arch}_${mode}.txt
94CHMOD ${rundir}/test_${machine_name}/test_${xios_revision}_${machine_name}_${arch}_${mode}.txt
95
96mkdir -p ${rundir}/def_files ;  CHMOD ${rundir}/RUN/def_files
97mkdir -p ${rundir}/def_files/${xios_revision} ;  CHMOD ${rundir}/def_files/${xios_revision}
98
99for i in $(ls -d test_*/)
100do
101  mkdir -p ${rundir}/def_files/${xios_revision}/${i%%}
102  cp ${i%%}/user_params.def ${rundir}/def_files/${xios_revision}/${i%%}     
103  for j in $(ls -d ${i%%/}/config_*)
104  do
105    mkdir -p ${rundir}/def_files/${xios_revision}/${j%%}
106    cp ${j%%}/setup/all_param.def ${rundir}/def_files/${xios_revision}/${j%%} 
107  done
108  CHMOD ${rundir}/def_files
109done
110
111fi
112
Note: See TracBrowser for help on using the repository browser.