Page History

Turn Off History

Testing Condor with NMI

Testing a Previous Condor Build

If the build you want to test was made from a git tag, you can submit the tests using the same tag:

/home/cndrauto/condor/nmi_tools/condor_nmi_submit --test --buildid=209846 \
--tag=BUILD-trunk-2010-1-13 --module=UNUSED --git --platforms=all \
--submit-xtests

If the build you want to test was a workspace build, you can submit the tests using the same workspace. Run this from the nmi_tools directory of your workspace:

./condor_nmi_submit --test --buildid=209633 --git --platforms=all \
--workspace=.. --submit-xtests

You can restrict the set of platforms tested by giving a comma-separated list for the --platforms option. If you don't want any cross-platform tests, you can use --nosubmit-xtests.

The following is old documentation that needs to be updated or removed

Using a Workspace Directory to Test a Previous Condor Build

For this scenario, my job_core_max-local-running tests were producing false negatives on random platforms in the nightly build. I wanted to make a fix to the test files and then test my changes against the previous night's build. These instructions will allow you to do that without having to commit any of your changes to CVS.

First, tar up your workspace directory. Make sure that you have both the externals and docs directories checked out:

1:30pm[chopin:~/Workspace]$ la V6_7-branch/
total 32K
drwxr-x---    4 pavlo    pavlo         14K Dec 19 12:17 NTconfig/
drwxr-x---    3 pavlo    pavlo        2.0K Dec 19 12:17 config/
drwxr-x---   13 pavlo    pavlo        2.0K Dec 19 12:17 doc/
drwxr-x---    4 pavlo    pavlo        2.0K Dec 19 13:19 externals/
drwxr-x---    3 pavlo    pavlo        2.0K Nov  1 10:55 imake/
drwxr-x---    8 pavlo    pavlo        2.0K Dec 19 12:17 nmi_glue/
drwxr-x---  141 pavlo    pavlo        8.0K Dec 19 12:18 src/
1:30pm[chopin:~/Workspace]$ tar zfvc V6_7-branch.tar.gz V6_7-branch/

Upload the tar file to the NMI submission host:

1:36pm[chopin:~/Workspace]$ scp V6_7-branch.tar.gz pavlo@grandcentral:~/
Now on the submission host, unpack the tar file:
1:38pm[grandcentral:~]$ tar zxfv V6_7-branch.tar.gz
This next step is very important. We need to run the pre_all script on our Workspace directory. This will build the man pages and create a source tarball, so that's why you need externals and docs:
1:38pm[grandcentral:~]$ cd V6_7-branch
1:38pm[grandcentral:~/V6_7-branch]$ ./nmi_glue/build/pre_all
In the copied over Workspace directory you should just have the following files:
1:50pm[grandcentral:~/V6_7-branch]$ la
total 320M
-rw-rw-r--  1 pavlo pavlo 160M Dec 19 13:28 condor-6.7.15.tar.gz
-rw-rw-r--  1 pavlo pavlo    6 Dec 19 13:25 CONDOR-VERSION
drwxr-x---  8 pavlo pavlo 4.0K Dec 19 12:17 nmi_glue/
-rw-rw-r--  1 pavlo pavlo 160M Dec 19 13:28 results.tar.gz
The condor-6.7.15.tar.gz file is what you're going to want to submit as the test source. results.tar.gz just contains a copy of condor-6.7.15.tar.gz and CONDOR-VERSION.

Finally, we will submit a new NMI test using a previous build result. The test-src option is where the system will get the test sources to run against the build results. Make sure that you give the full path to this option (don't just use ./). The test-args option is the test class that you want to specifically test (see condor_tests/README.testclass). In this example, I used Bill's debug class. Since we didn't have to commit anything to CVS to test this Workspace directory, it's not a problem if we hack up condor_tests/Imakefile.

1:50pm[grandcentral:~/V6_7-branch]$ condor_nmi_submit --test --buildid=16426 \
--tag=BUILD-V6_7-branch-2005-12-19 --module=V6_7_BUILD --platforms=all \
--notify=pavlo@cs.wisc.edu --test-args=btdebug \
--test-src=/space/home/pavlo/V6_7-branch/condor-6.7.15.tar.gz

Using a Workspace Directory to Test a change to the Condor NMI test glue

Now, we will submit a new test using a previous build result. The nmi-glue option is where the system will get the test nmi_glue to run against the build results. Again, make sure that you give the full path to this option (don't just use ./). ALSO, make sure you test your glue changes against a Unix and a Windows platform!!!! Notice the change to --platforms!

grandcentral:~/V6_7-branch]$ condor_nmi_submit --test --buildid=16426 \
--tag=BUILD-V6_7-branch-2005-12-19 --module=V6_7_BUILD --platforms=x86_winnt_5.1,x86_rh_9  \
--test-args=btdebug \
--test-src=/home/bt/V6_7-branch/condor-6.7.15.tar.gz \
--nmi-glue=/home/bt/nmi_glue

Using a Workspace Directory to Test a change to the NMI framework

There are times that the "Framework" itself needs to be changed and tested. In this case you have to configure your environment and the copy of the framework you are testing. Do the following in order:

grandcentral:~/V6_7-branch]$ condor_nmi_submit --test --buildid=16426 \
--tag=BUILD-V6_7-branch-2005-12-19 --module=V6_7_BUILD --platforms=x86_winnt_5.1,x86_rh_9  \
--test-args=btdebug --nmiconf=/home/bt/fw/etc/nmi.conf \
--test-src=/home/bt/V6_7-branch/condor-6.7.15.tar.gz \
--nmi-glue=/home/bt/nmi_glue