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, dashboard has been updated via 11006a894ef27738942c08abc300f15906c0e5c9 (commit) via 6ae8f7ee32e6651dee7649d198c28c3a7c3694d7 (commit) from 0130a0f3e753f27bca5c07350a634f2d65f20a06 (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 ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=11006a894ef27738942c08abc300f15906c0e5c9 commit 11006a894ef27738942c08abc300f15906c0e5c9 Author: Brad King <brad.k...@kitware.com> AuthorDate: Wed Mar 1 16:27:15 2017 -0500 Commit: Brad King <brad.k...@kitware.com> CommitDate: Tue Mar 7 08:51:45 2017 -0500 cmake_common: Implement nightly testing for stage-based workflow CMake is moving away from a manually-maintained `next` branch to a model where we maintain a "stage" for each target branch (e.g. `master`) that consists of the target branch plus some set of MRs merged on top of it. The job of this testing script is now to test one of the integration branches or one of their stage branches. Add infrastructure to create or convert the local test repository such that it has tracking branches for each stage branch. Select one to check out and follow for testing. diff --git a/cmake_common.cmake b/cmake_common.cmake index f702043..075920d 100644 --- a/cmake_common.cmake +++ b/cmake_common.cmake @@ -134,13 +134,22 @@ endif() # Select Git source to use. if(NOT DEFINED dashboard_git_url) - set(dashboard_git_url "git://cmake.org/cmake.git") + set(dashboard_git_url "https://gitlab.kitware.com/cmake/cmake.git") endif() if(NOT DEFINED dashboard_git_branch) if("${dashboard_model}" STREQUAL "Nightly") - set(dashboard_git_branch nightly) + set(dashboard_git_branch stage/master/nightly/latest) else() - set(dashboard_git_branch next) + set(dashboard_git_branch stage/master/head) + endif() +else() + # map values from outdated client scripts + if(dashboard_git_branch STREQUAL "nightly-master") + set(dashboard_git_branch follow/master/nightly) + elseif(dashboard_git_branch STREQUAL "nightly") + set(dashboard_git_branch stage/master/nightly/latest) + elseif(dashboard_git_branch STREQUAL "next") + set(dashboard_git_branch stage/master/head) endif() endif() if(NOT DEFINED dashboard_git_crlf) @@ -180,6 +189,18 @@ if(NOT DEFINED CTEST_BINARY_DIRECTORY) endif() endif() +macro(dashboard_git) + execute_process( + COMMAND ${CTEST_GIT_COMMAND} ${ARGN} + WORKING_DIRECTORY "${CTEST_SOURCE_DIRECTORY}" + OUTPUT_VARIABLE dashboard_git_output + ERROR_VARIABLE dashboard_git_output + RESULT_VARIABLE dashboard_git_failed + OUTPUT_STRIP_TRAILING_WHITESPACE + ERROR_STRIP_TRAILING_WHITESPACE + ) +endmacro() + # Delete source tree if it is incompatible with current VCS. if(EXISTS ${CTEST_SOURCE_DIRECTORY}) if(NOT EXISTS "${CTEST_SOURCE_DIRECTORY}/.git") @@ -202,6 +223,13 @@ if(EXISTS ${CTEST_SOURCE_DIRECTORY}) endif() endif() +# Upstream non-head refs to treat like branches. +set(dashboard_git_extra_branches + stage/master/head # topics staged on master continuously + stage/master/nightly/latest # updated nightly to stage/master/head + follow/master/nightly # updated nightly to master + ) + # Support initial checkout if necessary. if(NOT EXISTS "${CTEST_SOURCE_DIRECTORY}" AND NOT DEFINED CTEST_CHECKOUT_COMMAND) @@ -210,7 +238,7 @@ if(NOT EXISTS "${CTEST_SOURCE_DIRECTORY}" set(ctest_checkout_script ${CTEST_DASHBOARD_ROOT}/${_name}-init.cmake) file(WRITE ${ctest_checkout_script} "# git repo init script for ${_name} execute_process( - COMMAND \"${CTEST_GIT_COMMAND}\" clone -n -b ${dashboard_git_branch} -- \"${dashboard_git_url}\" + COMMAND \"${CTEST_GIT_COMMAND}\" clone -n -- \"${dashboard_git_url}\" \"${CTEST_SOURCE_DIRECTORY}\" ) if(EXISTS \"${CTEST_SOURCE_DIRECTORY}/.git\") @@ -218,13 +246,75 @@ if(EXISTS \"${CTEST_SOURCE_DIRECTORY}/.git\") COMMAND \"${CTEST_GIT_COMMAND}\" config core.autocrlf ${dashboard_git_crlf} WORKING_DIRECTORY \"${CTEST_SOURCE_DIRECTORY}\" ) + foreach(b ${dashboard_git_extra_branches}) + execute_process( + COMMAND \"${CTEST_GIT_COMMAND}\" config --add remote.origin.fetch +refs/\${b}:refs/remotes/origin/\${b} + WORKING_DIRECTORY \"${CTEST_SOURCE_DIRECTORY}\" + ) + endforeach() execute_process( - COMMAND \"${CTEST_GIT_COMMAND}\" checkout + COMMAND \"${CTEST_GIT_COMMAND}\" fetch + WORKING_DIRECTORY \"${CTEST_SOURCE_DIRECTORY}\" + ) + foreach(b ${dashboard_git_extra_branches}) + execute_process( + COMMAND \"${CTEST_GIT_COMMAND}\" branch \${b} origin/\${b} + WORKING_DIRECTORY \"${CTEST_SOURCE_DIRECTORY}\" + ) + execute_process( + COMMAND \"${CTEST_GIT_COMMAND}\" config branch.\${b}.remote origin + WORKING_DIRECTORY \"${CTEST_SOURCE_DIRECTORY}\" + ) + execute_process( + COMMAND \"${CTEST_GIT_COMMAND}\" config branch.\${b}.merge refs/\${b} + WORKING_DIRECTORY \"${CTEST_SOURCE_DIRECTORY}\" + ) + endforeach() + execute_process( + COMMAND \"${CTEST_GIT_COMMAND}\" checkout ${dashboard_git_branch} WORKING_DIRECTORY \"${CTEST_SOURCE_DIRECTORY}\" ) endif() ") set(CTEST_CHECKOUT_COMMAND "\"${CMAKE_COMMAND}\" -P \"${ctest_checkout_script}\"") +elseif(EXISTS "${CTEST_SOURCE_DIRECTORY}/.git") + # Upstream URL. + dashboard_git(config --get remote.origin.url) + if(NOT dashboard_git_output STREQUAL "${dashboard_git_url}") + dashboard_git(config remote.origin.url "${dashboard_git_url}") + endif() + + # Local refs for remote branches. + set(added_branches 0) + foreach(b ${dashboard_git_extra_branches}) + dashboard_git(rev-parse --verify -q refs/remotes/origin/${b}) + if(dashboard_git_failed) + dashboard_git(config --add remote.origin.fetch +refs/${b}:refs/remotes/origin/${b}) + set(added_branches 1) + endif() + endforeach() + if(added_branches) + dashboard_git(fetch origin) + endif() + + # Local branches. + foreach(b ${dashboard_git_extra_branches}) + dashboard_git(rev-parse --verify -q refs/heads/${b}) + if(dashboard_git_failed) + dashboard_git(branch ${b} origin/${b}) + dashboard_git(config branch.${b}.remote origin) + dashboard_git(config branch.${b}.merge refs/${b}) + endif() + endforeach() + + # Local checkout. + dashboard_git(symbolic-ref HEAD) + if(NOT dashboard_git_output STREQUAL "${dashboard_git_branch}") + dashboard_git(checkout ${dashboard_git_branch}) + if(dashboard_git_failed) + message(FATAL_ERROR "Failed to checkout branch ${dashboard_git_branch}:\n${dashboard_git_output}") + endif() + endif() endif() # Enable bootstrap build? https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=6ae8f7ee32e6651dee7649d198c28c3a7c3694d7 commit 6ae8f7ee32e6651dee7649d198c28c3a7c3694d7 Author: Brad King <brad.k...@kitware.com> AuthorDate: Wed Mar 1 16:20:20 2017 -0500 Commit: Brad King <brad.k...@kitware.com> CommitDate: Tue Mar 7 08:51:43 2017 -0500 cmake_common: Drop support for Git < 1.6.5 diff --git a/cmake_common.cmake b/cmake_common.cmake index 9ed0ccf..f702043 100644 --- a/cmake_common.cmake +++ b/cmake_common.cmake @@ -205,24 +205,12 @@ endif() # Support initial checkout if necessary. if(NOT EXISTS "${CTEST_SOURCE_DIRECTORY}" AND NOT DEFINED CTEST_CHECKOUT_COMMAND) - get_filename_component(_name "${CTEST_SOURCE_DIRECTORY}" NAME) - execute_process(COMMAND ${CTEST_GIT_COMMAND} --version OUTPUT_VARIABLE output) - string(REGEX MATCH "[0-9]+\\.[0-9]+\\.[0-9]+(\\.[0-9]+(\\.g[0-9a-f]+)?)?" GIT_VERSION "${output}") - if(NOT "${GIT_VERSION}" VERSION_LESS "1.6.5") - # Have "git clone -b <branch>" option. - set(git_branch_new "-b ${dashboard_git_branch}") - set(git_branch_old) - else() - # No "git clone -b <branch>" option. - set(git_branch_new) - set(git_branch_old "-b ${dashboard_git_branch} origin/${dashboard_git_branch}") - endif() - # Generate an initial checkout script. + get_filename_component(_name "${CTEST_SOURCE_DIRECTORY}" NAME) set(ctest_checkout_script ${CTEST_DASHBOARD_ROOT}/${_name}-init.cmake) file(WRITE ${ctest_checkout_script} "# git repo init script for ${_name} execute_process( - COMMAND \"${CTEST_GIT_COMMAND}\" clone -n ${git_branch_new} -- \"${dashboard_git_url}\" + COMMAND \"${CTEST_GIT_COMMAND}\" clone -n -b ${dashboard_git_branch} -- \"${dashboard_git_url}\" \"${CTEST_SOURCE_DIRECTORY}\" ) if(EXISTS \"${CTEST_SOURCE_DIRECTORY}/.git\") @@ -231,7 +219,7 @@ if(EXISTS \"${CTEST_SOURCE_DIRECTORY}/.git\") WORKING_DIRECTORY \"${CTEST_SOURCE_DIRECTORY}\" ) execute_process( - COMMAND \"${CTEST_GIT_COMMAND}\" checkout ${git_branch_old} + COMMAND \"${CTEST_GIT_COMMAND}\" checkout WORKING_DIRECTORY \"${CTEST_SOURCE_DIRECTORY}\" ) endif() ----------------------------------------------------------------------- Summary of changes: cmake_common.cmake | 114 +++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 96 insertions(+), 18 deletions(-) hooks/post-receive -- CMake _______________________________________________ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/mailman/listinfo/cmake-commits