[CMake] Strange behavior with Nightly builds

David Cole david.cole at kitware.com
Thu Jun 14 09:05:57 EDT 2012


On Thu, Jun 14, 2012 at 3:07 AM, NoRulez <norulez at me.com> wrote:

> I think i fond the problem, but I don't know how to solve it.
>
> I have the following defined in the CTestScript.cmake:
> if(${NEED_REPOSITORY_CHECKOUT})
>     set(CTEST_CHECKOUT_COMMAND "${CTEST_UPDATE_COMMAND} co
> ${REPOSITORY_URL} \"${CTEST_SOURCE_DIRECTORY}\" -r HEAD")
> else()
>     set(CTEST_CHECKOUT_COMMAND "${CTEST_UPDATE_COMMAND} update")
> endif()
>


The CTEST_CHECKOUT_COMMAND should only be used for checkout. It should not
be used for update.



>
>
> which seems to be correct, but in CDash the update command looks like:
> *Update Command: *"C:/Program Files/Subversion/bin/svn.exe" "update"
> "--non-interactive" "-r{2012-06-12 23:00:00 +0000}"
>


This comes from the ctest_update command, and it intentionally uses the
nightly date stamp to guarantee a consistent snapshot across clients.
Otherwise, you could get different source trees on different machines
depending on the timing of running the ctest_update command.



>
> From the svn documentation:
>  If no revision is given, bring working copy up-to-date with HEAD rev.
>  Else synchronize working copy to revision given by -r.
>
> So, how could I remove the last command line argument ("-r{2012-06-12
> 23:00:00 +0000}")?
>
>
> Thanks in advance
>
> Best Regards
>
>
>
> Am 06. Jun 2012 um 23:31 schrieb Richard Wackerbarth <richard at NFSNet.org>:
>
>
> > NoRulez,
>
> A better question is "Why was revision 8 not included in the nightly run?"
> Using one source tree for both continuous and nightly assumes that there
> will be no continuous runs between the last update incorporated in the
> nightly run and the time at which the nightly run is performed. It appears
> that you are not suspending continuous runs between the nightly epoch and
> the time that you perform the nightly run.
>
> By following Stefan's scheme of two complete trees, each tree meets the
> above criteria because the nightly version never does continuous runs and
> the continuous version never does nightly runs.
>
> On Jun 6, 2012, at 3:49 PM, Stefan Reuschl wrote:
>
> > Am 06.06.2012, 08:57 Uhr, schrieb NoRulez <norulez at me.com>:
> >
> >> Hello,
> >>
> >> here is the build process of the build server:
> >>
> >> 1.) e.g.: last commit at 03:00 pm (svn revision 8) => build is ok
> >> 2.) The nightly build starts at 10:00 pm (svn revision 7) => build is ok
> >> Why is the svn revision before the last commit, it should be 8?
> >> 3.) In the morning (~ 06:00 am) a continuous build is triggered (SVN
> revision 8) => build is ok
> >> Why is this continuous build triggered?
> >>
> >> The folder structure for the project on the build server is the
> following:
> >> 
> >> MyProject
> >> |
> >> +----build
> >> |
> >> +----source
> >>
> >> In the CTestScript.cmake if have the following:
> >>
> >> if(MODEL STREQUAL "Nightly")
> >> file(REMOVE_RECURSE "${CTEST_BINARY_DIRECTORY}")
> >> set(CTEST_START_WITH_EMPTY_BINARY_DIRECTORY TRUE)
> >> endif()
> >>
> >> According to my understanding the build directory should be removed and
> newly created.
> >> But I don't know why the revisions are changed during the nightly build.
> >
> > That's because the svn update for both Nightly and Continuous are done on
> > the common source tree.
> > The solution is to have independent source trees:
> >
> > MyProject
> > |
> > +----Continuous
> > | |
> > | +----build
> > | |
> > | +----source
> > |
> > +----Nightly
> > | |
> > | +----build
> > | |
> > | +----source
> >
> > Regards,
> > Stefan
> > --
> >
> > 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
>
>
>
> --
>
> 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
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20120614/7dc5f5a1/attachment-0001.htm>


More information about the CMake mailing list