View Issue Details Jump to Notes ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0013024CMakeCTestpublic2012-03-07 10:222013-03-04 08:38
ReporterNils Gladitz 
Assigned ToBrad King 
PrioritynormalSeveritymajorReproducibilityalways
StatusclosedResolutionfixed 
PlatformOSOS Version
Product VersionCMake 2.8.7 
Target VersionCMake 2.8.10Fixed in VersionCMake 2.8.10 
Summary0013024: some ctest svn calls may hang waiting for user input
DescriptionThe certificate (https) on our svn server was replaced and no longer trusted on some of the cdash build clients resulting in ctest svn calls asking for user input.

The call to "svn update" passes "--non-interactive" maybe this should be passed to all svn commands issued by ctest.

The specific command that was hanging for me was "svn log --xml [...]".

If possible I'd also like to optionally add --trust-server-cert to all svn invocations.
TagsNo tags attached.
Attached Filespatch file icon 0001-ctest-without-interactive-svn.patch [^] (7,140 bytes) 2012-09-23 13:59 [Show Content]

 Relationships
related to 0012304closedBrad King FindSubversion.cmake macro Subversion_WC_LOG hangs if credentials are not set. 

  Notes
(0028855)
Brad King (manager)
2012-03-07 10:54

Some cases of this were fixed in CMake 2.8.5 by:

 http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3a5a402a [^]

and other cases in CMake 2.8.6 by:

  http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0c6e8524 [^]
(0028856)
Brad King (manager)
2012-03-07 11:00

I think --trust-server-cert was introduced in Subversion 1.6:

  http://subversion.apache.org/docs/release-notes/1.6.html#cmdline [^]

but if support were added it would be optional anyway.
(0028857)
Brad King (manager)
2012-03-07 11:07

If anyone has time to work on a patch for this look in

  Source/CTest/cmCTestSVN.cxx

for all the blocks of code that start with

  const char* svn = this->CommandLineTool.c_str();

Convert the local argument arrays to std::vector as is done for some other invocations. Then always add --non-interactive and optionally add --trust-server-cert.

As far as how to make the trust optional, look at

  Source/CTest/cmCTestUpdateCommand.cxx

to set ctest config option SVNOptions in addition to SVNUpdateOptions. Then look for that in cmCTestSVN methods using this->CTest->GetCTestConfiguration(...).
(0028858)
Brad King (manager)
2012-03-07 11:08

Meanwhile, this is probably possible to work around on platforms supporting shell scripts by wrapping svn up in a script such as:

 #!/usr/bin/env bash
 exec svn --non-interactive --trust-server-cert "$@"
(0031089)
Nils Gladitz (developer)
2012-09-23 14:02

I've attached a patch which I hope fixes this issue.
Thanks for the detailed instructions!
(0031091)
Brad King (manager)
2012-09-24 09:08

Re 0013024:0031089: Thanks! Applied with minor style tweaks:

 http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=aeb13c1d [^]
(0031093)
David Cole (manager)
2012-09-24 10:26

Don't we also need:
SVNOptions: @CTEST_SVN_OPTIONS@

in DartConfiguration.tcl.in?

For this change to be complete, and to work with "ctest -D Experimental" I think this mapping needs to be in that file, too.
(0031095)
Brad King (manager)
2012-09-24 11:31

Re 0013024:0031093: Yes, thanks. I squashed that in:

 http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9c70ed0c [^]
(0031102)
Brad King (manager)
2012-09-25 13:38

Our nightly builds failed on VS 6 with error

 Source\CTest\cmCTestSVN.cxx(319) : error C2039: 'size_t' : is not a member of 'std'

I squashed in a fix to switch to iterators to traverse the vector:

 http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9ace8015 [^]
(0032459)
Robert Maynard (manager)
2013-03-04 08:38

Closing resolved issues that have not been updated in more than 4 months.

 Issue History
Date Modified Username Field Change
2012-03-07 10:22 Nils Gladitz New Issue
2012-03-07 10:53 Brad King Relationship added related to 0012304
2012-03-07 10:54 Brad King Note Added: 0028855
2012-03-07 11:00 Brad King Note Added: 0028856
2012-03-07 11:07 Brad King Note Added: 0028857
2012-03-07 11:07 Brad King Status new => backlog
2012-03-07 11:08 Brad King Note Added: 0028858
2012-09-23 13:59 Nils Gladitz File Added: 0001-ctest-without-interactive-svn.patch
2012-09-23 14:02 Nils Gladitz Note Added: 0031089
2012-09-24 09:08 Brad King Note Added: 0031091
2012-09-24 09:08 Brad King Assigned To => Brad King
2012-09-24 09:08 Brad King Status backlog => resolved
2012-09-24 09:08 Brad King Resolution open => fixed
2012-09-24 09:08 Brad King Fixed in Version => CMake 2.8.10
2012-09-24 09:08 Brad King Target Version => CMake 2.8.10
2012-09-24 10:26 David Cole Note Added: 0031093
2012-09-24 11:31 Brad King Note Added: 0031095
2012-09-25 13:38 Brad King Note Added: 0031102
2013-03-04 08:38 Robert Maynard Note Added: 0032459
2013-03-04 08:38 Robert Maynard Status resolved => closed


Copyright © 2000 - 2018 MantisBT Team