Updated to call timekeeper with minutes.
Also put all timekeeper output to a separated logfile.
Platforms tested:
Did not test since it is hard to test without starting the whole daily test.
The change is trivial too.
Bug fix.
Description:
There was a historical hack to prevent runtest in multiple
hosts to run cvs update while they were launched by the daily test.
But a more proper fix has been implemented to prevent that but
this hack was not removed. It ended up enforcing one CVS update
per day. But if someone tested runtest during the day, it would
prevent the evening daily from doing update. That is not good.
Solution:
Removed the hack which is not need any more.
Platforms tested:
NO h5committest since it does test runtest. Tested it by
hand in eirene and heping.
Misc. update:
Feature
Description:
Added code to support the -configname feature.
Platforms tested:
no h5committest which does not test this command.
ran it by hand in eirene comparing tg-login1 and tg-login2.
Misc. update:
Bug fix and feature.
Description:
The setenv was done in runtest but it has the effect will linger
onto the next test. So, if the first test sets $CXX to a certain
value, it lingers on the all following tests of the same host.
This is usually not desired.
Solution:
Move the actual setenv code to snapshot. Runtest now just parses them
and pass along the setenv request to snapshot.
Platforms tested:
no h5comittest which does not really test the change.
Hand tested in eirene with Tg-NCSA.
Misc. update:
cleanup.
Description:
Removed the old command that parses setenv2 and setenv3 which are
replaced by setenvN.
Platforms tested:
No h5committest since it does not test this script.
Pretty sure it works.
new feature
Description:
Added the -setup option so that it can setup the snapshot test
directory structure. This will help the setup of snapshot test
in a new machine, especially remote machine much easier.
Platforms tested:
no h5committest becuase it does not test this script.
Tested in tg-ncsa.
Bug fix
Description:
The op-snapshot checkout "ate" the next option by mistake.
Solution:
Remove the extra shift.
Platforms tested:
Can't really test it without doing a real snapshot test.
Pretty sure it is correct and will watch the result tomorrow.
Misc. update:
Improvement
Description:
The -w timeout option is not supported by all hosts.
Added the "ping -c 3" possible PING command.
Platforms tested:
Tested in eirene by hand only.
Misc. update:
new feature
Description:
Added a new option of "setenvN" which does
set environment variable with $1 values
e.g., setenvN 3 x a b c is same as setenv x="a b c".
Platforms tested:
No h5committest. Tested by hand in copper.
Misc. update:
new feature
Description:
Added a new test option of
op-snapshot <option> snapshot option
This allows snapshot.cfg to tell runtest to run snapshot with a
special option.
Platforms tested:
Not h5committest because it is outside of its scope.
Tested by hand.
Misc. update:
Bug fix
Description:
If the base directory (.../snapshot-...) does not exist yet,
the runtest and snapshot will continue on till it bumped into
a "wall".
Solution:
Added verification that the BASEDIR does exist.
bug fixes
Description:
The "fs flush" actually discards the local caches information,
NOT pushing the local file out to the servers. It does not
help the AFS problems we had but probably made it worse by
creating more demands on the servers.
Solution:
Removed the FLUSH_FILES code.
Platforms tested:
Can't be tested by h5committest and I am pretty sure the
change is safe.
Misc. update:
feature.
Description:
Added the option of "setenv3" which sets the environment variable
that has three components like env AR="ar -X 64". It is another
kludge like setenv2. Got to code in a better 'setenv' option.
Platforms tested:
Copper (because its -64 compiling needs that AR set as above).
Eirene (where it usually launches).
Did not do h5committest which does not test bin/runtest.
Misc. update:
New Feature
Description:
Some machine has a different hostname from its official name (e.g., copper
is called Cu12) and some machine name are dynamic aliases (e.g., titan is
mapped user01 or user02). Some names are cryptic (who could remember
hn0? are platinum hosts while user0? are for titan). We had to hardcode
those names into the snaptest.cfg file. An ongoing maintenance PAIN.
Solution:
Added -configname <name> option where
"use <name> as hostname in the parsing of the snaptest configure file"
Changed RSH code to append the hostname used in the Allhostfile. Now, we
need not worry about machine name mapped to a different host and it is
much cleaner to match up entries between allhostfile and snaptest.cfg files.
Platforms tested:
Did not use h5committest which does not cover this code.
Tested in eirene, titan, platinum and copper.
Misc. update:
Improvement
Description:
Added a 5 seconds timeout to the PING command so that it can detect
host not online quicker.
Platforms tested:
The three platforms tests do not cover this command.
Test it in eirene where it is usually run.
Misc. update:
Bug fix.
Description:
n_test must be inited to 1 when it is for tests within one machine.
Undid my previous mistake.
Platforms tested:
Eirene.
Did not do the h5committest because this is a script and if it works
in one machine, it most like will work in all Unix platform.
Misc. update:
new feature and some bug fixes
Description:
Add a new feature to "skip" some tests.
Sometimes, a machine has problem (e.g. titan and sleipnir having AFS
problems). Sometimes some feature in a machine is temporary off (e.g.,
PGI compilers in eirene.) The tests will be reported being SKIPPED
which will be reminder to remove the skipping once the problem is fixed.
I installed the skipping control in snaptest.cfg rather than in
allhostsfile to have a finer control to skip just a subset of the
tests of a machine, rather than skipping the all tests of a machine.
Bug fixes: fixed the miscounting of number of tests ran. It was
reporting one too many.
Platforms tested:
Only tested in eirene since eirene is the one uses it directly.
Misc. update:
New feature
Description:
Added feature to print a summary of total number of tests and time spent
in each host.
Platforms tested:
Did not run h5committest because it does not test this script.
Did test it out in eirene and burrwhite.
Misc. update:
No document change.
feature
Description:
Removed the search of HDF4 library specifically.
Replaced the locate_hdf4 with a more general locate_sw.
Added the search of zlib.
Platforms tested:
eirene and all hdf group machines.
Feature/bug fix
Description:
The 'snapshot diff' command is run in all cases, even after the initial
"snapshot diff" and hosts are polled to run the test. It would not cause
any harm except wasting time repeating diff'ing. Also, the path is
quite right to invoke snapshot by merely "bin/snapshot diff" since it
has not "cd" to the right directory yet.
Solution:
Added a new option of "-nodiff" to skip the special diff request.
Then make "runtest" to call itself again with it to prevent
any further unnecessary diff'ing.
Platforms tested:
eirene
New feature
Description:
"snapshot diff" will just run the diff and exit 0 is no significant
differences found between current and previous versions.
Runtest will try a "snapshot diff" and will skip test if no significant
differences are found.
Platforms tested:
eirene
New feature
Description:
Replacing the hardcoding of default version for snapshot test
to a file, bin/snapshot_version. This way, runtest and snapshot
can be version neutral. Makes maintenance easier.
Platforms tested:
eirene.
Feature
Description:
The output of multiple tests of one host used to all go to the same
logfile. It is harder to find the beginning of each test.
Solution:
Added hour and minute (HHMM) into the logfile name. Different
tests should go to different files now. If a second test starts
within a minute of the previous test, their output will be all
in the same file. In the case, there are probably not that much
output to worry.
Platforms tested:
eirene
kludge
Description:
Somehow if consecutive "rsh houdin -n ..." are issued too close,
a "Connection refused" result. Then /usr/local/krb5/rsh falls
back to ordinary rsh protocal which of course won't work either.
Solution:
if the houdin to be tested is houdin, wait for 5 seconds before
launching the 'rsh ...' command. Hopefully the system admin can
fix the rsh problem.
Platforms tested:
eirene talking to houdin.
Feature (actually a kludge)
Description:
The old "setenv" option for the snaptest.cfg cannot handle
if there are white spaces in the setenv value part.
Added a "setenv2" that expects the value consists of 2 parts.
A better solution (like can parse in double quoted values) is
needed.
Platforms tested:
eirene with houdin (solaris 2.7)
feature
Description:
Recognize command line argument in the form of '--*' as
a configure command option by default. Since all normal
configure options are in the form of '--*', this will
simplify the "op-configure <option>" syntax. The latter
syntax is still kept in case one would want to pass in
some configure argument that does not fit this syntax.
Platforms tested:
Eirene.
Bug fix.
Description:
Did not update the expected strings for result of grand total test
time. Causing a false report of test failed to complete.
Solution:
Update the strings.
Platforms tested:
Eirene and modi4.
Bug fix
Description:
The previous coding using sed was not portable for all Unix
systems. Much easier to use 'cut' to parse the strings.
Platforms tested:
eirene
Bug fix
Description:
when a snaptest did not complete, it reported it as a failure
of the launching host, rather than the testing host.
Changed it to report the testing host.
Feature
Description:
Changed some output format.
Improved the CHECK_RSH to better report the result when failed.
Platforms tested:
eirene with nosuch and shalom. (made sure failures do occur)
Feature
Description:
Added the feature that ALLHOSTS can be set via the file
allhostfile in the snapshot directory. This reduces the
need to modify runtest for hosts changes.
Platforms tested:
eirene (did dry runs).