Mercurial > hg > mercurial
changeset 850:67753eb68a09 Gaya-8.1.x
Don't build a clean patch if incremental patch fails
Before building a clean patch the unmapped '' path was removed. As a
result if build has several root we lost all sources of all roots
where patch was already built. Instead of removing a mapped root path,
throw a error immediately. If there will be some common errors in
which we should recover inside hg-plugin by building a clean patch, we
will add such a logic later.
author | Dmitry Neverov <dmitry.neverov@gmail.com> |
---|---|
date | Wed, 02 Jul 2014 18:39:37 +0200 |
parents | 46eee4b37e58 |
children | fcc2a5bf4238 |
files | mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialVcsSupport.java mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialVcsSupportTest.java |
diffstat | 2 files changed, 5 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialVcsSupport.java Tue Jun 17 22:30:00 2014 +0200 +++ b/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialVcsSupport.java Wed Jul 02 18:39:37 2014 +0200 @@ -248,10 +248,9 @@ if (root.includeSubreposInPatch()) buildSubrepoPatch(root, fromVer, toVer, builder, checkoutRules, repo); } catch (Exception e) { - Loggers.VCS.warn("Cannot build an incremental patch in repository " + root.getRepository() + - " from revision " + fromVer.getId() + " to revision " + toVer.getId(), e); - builder.deleteDirectory(new File(""), true);//clean patch - buildFullPatch(root, toVer, builder, checkoutRules); + if (e instanceof VcsException) + throw (VcsException) e; + throw new VcsException("Error while building an incremental patch", e); } finally { deleteDir(parentDir, Loggers.VCS); }
--- a/mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialVcsSupportTest.java Tue Jun 17 22:30:00 2014 +0200 +++ b/mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialVcsSupportTest.java Wed Jul 02 18:39:37 2014 +0200 @@ -352,6 +352,8 @@ buildPatch(myVcs, root, null, "51677e03dc19", CheckoutRules.DEFAULT); + if (SystemInfo.isUnix) + return;//incremental patch on unix fails, because it cannot create a file in unicode buildPatch(myVcs, root, "54044489d391", "51677e03dc19", CheckoutRules.DEFAULT); }