Mercurial > hg > mercurial
changeset 307:659287a241c2
Improve logging
author | Dmitry Neverov <dmitry.neverov@jetbrains.com> |
---|---|
date | Tue, 13 Sep 2011 13:19:01 +0400 |
parents | 844986ea478d |
children | 63a69ed16c88 |
files | mercurial-agent/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialIncludeRuleUpdater.java |
diffstat | 1 files changed, 17 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial-agent/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialIncludeRuleUpdater.java Fri Sep 09 12:05:23 2011 +0400 +++ b/mercurial-agent/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialIncludeRuleUpdater.java Tue Sep 13 13:19:01 2011 +0400 @@ -147,7 +147,7 @@ if (subrepositoriesWithChangedUrls.isEmpty()) { doUpdateWorkingDir(workingDir); } else { - myLogger.warning("URLs of subrepositories were changed, do clean checkout"); + logSubrepositoriesUrlsChanged(workingDirRevision, myToVersion, subrepositoriesWithChangedUrls); FileUtil.delete(workingDir); updateRepository(workingDir); doUpdateWorkingDir(workingDir); @@ -157,6 +157,22 @@ } + private void logSubrepositoriesUrlsChanged(@NotNull final String fromVersion, + @NotNull final String toVersion, + @NotNull final Map<String, Pair<String, String>> subrepositoriesWithChangedUrls) { + StringBuilder sb = new StringBuilder(); + sb.append("Subrepositories' URLs were changed between revisions ").append(fromVersion).append("..").append(toVersion).append(":\n"); + for (Map.Entry<String, Pair<String, String>> entry : subrepositoriesWithChangedUrls.entrySet()) { + String path = entry.getKey(); + String oldUrl = entry.getValue().first; + String newUrl = entry.getValue().second; + sb.append("path: \"").append(path).append("\", old URL: \"").append(oldUrl).append("\", new URL: \"").append(newUrl).append("\";\n"); + } + sb.append("do clean checkout."); + myLogger.warning(sb.toString()); + } + + /*returns map: relative path -> (repository url, repository revision)*/ private Map<String, Pair<String, String>> getSubrepositories(@NotNull final File workingDir, @NotNull final String revision) throws VcsException, IOException { CatCommand cc = new CatCommand(mySettings, workingDir);