Usage of runXMLΒΆ

Run all test cases specified within an XML file without the overhead of pavayo.

$ ./contrib/runXML.py -h
usage: pavayo.py [-h] [-i PATH] [-w PATH] [--testLevel LEVEL [LEVEL ...]] [--basePath KEY [PATH ...]]
                 [--traceSuite PATH] [--trace PATH] [--prep PATH] [--post PATH] [--addExecutable KEY [PATH ...]]
                 [-g PATH] [--noFixedGmcPlay] [--pymesh PATH] [--noFixedPyMesh] [--debug]
                 [--passCommandLineArgument EXECUTABLE ARGUMENT] [-tbp] [-d] [-c] [-p] [-l] [-a] [--skipReferenceChecks]
                 [--show [{testcases,keywords}]] [--showSelected [{testcases,keywords,status}]] [-o PATH]
                 [--forceReferencePlots] [--evaluateReferences]
                 [--selectiveCompute SELECTIVE_COMPUTE [SELECTIVE_COMPUTE ...]]
                 [--step {reset,gmc,prep,trace,post} [{reset,gmc,prep,trace,post} ...]] [-t TESTCASE [TESTCASE ...]]
                 [-T] [-A ACCOUNT] [--queue QUEUE] [-n {ib,w,sb}] [--np NUM] [--numberOfThreadsPerProc NUM]
                 [--numberOfProcsPerNode NUM] [--allowFewerProcs] [--deactivateClusterJobGrouping]
                 [--slurmSwitches SLURMSWITCHES] [--literatureDatabase PATH] [--unusedLiteratureDatabase]
                 [-m MAILADDRESS] [-f] [--maxPriority MAX_PRIORITY] [--confidentiality ALLOW [ALLOW ...]]
                 [--keyword KEYWORD [KEYWORD ...]] [--exclude] [--knownErrorsFile KNOWN_ERRORS_FILE]
                 [--knownErrorsSuiteName KNOWN_ERRORS_SUITE_NAME] [--updateReferenceData] [--updateRestartData]
                 [--updateMeshData] [--prepareTraceSuiteXMLforUpload] [-u PATH] [--failedJobsFile PATH]
                 [--junitXml PATH] [--retriesComputation N_RETRIES]
                 [--releaseReports RELEASEREPORTS [RELEASEREPORTS ...]]
                 [--singleTecplotLicense | --ntecplot TECPLOTLICENSE] [--valgrind]
                 [--valgrindExec VALGRIND_EXEC [VALGRIND_EXEC ...]] [--valgrindSuppFile VALGRIND_SUPP_FILE]
                 [--includeSanitizerLogs] [--sshUser SSHUSER] [--saveTestCaseRuntimes] [--verbosity VERBOSE]
                 [--additionalProcessStatus] [--outputOnError] [--version]

Perform a test on TRACE.

optional arguments:
  -h, --help                            show this help message and exit
  -i PATH, --input PATH                 read the selected XML file
  -w PATH, --workingDirectory PATH      path for the working directory
  --literatureDatabase PATH             Specify the path to the checked out literature data base
  --unusedLiteratureDatabase            Mark the database as unnecessary for the run. It will not be downloaded.
  -m MAILADDRESS, --mail MAILADDRESS    Mail address to send mail to when job is finished
  -f, --forceUpdate                     force update of all specified test cases, only available on test level 2 and 3
  --releaseReports RELEASEREPORTS [RELEASEREPORTS ...]
                                        Generate additional validation reports in consideration of the confidentiality
  --verbosity VERBOSE                   level of verbosity (0 - minimal output, 1 - Jenkins, 2 - default, 3 - debug)
  --additionalProcessStatus             activates further process status output (i.e. RUNNING..., DONE...) as formerly
                                        known
  --outputOnError                       write the output of failed jobs to stdout if available
  --version, -v                         show program's version number and exit

Test case selection:
  --testLevel LEVEL [LEVEL ...]         The test level you want to execute (3 (default) = test suite, 5 = validation)
  -t TESTCASE [TESTCASE ...], --testcase TESTCASE [TESTCASE ...]
                                        select specific test cases
  -T, --testcasesFromStdin              select specific test cases by reading them from stdin
  --maxPriority MAX_PRIORITY            maximal priority of test cases to run; only available for the test suite
  --confidentiality ALLOW [ALLOW ...]   select only test cases which are free for the given group
  --keyword KEYWORD [KEYWORD ...]       only handle test cases with (or without; see '--exclude') this keyword
  --exclude                             exclude test cases with the keywords specified via '--keyword'
  --knownErrorsFile KNOWN_ERRORS_FILE   Path to JSON file containing known errors
  --knownErrorsSuiteName KNOWN_ERRORS_SUITE_NAME
                                        Name of the suite to use from the knownErrorsFile

Executables:
  --basePath KEY [PATH ...]             list of base paths ({key}=<path> or {key} [path]
  --traceSuite PATH                     path to the TRACE suite folder
  --trace PATH                          path of the TRACE executable
  --prep PATH                           path of the PREP executable
  --post PATH                           path of the POST executable
  --addExecutable KEY [PATH ...]        path to additional executables ({key}=<path> or {key} [path]
  -g PATH, --gmcplay PATH               path of the GMC_PLAY executable
  --noFixedGmcPlay                      gmcPlay version may differ from the version stated in the XML file
  --pymesh PATH                         path of the PyMesh executable
  --noFixedPyMesh                       PyMesh version may differ from the version stated in the XML file
  --debug                               use the *debug versions of the TRACE suite executables; only works in
                                        combination with '--traceSuitePath'
  --passCommandLineArgument EXECUTABLE ARGUMENT
                                        Specify a flag for an executable; Only works for the test level 3; NB: Do not
                                        include the leading dashes; only works for long options
  -tbp, --useThreadsInsteadOfProcesses  Use shared memory parallelization only for TRACE; Warning: this may lead to
                                        invalid configurations!

Execution (at least one option mandatory):
  -d, --download                        download the test cases
  -c, --compute                         do the computation
  -p, --postProc                        do the post processing and check the results against references
  -l, --latex                           create the report file
  -a, --autorun                         perform all steps and do it without interaction
  --skipReferenceChecks                 skip check of tolerances of results against references
  --show [{testcases,keywords}]         show available test cases (By adding the optional argument keywords the test
                                        cases are listed by keywords.)
  --showSelected [{testcases,keywords,status}]
                                        show the selected test cases (By adding the optional argument keywords the test
                                        cases are listed by keywords.)
  -o PATH, --outputTestcases PATH       select output file for test case list
  --forceReferencePlots                 force the creation of reference plots even if checks succeed
  --evaluateReferences                  compare current against original references without running the testcases
  -u PATH, --uploadTestcases PATH       Upload test cases. Don't forget to specify a file with a check-in message.
  --failedJobsFile PATH                 Specify file for failed jobs output.
  --junitXml PATH                       Specify file for a JUnit compatible XML file.
  --retriesComputation N_RETRIES        Number of times every computation is retried.

Sub-set for the 'compute' step (expert options):
  --selectiveCompute SELECTIVE_COMPUTE [SELECTIVE_COMPUTE ...]
                                        use the specified list of job names
  --step {reset,gmc,prep,trace,post} [{reset,gmc,prep,trace,post} ...]
                                        execute the specified steps for validiation test cases

Job management:
  -A ACCOUNT, --account ACCOUNT         Account for cluster costs
  --queue QUEUE                         queue for the queueing system when running on a cluster
  -n {ib,w,sb}, --nodeType {ib,w,sb}    Choose a node type
  --np NUM                              number of processes
  --numberOfThreadsPerProc NUM          number of threads per processor for all TRACE jobs
  --numberOfProcsPerNode NUM            number of processors per node for all TRACE jobs
  --allowFewerProcs                     If there are less processes available than a job asks for use fewer processes
  --deactivateClusterJobGrouping        deactivates simultaneous execution of small jobs on shared cluster nodes
  --slurmSwitches SLURMSWITCHES         <count>[@minutes] requests a node allocation with at most <count> network
                                        switches within <minutes> by SLURM

Modifying test cases and prepare Trace Suite for check in:
  --updateReferenceData                 update reference data of selected test cases: only available for the test suite
  --updateRestartData                   update restart data of selected test cases: only available for the test suite
  --updateMeshData                      update mesh data of selected test cases and activates --updateRestartData: only
                                        available for the test suite
  --prepareTraceSuiteXMLforUpload       modify the 'referenceTraceSuite' version string in the <testcase>.xml as
                                        prepararation for the check-in according to changes in the test cases

Tecplot:
  --singleTecplotLicense                only one tecplot license is available
  --ntecplot TECPLOTLICENSE             specify arbitrary number of Tecplot licenses

Code Analysis:
  --valgrind                            run all executables under observation of valgrind (for a specific executable use
                                        option 'valgrindExec')
  --valgrindExec VALGRIND_EXEC [VALGRIND_EXEC ...]
                                        specify which executables are observed by their exact name
  --valgrindSuppFile VALGRIND_SUPP_FILE
                                        specify your own valgrind suppression file
  --includeSanitizerLogs                Include the logs from GCC sanitizers in the report

SVN:
  --sshUser SSHUSER                     Specify a different SSH username for accessing the Testcase SVN

Metrics:
  --saveTestCaseRuntimes                Dump TestCase runtimes to stdout and to testCaseTimings.json