Mercurial > hg > mercurial
changeset 859:b1b878449326
TW-37410 ability to get current state without default branch
author | Dmitry Neverov <dmitry.neverov@jetbrains.com> |
---|---|
date | Wed, 13 Aug 2014 11:09:17 +0200 |
parents | 61a373476058 |
children | 206021e7175e |
files | mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/Constants.java mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/HgVcsRoot.java mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCollectChangesPolicy.java |
diffstat | 3 files changed, 16 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/Constants.java Wed Jul 16 16:18:21 2014 +0200 +++ b/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/Constants.java Wed Aug 13 11:09:17 2014 +0200 @@ -36,4 +36,5 @@ String HG_COMMANDLINE_VIA_FILE = "hg.pass.commandline.via.file"; String PURGE_POLICY = "purgePolicy"; String GLOBAL_DETECT_SUBREPO_CHANGES = "teamcity.hg.detectSubrepoChanges"; + String IGNORE_MISSING_DEFAULT_BRANCH = "IGNORE_MISSING_DEFAULT_BRANCH"; }
--- a/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/HgVcsRoot.java Wed Jul 16 16:18:21 2014 +0200 +++ b/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/HgVcsRoot.java Wed Aug 13 11:09:17 2014 +0200 @@ -47,6 +47,7 @@ private final boolean myIncludeSubreposInPatch; private final boolean myUseArchiveForPatch; private final PurgePolicy myPurgePolicy; + private final boolean myIgnoreMissingDefaultBranch; public HgVcsRoot(@NotNull final VcsRoot vcsRoot) { this(vcsRoot.getProperties()); @@ -63,10 +64,10 @@ myAuthSettings = new AuthSettings(getProperty(Constants.USERNAME), getProperty(Constants.PASSWORD)); myDetectSubrepoChanges = Boolean.parseBoolean(getProperty(Constants.DETECT_SUBREPO_CHANGES)); myUseTagsAsBranches = Boolean.parseBoolean(getProperty(Constants.USE_TAGS_AS_BRANCHES)); - String includeSubreposProp = getProperty(Constants.INCLUDE_SUBREPOS_IN_PATCH); - myIncludeSubreposInPatch = includeSubreposProp == null ? true : Boolean.parseBoolean(includeSubreposProp);//true by default + myIncludeSubreposInPatch = Boolean.parseBoolean(getProperty(Constants.INCLUDE_SUBREPOS_IN_PATCH, "true")); myUseArchiveForPatch = Boolean.parseBoolean(getProperty(Constants.USE_ARCHIVE_FOR_PATCH)); myPurgePolicy = readPurgePolicy(vcsRootProperties); + myIgnoreMissingDefaultBranch = Boolean.valueOf(getProperty(Constants.IGNORE_MISSING_DEFAULT_BRANCH, "false")); } @NotNull @@ -184,6 +185,14 @@ } @NotNull + public String getProperty(@NotNull String propertyName, @NotNull String defaultValue) { + String value = myVcsRootProperties.get(propertyName); + if (value != null) + return value; + return defaultValue; + } + + @NotNull public PurgePolicy getPurgePolicy() { return myPurgePolicy; } @@ -193,6 +202,9 @@ return myVcsRootProperties; } + public boolean isIgnoreMissingDefaultBranch() { + return myIgnoreMissingDefaultBranch; + } public static enum PurgePolicy { DONT_RUN,
--- a/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCollectChangesPolicy.java Wed Jul 16 16:18:21 2014 +0200 +++ b/mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialCollectChangesPolicy.java Wed Aug 13 11:09:17 2014 +0200 @@ -68,7 +68,7 @@ }; Map<String, String> revisions = myVcs.syncRepository(hgRoot, new SyncSettings<Map<String, String>>(cmd)); String defaultBranchName = hgRoot.getBranchName(); - if (revisions.get(defaultBranchName) == null) { + if (revisions.get(defaultBranchName) == null && !hgRoot.isIgnoreMissingDefaultBranch()) { throw new VcsException("Cannot find revision of the default branch '" + defaultBranchName + "' of vcs root " + myVcs.describeVcsRoot(root)); }