{section: Testing HTCondor with NMI} {subsection: Testing a Previous HTCondor Build} The easiest way to test now is from a workspace with or without a build happening first. The easiest way to move it to a folder called workspace on the NMI submit node(say submit-2.batlab.org) is as follows: {code} cd top of your workspace git write-tree # produce something like a68e0821c9808d2f584b593f3eeef65c3b4a432 git archive a68e0821c9808d2f584b593f3eeef65c3b4a432 | ssh submit-2.batlab.org \ cd workspace '&&' tar xf - {endcode} **All of the following variations happen within nmi_tools.** To build and then run all the tests go like this: {code} ./condor_nmi_submit --build --git --workspace=../ --platforms=all \ --notify-fail-only --desc="Tolerance for searchmulti" {endcode} Add --submit-xtests to the above to make any cross platform tests get run also. To run the tests in your workspace and not do any builds, pick a build you want to test against and do the following: {code} ./condor_nmi_submit --test --platforms=all --buildid=135391 \ --workspace=../ --ignore-missing-platforms --test-sources-from-workspace {endcode} *The above tests with the nmi glue in your existing nmi_tools folder so testing glue is easy now! What the above does is this:* 1:Sets up a transfer for the job of your nmi glue 1:Looks up and arranges transfer of all the results and condor_tests from the requested build 1:Sets up a transfer of your entire workspace 1:On the execute node it copies your condor_examples over the ones from the requested build 1:On the execute node is copies all the perl modules from condor_scripts on top of the ones in the previous builds condor_tests 1:On the execute node it recursively copies your entire condor_tests into the build's condor_tests **What does not happen is that any compiled test, comes from the requested build's compiled tests.** *If you want to run just a few tests, you create a file in Metronome accepted syntax and name it "testoverride". This file is placed in condor_tests in your workspace.* Here is a sample: {code} JOB job_basic_suspend_continue_test-1 JOB job_concurrency_limits-1 {endcode} If the build you want to test was made from a git tag, you can submit the tests using the same tag: {code} /home/cndrauto/condor/nmi_tools/condor_nmi_submit --test --buildid=209846 \ --tag=BUILD-trunk-2010-1-13 --module=UNUSED --git --platforms=all \ --submit-xtests {endcode} 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: {code} ./condor_nmi_submit --test --buildid=209633 --git --platforms=all \ --workspace=.. --submit-xtests {endcode} 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 blacklist a particular host, add something like this to the condor_nmi_submit line: {code} --append 'append_requirements=Machine!="nmi-0102.batlab.cs.wisc.edu"' {endcode}