The devil is always in the little details. That does the trick nicely, thanks!

Tim

----- Original Message -----
From: "David Cole" <david.c...@kitware.com>
To: gtg0...@mail.gatech.edu
Cc: cmake@cmake.org
Sent: Friday, January 13, 2012 2:37:29 PM
Subject: Re: [CMake] CTest continuous testing

See the cmake_common.cmake script (as seen here on a CMake Continuous
dashboard, and in other places):

  http://cdash.org/CDash/viewNotes.php?buildid=1911520

Notice that it does:

  ctest_update(RETURN_VALUE count)

and then checks whether count is > 0 or not. It only does stuff if
count > 0 or it's the first time, or it's not a continuous
dashboard...

You need logic like that, and do not execute the configure/build/test
steps when nothing came back from the update...


HTH,
David


On Fri, Jan 13, 2012 at 2:11 PM, Tim Gallagher <tim.gallag...@gatech.edu> wrote:
> Hi,
>
> We have a test case suite setup to run in continuous mode and submit to 
> CDash. I followed instructions on the wiki 
> (http://www.cmake.org/Wiki/CMake_Scripting_Of_CTest#Continuous_Builds_.28new_Style.29)
>  and have a script that's below the signature.
>
> I was under the impression that continuous testing would run once when it 
> started each run, then sleep and check for changed files and if nothing 
> changed, go back to sleep and wait again, then check again, etc.. And if 
> files did change and ctest_update() pulled in new code, the tests would run 
> again.
>
> However, the behavior I am getting is that the entire test suite is run every 
> 5 minutes for the entire continuous run time, even though no files are being 
> updated. Some of the tests are failing, if that makes a difference.
>
> Was I mistaken on how it works? Or did I miss a step somewhere? Thanks,
>
> Tim
>
> ---------------------------------------
> while(${CTEST_ELAPSED_TIME} LESS 43200)
>  set(START_TIME ${CTEST_ELAPSED_TIME})
>
>  ctest_start("Continuous")
>  ctest_update()
>  # Copy over the files we need
>  configure_file(${CTEST_REPO_DIRECTORY}/CTest/CTestCustom.cmake
>    ${CTEST_REPO_DIRECTORY}/CTestCustom.cmake @ONLY)
>  configure_file(${CTEST_REPO_DIRECTORY}/CTest/CTestTestfile.cmake
>    ${CTEST_REPO_DIRECTORY}/CTestTestfile.cmake @ONLY)
>  configure_file(${CTEST_REPO_DIRECTORY}/CTest/CTestAvailableTests.cmake
>    ${CTEST_REPO_DIRECTORY}/CTestAvailableTests.cmake @ONLY)
>  configure_file(${CTEST_REPO_DIRECTORY}/CTest/runPythonTest.sh.in
>    ${CTEST_REPO_DIRECTORY}/runPythonTest.sh @ONLY)
>
>  include(${CTEST_REPO_DIRECTORY}/CTestAvailableTests.cmake)
>
>  foreach(TESTCASE ${LESLIE_AVAILABLE_TESTCASES})
>    set(CTEST_CONFIGURE_COMMAND "./setup.py -t ${TESTCASE} 
> '{${LESLIE_CONFIGURE_DICT_BASE}}'")
>    ctest_configure(BUILD "${CTEST_REPO_DIRECTORY}" APPEND)
>    set(CTEST_BUILD_COMMAND "./setup.py -t ${TESTCASE} 
> '{${LESLIE_BUILD_DICT_BASE}}'")
>    ctest_build(BUILD "${CTEST_REPO_DIRECTORY}" APPEND)
>  endforeach()
>
>  list(LENGTH LESLIE_CUSTOM_TESTCASE_BASE len1)
>  math(EXPR len2 "${len1} - 1")
>
>  foreach(value RANGE ${len2})
>    list(GET LESLIE_CUSTOM_TESTCASE_BASE ${value} TESTCASE_BASE)
>    list(GET LESLIE_CUSTOM_TESTCASE_CONFIG_DICT ${value} TESTCASE_CONFIG)
>    list(GET LESLIE_CUSTOM_TESTCASE_BUILD_DICT ${value} TESTCASE_BUILD)
>
>    set(CTEST_CONFIGURE_COMMAND "./setup.py -t ${TESTCASE_BASE} 
> ${TESTCASE_CONFIG}")
>    ctest_configure(BUILD "${CTEST_REPO_DIRECTORY}" APPEND)
>    set(CTEST_BUILD_COMMAND "./setup.py -t ${TESTCASE_BASE} ${TESTCASE_BUILD}")
>    ctest_build(BUILD "${CTEST_REPO_DIRECTORY}" APPEND)
>  endforeach()
>
>  ctest_test(BUILD "${CTEST_REPO_DIRECTORY}")
>  ctest_submit()
>
>  ctest_sleep(${START_TIME} 300 ${CTEST_ELAPSED_TIME})
> endwhile()
>
>
>
> --
>
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at 
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the CMake FAQ at: 
> http://www.cmake.org/Wiki/CMake_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.cmake.org/mailman/listinfo/cmake
--

Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to