Sorry you are right, it should be after ctest_update(). What is the reason that ctest_update() is failing for you? Because the submodules don&#39;t exist yet? <div><br></div><div>Does your script do the initial clone?</div>
<div><br></div><div>If so, you&#39;re going to want to do something like:</div><div><br></div><div>if(NOT EXISTS src_dir)</div><div><div>  clone</div><div>  &lt;optionally checkout a branch&gt;</div><div>  submodule init</div>
<div>  submodule update</div><div>endif()</div><div><br></div><div>ctest_update()</div><div><br></div><div>submodule update</div><div><br><br><div class="gmail_quote">On Thu, Apr 22, 2010 at 5:18 PM, Moreland, Kenneth <span dir="ltr">&lt;<a href="mailto:kmorel@sandia.gov">kmorel@sandia.gov</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">



<div>
<font face="Calibri, Verdana, Helvetica, Arial"><span style="font-size:11pt">How will that work?  If I put it before ctest_update, then it will run before the VTK submodule SHA gets updated.  Thus, it my not grab the commit that you actually need.  Or does the submodule update command implicitly fetch everything from the remote regardless of whether it is needed?<br>

<br>
-Ken<div class="im"><br>
<br>
<br>
On 4/22/10 3:02 PM, &quot;Dave Partyka&quot; &lt;<a href="http://dave.partyka@kitware.com" target="_blank">dave.partyka@kitware.com</a>&gt; wrote:<br>
<br>
</div></span></font><blockquote><div class="im"><font face="Calibri, Verdana, Helvetica, Arial"><span style="font-size:11pt">You want to put it before ctest_update is called.<br>
<br>
On Thu, Apr 22, 2010 at 3:40 PM, Moreland, Kenneth &lt;<a href="http://kmorel@sandia.gov" target="_blank">kmorel@sandia.gov</a>&gt; wrote:<br>
</span></font></div><blockquote><font face="Calibri, Verdana, Helvetica, Arial"><span style="font-size:11pt"><div class="im">I tried adding your execute_process after my call to ctest_update, but I don’t think it’s quite working.  The problem is that the submodule update command does not get run until after the ctest_update call returns, and by that time CTest has already determined that the update has failed.<br>

<br>
Where exactly should I be putting the execute_process?<br>
<br>
-Ken<br>
<br>
<br>
<br></div><div class="im">
On 4/20/10 7:07 AM, &quot;Dave Partyka&quot; &lt;<a href="http://dave.partyka@kitware.com" target="_blank">dave.partyka@kitware.com</a> &lt;<a href="http://dave.partyka@kitware.com" target="_blank">http://dave.partyka@kitware.com</a>&gt; &gt; wrote:<br>

<br>
</div></span></font><blockquote><font face="Calibri, Verdana, Helvetica, Arial"><span style="font-size:11pt"><div class="im">You&#39;re going to want to add something like this in your script for initial checkout:<br>
<br>
  execute_process(<br>
    COMMAND \&quot;${CTEST_GIT_COMMAND}\&quot; submodule init<br>
    WORKING_DIRECTORY \&quot;${CTEST_SOURCE_DIRECTORY}\&quot;<br>
    )<br>
<br>
And for each update you&#39;ll want:<br>
<br>
  execute_process(<br>
    COMMAND \&quot;${CTEST_GIT_COMMAND}\&quot; submodule update --recursive --<br>
    WORKING_DIRECTORY \&quot;${CTEST_SOURCE_DIRECTORY}\&quot;<br>
    )<br>
<br>
Also this will be handy:<br>
<br>
# Look for a GIT command-line client.<br>
if(NOT DEFINED CTEST_GIT_COMMAND)<br>
find_program(CTEST_GIT_COMMAND NAMES git git.cmd)<br>
endif()<br>
<br></div><div class="im">
On Mon, Apr 19, 2010 at 7:16 PM, Dave Partyka &lt;<a href="http://dave.partyka@kitware.com" target="_blank">dave.partyka@kitware.com</a> &lt;<a href="http://dave.partyka@kitware.com" target="_blank">http://dave.partyka@kitware.com</a>&gt; &gt; wrote:<br>

</div></span></font><blockquote><font face="Calibri, Verdana, Helvetica, Arial"><span style="font-size:11pt"><div class="im">I do not know if ctest knows how to update submodules automatically. I have it on my todo list to talk to Brad King about this for the same reason for updating the ParaView dashboards here at Kitware. I&#39;ll share what I find out.<br>

<br>
<br></div><div class="im">
On Mon, Apr 19, 2010 at 7:13 PM, Moreland, Kenneth &lt;<a href="http://kmorel@sandia.gov" target="_blank">kmorel@sandia.gov</a> &lt;<a href="http://kmorel@sandia.gov" target="_blank">http://kmorel@sandia.gov</a>&gt; &gt; wrote:<br>

</div></span></font><blockquote><font face="Calibri, Verdana, Helvetica, Arial"><span style="font-size:11pt"><div class="im">Yes.  That seems to fix the problem.  However, is there a way to get ctest to run that after pulling?  Otherwise we’ll still get a bunch of errors in the dashboard.<br>

<br>
-Ken<br>
<br>
<br>
<br></div><div class="im">
On 4/19/10 5:09 PM, &quot;Dave Partyka&quot; &lt;<a href="http://dave.partyka@kitware.com" target="_blank">dave.partyka@kitware.com</a> &lt;<a href="http://dave.partyka@kitware.com" target="_blank">http://dave.partyka@kitware.com</a>&gt;  &lt;<a href="http://dave.partyka@kitware.com" target="_blank">http://dave.partyka@kitware.com</a>&gt; &gt; wrote:<br>

<br>
</div></span></font><blockquote><font face="Calibri, Verdana, Helvetica, Arial"><span style="font-size:11pt"><div class="im">does &#39;git submodule update&#39; help?<br>
<br></div><div class="im">
On Mon, Apr 19, 2010 at 7:02 PM, Moreland, Kenneth &lt;<a href="http://kmorel@sandia.gov" target="_blank">kmorel@sandia.gov</a> &lt;<a href="http://kmorel@sandia.gov" target="_blank">http://kmorel@sandia.gov</a>&gt;  &lt;<a href="http://kmorel@sandia.gov" target="_blank">http://kmorel@sandia.gov</a>&gt; &gt; wrote:<br>

</div></span></font><div class="im"><blockquote><font face="Calibri, Verdana, Helvetica, Arial"><span style="font-size:11pt">I noticed something odd when converting to the new git repositories today.  After only cloning the repository, setting up the modules, and then pulling (using the --rebase flag as described on the Wiki), status reports that I have made a change in my repository even though I have not.  Here is a terminal capture of a newly cloned ParaView repository (after modules and hooks are set up).<br>

<br>
</span></font></blockquote></div></blockquote></blockquote></blockquote></blockquote></blockquote></blockquote><font size="2"><font face="Consolas, Courier New, Courier"><span style="font-size:10pt"><div class="im">kmorel2 0&gt; git status                                /Users/kmorel/src/ParaView<br>

# On branch master<br>
nothing to commit (working directory clean)<br>
kmorel2 1&gt; git pull --rebase                         /Users/kmorel/src/ParaView<br>
remote: Counting objects: 44, done.<br>
remote: Compressing objects: 100% (26/26), done.<br>
remote: Total 26 (delta 20), reused 0 (delta 0)<br>
Unpacking objects: 100% (26/26), done.<br></div>