Hi Josh,
Hmm, I still can not define "mpi_details" in the ini file. Is there something
wrong with my ini file?
DB<32> p $mpi_install->{mpi_details}
DB<33>
DB<33> p Dumper($mpi_install)
$VAR1 = {
'ftb_get_full_section_name' => 'ftb get: ftb-nightly-trunk',
'prepend_path' => undef,
'mpi_name' => 'ftb-nightly-trunk',
'compiler_version' => 'unknown',
'pid' => 23511,
'elapsed_iters' => '0.02',
'bindir' =>
'/nfs/rinfs/san/homedirs/ftbteam/ftt-runs/odin/20101107-Nightly/pb_0/installs/c1aD/install/bin',
'merge_stdout_stderr' => 0,
'elapsed_user' => '0',
'unsetenv' => undef,
'cxx_bindings' => '0',
'description' => undef,
'f90_bindings' => '0',
'exit_status' => undef,
'libdir' =>
'/nfs/rinfs/san/homedirs/ftbteam/ftt-runs/odin/20101107-Nightly/pb_0/installs/c1aD/install/lib',
'mpi_get_simple_section_name' => 'ftb-nightly-trunk',
'elapsed_real' => 0,
'f77_bindings' => '0',
'source_dir' => 'ftb-0.6.2',
'mpi_version' => '0.6.2',
'sym_link_name' => 'ftb-nightly-trunk--platform--0.6.2',
'c_bindings' => 1,
'full_section_name' => 'ftb install: platform',
'vpath_mode' => 0,
'elapsed_children_system' => '0.02',
'timed_out' => 0,
'refcount' => 0,
'env_modules' => undef,
'elapsed_children_user' => '0',
'start_benchmark' => bless( [
1289110689,
'0.4',
'0.12',
'2.48',
'1.8',
0
], 'Benchmark' ),
'version_dir' =>
'/nfs/rinfs/san/homedirs/ftbteam/ftt-runs/odin/20101107-Nightly/pb_0/installs/c1aD',
'build_version_dir' =>
'/nfs/rinfs/san/homedirs/ftbteam/ftt-runs/odin/20101107-Nightly/pb_0/ftb-install/ohiy',
'ftb_get_simple_section_name' => 'ftb-nightly-trunk',
'ftb_version' => '0.6.2',
'result_message' => 'Success',
'append_path' => undef,
'configure_arguments' => '"CFLAGS=-g -pipe" --enable-debug ',
'installdir' =>
'/nfs/rinfs/san/homedirs/ftbteam/ftt-runs/odin/20101107-Nightly/pb_0/installs/c1aD/install',
'test_result' => 1,
'compiler_name' => 'unknown',
'build_dir' =>
'/nfs/rinfs/san/homedirs/ftbteam/ftt-runs/odin/20101107-Nightly/pb_0/ftb-install/ohiy/src/ftb-0.6.2',
'simple_section_name' => 'platform',
'setenv' => undef,
'start_timestamp' => 1289110690,
'stop_benchmark' => bless( [
1289110689,
'0.4',
'0.12',
'2.5',
'1.82',
0
], 'Benchmark' )
};
DB<34>
The ini files that I used are
general_ini_base = $HOME/iu-ftt/odin/etc/general
general_ini = generic-subs2.config
specific_ini_base = $HOME/iu-ftt/etc/ftt2
specific_ini = BEGIN
g-br-trunk,i-32gccFT,ftb
END
It seems that mtt does not pickup the entries that I put in generic-sub2.config.
#----------------------------------------------------------------------
#----------------------------------------------------------------------
<IU SUB - OMPI DETAILS COMMON FTB TEST>
[FTB Details: ftb]
exec = ./run-ftb-tests.pl -test &test_executable()
<IU SUB - OMPI DETAILS COMMON FTB TEST>
#----------------------------------------------------------------------
#----------------------------------------------------------------------
So, I manually added the line "exec = ./run-ftb-tests.pl -test
&test_executable()" into the auto-generated ini file
"20101107-Nightly/ini/g-br-trunk_i-32gccFT_ftb-gen" and I did not put
"mpi_details" entry to it because it does not seem to be added there and it
should be defined in generic-sub2.config.
Anyway, this tweak did not work either. :-(
Any helps would be really appreciated. I attached the current ftb.ini file.
This is the "test run" hash entry in Dumper($ini).
'test run: ftb' => {
'simple_pass:tests' =>
'&enumerate( "ftb_eventhandle_example",
"ftb_example_callback_unsubscribe", "ftb_multiplecomp",
"ftb_notify_logger", "ftb_pingpong",
"ftb_polling_logger", "ftb_simple_publisher",
"ftb_simple_subscriber", "ftb_watchdog")',
'np' => '&env_max_procs()',
'simple_fail:exclusive' => '1',
'include_section' => 'Test run',
'test_build' => 'ftb',
'specify_module' => 'Simple',
'ini_section_name' => 'ftb',
'timeout' => '&max(30,
&multiply(10, &test_np()))',
'merge_stdout_stderr' => '1',
'exec' => './run-ftb-tests.pl
-test &test_executable()',
'pass' =>
'&and(&cmd_wifexited(), &eq(&cmd_wexitstatus(), 0))',
'simple_fail:tests' =>
'environment/abort environment/final',
'program_dir' =>
'/u/ftbteam/projects/mtt/client',
'simple_fail:np' =>
'&env_max_procs()',
'program_name' =>
'/u/ftbteam/projects/mtt/client/ftt',
'skipped' =>
'&and(&cmd_wifexited(), &eq(&cmd_wexitstatus(), 77))',
'simple_fail:pass' =>
'&and(&cmd_wifexited(), &ne(&cmd_wexitstatus(), 0))',
'ini_name' =>
'/u/ftbteam/ftt-runs/odin/20101107-Nightly/ini/g-br-trunk_i-32gccFT_ftb-gen',
'stdout_save_lines' => '100',
'save_stdout_on_pass' => '1'
},
This is the hash entry of $test_build during the "Test Run" phase.
DB<22> p Dumper($test_build)
$VAR1 = {
'full_section_name' => 'test build: ftb',
'prepend_path' => undef,
'refcount' => 0,
'env_modules' => undef,
'ftb_get_simple_section_name' => 'ftb-nightly-trunk',
'ftb_install_id' => undef,
'ftb_version' => '0.6.2',
'unsetenv' => undef,
'result_message' => 'Success',
'append_path' => undef,
'ftb_name' => undef,
'ftb_install_simple_section_name' => 'platform',
'test_result' => 1,
'description' => undef,
'exit_status' => 0,
'simple_section_name' => 'ftb',
'setenv' => undef,
'srcdir' =>
'/nfs/rinfs/san/homedirs/ftbteam/ftt-runs/odin/20101107-Nightly/pb_0/installs/c1aD/tests/ftb/components',
'start_timestamp' => 1289110730,
'test_get_simple_section_name' => 'ftb'
};
I am sorry for all the bulky copy and pastes.
Regards,
On 11/6/10 2:31 AM, DongInn Kim wrote:
> Josh, thanks but actually I don't know how to set the base directory of the
> test suite in the Test Get/Build phase. Is it setup in the ini file or
> somewhere? and how?
>
> Regards,
>
> On 11/5/10 11:32 AM, Joshua Hursey wrote:
>>
>> On Nov 5, 2010, at 10:11 AM, DongInn Kim wrote:
>>
>>> Josh, I have another question.
>>> How can mtt find the script to run?
>>>>> exec = ./run-cr-correctness.pl -test ...
>>>
>>> I can write a similar script like run-correctness.pl but if I put my
>>> script(e.g., run-ftb-tests.pl) to ftb-tests/iu/ftt/ftb/, how can I make mtt
>>> recognize this path and file?
>>
>> The file is in the ompi-tests repo, under:
>> ompi-tests/iu/ft/correctness/run-correctness.pl
>>
>> Remember that the Test Run phase will 'cd' into the base directory of the
>> test suite that you specify in the Test Get/Build phase. So you can
>> reference a relative path with respect to the test suite. So just put the
>> script in with the test suite, and the Test Get phase will grab it for you.
>>
>> -- Josh
>>
>>>
--
- DongInn
#======================================================================
# Test get phase
#======================================================================
[Test get: ftb]
module = SCM
scm_module = SVN
scm_url = https://svn.mcs.anl.gov/repos/cifts/ftb/trunk/components
scm_post_copy = <<EOT
./autogen.sh
EOT
#======================================================================
# Test build phase
#======================================================================
[Test build: ftb]
test_get = ftb
save_stdout_on_success = 1
merge_stdout_stderr = 1
stderr_save_lines = 100
module = Shell
shell_build_command = <<EOT
./configure --with-ftb=&test_prefix_pretty()
make
EOT
#======================================================================
# Test Run phase
#======================================================================
# Some default Test run parameters to include in (most) Test run sections
[Test run]
pass = &and(&cmd_wifexited(), &eq(&cmd_wexitstatus(), 0))
timeout = &max(30, &multiply(10, &test_np()))
save_stdout_on_pass = 1
merge_stdout_stderr = 1
stdout_save_lines = 100
np = &env_max_procs()
specify_module = Simple
[Test run: ftb]
include_section = Test run
test_build = ftb
skipped = &and(&cmd_wifexited(), &eq(&cmd_wexitstatus(), 77))
# Similar rationale to the intel test run section
simple_pass:tests = &enumerate( \
"ftb_eventhandle_example", \
"ftb_example_callback_unsubscribe", \
"ftb_multiplecomp", \
"ftb_notify_logger", \
"ftb_pingpong", \
"ftb_polling_logger", \
"ftb_simple_publisher", \
"ftb_simple_subscriber", \
"ftb_watchdog")
# Similar rationale to the intel test run section
simple_fail:tests = environment/abort environment/final
simple_fail:pass = &and(&cmd_wifexited(), &ne(&cmd_wexitstatus(), 0))
simple_fail:exclusive = 1
simple_fail:np = &env_max_procs()
#----------------------------------------------------------------------