[CMake] using svn credentials inside ctest script

Tyler Roscoe tyler at cryptio.net
Thu Jan 27 11:42:52 EST 2011


On Thu, Jan 27, 2011 at 08:40:14AM -0800, Tyler Roscoe wrote:
> On Thu, Jan 27, 2011 at 04:11:35AM -0800, girish hilage wrote:
> >    find_program(CTEST_SVN_COMMAND NAMES svn)
> >    set(CTEST_UPDATE_COMMAND "${CTEST_SVN_COMMAND}")
> >    set(CTEST_UPDATE_OPTIONS "--username <my_svn_username> --password <my_svn_password>")
> > 
> >    ctest_update(RETURN_VALUE updateRV)
> > 
> >    But, when I give 'ctest -S script.cmake', it again asks for the svn password eventhough I have hard-coded svn username and password in script.cmake.
> >    My requirement is that, I am setting up a cronjob for nightly builds and I do not want it to ask for an svn password.
> > 
> >    In the output I can see following lines :
> > SetCTestConfigurationFromCMakeVariable:UpdateCommand:CTEST_UPDATE_COMMANDSetCTestConfiguration:UpdateCommand:/usr/bin/svn
> > SetCTestConfigurationFromCMakeVariable:UpdateOptions:CTEST_UPDATE_OPTIONSSetCTestConfiguration:UpdateOptions:--username <my_svn_username> --password <my_svn_password>
> > SetCTestConfigurationFromCMakeVariable:SVNCommand:CTEST_SVN_COMMANDSetCTestConfiguration:SVNCommand:/usr/bin/svn
> 
> Your code looks reasonable to me. Have you tried sticking the OPTIONS
> directly into CTEST_UPDATE_COMMAND?
> 
> You could also let Subversion handle the username/password; it will
> cache them if ask it to. The advantage is that you don't have to
> hardcode passwords into your build scripts. The disadvantage is this is
> something you'll need to take care of for all machines/accounts that do
> automated builds.

One other thing that I had to discover myself and which I haven't
noticed in any CTest documentation:

# 'update' and '--non-interactive' are automatically added to
# CTEST_UPDATE_COMMAND by CTest.

So maybe --non-interactive is interfering with --username/--password? It
shouldn't but it's another thing to test.

tyler


More information about the CMake mailing list