This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, next has been updated
       via  e747ad5a36b6dfb22cf2a02c3b2e66a4ef668d1f (commit)
       via  118f741c495be8e244ad7d021623907d450d63ee (commit)
      from  c34b9f01eee582d32ee12d75d81d3a477c5bffac (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e747ad5a36b6dfb22cf2a02c3b2e66a4ef668d1f
commit e747ad5a36b6dfb22cf2a02c3b2e66a4ef668d1f
Merge: c34b9f0 118f741
Author:     Brad King <brad.k...@kitware.com>
AuthorDate: Tue Mar 26 10:33:23 2013 -0400
Commit:     CMake Topic Stage <kwro...@kitware.com>
CommitDate: Tue Mar 26 10:33:23 2013 -0400

    Merge topic 'ep_retry_clone' into next
    
    118f741 ExternalProject: Retry on a failed git clone


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=118f741c495be8e244ad7d021623907d450d63ee
commit 118f741c495be8e244ad7d021623907d450d63ee
Author:     Bill Hoffman <bill.hoff...@kitware.com>
AuthorDate: Wed Mar 20 17:54:49 2013 -0400
Commit:     Brad King <brad.k...@kitware.com>
CommitDate: Tue Mar 26 10:31:39 2013 -0400

    ExternalProject: Retry on a failed git clone
    
    Git sometimes fails to clone repositories due to network outage or
    server load.  Try 3 times before giving up.

diff --git a/Modules/ExternalProject.cmake b/Modules/ExternalProject.cmake
index bf2892b..40e14d5 100644
--- a/Modules/ExternalProject.cmake
+++ b/Modules/ExternalProject.cmake
@@ -287,11 +287,21 @@ if(error_code)
   message(FATAL_ERROR \"Failed to remove directory: '${source_dir}'\")
 endif()
 
-execute_process(
-  COMMAND \"${git_EXECUTABLE}\" clone \"${git_repository}\" \"${src_name}\"
-  WORKING_DIRECTORY \"${work_dir}\"
-  RESULT_VARIABLE error_code
-  )
+# try the clone 3 times incase there is an odd git clone issue
+set(error_code 1)
+set(number_of_tries 0)
+while(error_code AND number_of_tries LESS 3)
+  execute_process(
+    COMMAND \"${git_EXECUTABLE}\" clone \"${git_repository}\" \"${src_name}\"
+    WORKING_DIRECTORY \"${work_dir}\"
+    RESULT_VARIABLE error_code
+    )
+  math(EXPR number_of_tries \"\${number_of_tries} + 1\")
+endwhile()
+if(number_of_tries GREATER 1)
+  message(STATUS \"Had to git clone more than once:
+          \${number_of_tries} times.\")
+endif()
 if(error_code)
   message(FATAL_ERROR \"Failed to clone repository: '${git_repository}'\")
 endif()

-----------------------------------------------------------------------

Summary of changes:


hooks/post-receive
-- 
CMake
_______________________________________________
Cmake-commits mailing list
Cmake-commits@cmake.org
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-commits

Reply via email to