ITK/Release 4/Testing On Demand/Tutorial: Difference between revisions

From KitwarePublic
Jump to navigationJump to search
Line 61: Line 61:


   macondo.kitware.ctest
   macondo.kitware.ctest
== Common Script ==
And finally, you need to put in the same directory the common script:
* [[File:Cdash client common.cmake]]
that is included at the bottom of the client script.


== Run It ==
== Run It ==

Revision as of 23:31, 20 November 2010

Overview

This tutorial covers three aspects

  • How to setup a machine to be a client of cdash@home
  • How to schedule a testing job in CDash

How to Setup a Client

A cdash@home client, is a computer that is donating time to CDash, by making itself available to run testing tasks that other customers may request from CDash.

XML Description

The XML description of the current machine can take the following form:

 <?xml version="1.0" encoding="UTF-8"?>
  <cdash>
    <system>
      <platform>Linux</platform>
      <version>Ubuntu</version>
      <bits>64</bits>
      <basedirectory>/home/ibanez/Dashboards/cdashclient_workspace/</basedirectory>
    </system>
    <compiler>
      <name>gcc</name>
      <version>4.4.3</version>
      <generator>Unix Makefiles</generator>
    </compiler>
    <cmake>
      <version>2.8</version>
      <path>/home/ibanez/local/bin/cmake</path>
    </cmake>
    <program>
      <name>git</name>
      <version>1.7.0.4</version>
      <path>/usr/bin/git</path>
    </program>
  </cdash>

CTest script

and the ctest script can take the following form

 # These variables define the system and should be set
 # In the future CTest might be able to determine this automatically
 set(CDASH_SITENAME "macondo.kitware")
 set(CDASH_SYSTEMNAME "Ubuntu-64bits")
 set(CDASH_SITE_CONFIG_FILE "/home/ibanez/Dashboards/cdashclient/cdash-home/macondo.kitware.cdash.xml")
 set(CDASH_TEMP_DIRECTORY "/home/ibanez/Dashboards/cdashclient_builds/tmp")
 set(CTEST_EXECUTABLE "/home/ibanez/local/bin/ctest")
 set(CTEST_DROP_SITE "www.cdash.org")
 set(CTEST_DROP_URL "/CDash/submit.php")
 set(CDASH_LOOP_DURATION 64800) # Available for 18 hours / day
 # Now include the common setup for cdash
 include(cdash_client_common.cmake)


in this case, put in a file called

  macondo.kitware.ctest


Common Script

And finally, you need to put in the same directory the common script:

that is included at the bottom of the client script.

Run It

you run the ctest script the usual way with CTest

 ctest   -S    macondo.kitware.ctest   -V

The system will reply with a message similar to

 Cannot create directory /Testing/Temporary
 Cannot create log file: LastSubmit.log
 Submit files (using http)
    Using HTTP submit method
    Drop site:http://www.cdash.org/CDash/submit.php?sitename=macondo.kitware&systemname=Ubuntu-64bits&submitinfo=1
    Uploaded: /home/ibanez/Dashboards/cdashclient/cdash-home/macondo.kitware.cdash.xml
    Submission successful
 SiteId=13
 2: Nothing to do...
 22: Nothing to do...
 ...

The client will ping the server every 30 seconds (this value may change in the future) to check if the server has any new tasks for the client.

How to Schedule a Testing Task

In order to schedule a testing task in CDash you should execute the following steps:

  • Log in as the administrator of a Dashboard project
  • Go to the CDash page of your account
  • Click on the icon of a Floppy disk with a Gear on top
    • Marked as "Schedule Build"

ITK-testing-on-demand.png


The top of the web interface looks like:

ITK-testing-on-demand-02.png

and the bottom of the same page looks like:

ITK-testsing-on-demand-03.png