annotate mercurial-server/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/ServerPluginConfigImpl.java @ 893:1558f8257474

gather progress only if command reports it
author Dmitry Neverov <dmitry.neverov@jetbrains.com>
date Fri, 07 Nov 2014 16:05:09 +0100
parents 3d700493d033
children d26bf03be294
rev   line source
732
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 671
diff changeset
1 /*
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 671
diff changeset
2 * Copyright 2000-2014 JetBrains s.r.o.
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 671
diff changeset
3 *
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 671
diff changeset
4 * Licensed under the Apache License, Version 2.0 (the "License");
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 671
diff changeset
5 * you may not use this file except in compliance with the License.
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 671
diff changeset
6 * You may obtain a copy of the License at
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 671
diff changeset
7 *
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 671
diff changeset
8 * http://www.apache.org/licenses/LICENSE-2.0
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 671
diff changeset
9 *
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 671
diff changeset
10 * Unless required by applicable law or agreed to in writing, software
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 671
diff changeset
11 * distributed under the License is distributed on an "AS IS" BASIS,
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 671
diff changeset
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 671
diff changeset
13 * See the License for the specific language governing permissions and
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 671
diff changeset
14 * limitations under the License.
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 671
diff changeset
15 */
31a1aca3305c Update copyright
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 671
diff changeset
16
256
73708ca4521f Add ability to disable pull protocol
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
17 package jetbrains.buildServer.buildTriggers.vcs.mercurial;
73708ca4521f Add ability to disable pull protocol
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
18
456
f9bf9ec48347 Option to force use of revsets for some vcs root
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 442
diff changeset
19 import com.intellij.openapi.diagnostic.Logger;
865
3d700493d033 Ability to profile hg pull on server
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 732
diff changeset
20 import jetbrains.buildServer.buildTriggers.vcs.mercurial.command.HgVcsRoot;
514
89e9c06fbc76 Move TeamCity-specific logic to separate module
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 511
diff changeset
21 import jetbrains.buildServer.serverSide.CachePaths;
256
73708ca4521f Add ability to disable pull protocol
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
22 import jetbrains.buildServer.serverSide.TeamCityProperties;
579
da75e774d237 Clean mirrors on the server relying on last used time
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 578
diff changeset
23 import jetbrains.buildServer.util.Dates;
309
33305b2022c2 Take caches and plugin data dirs from PluginConfig
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 280
diff changeset
24 import org.jetbrains.annotations.NotNull;
280
8c1fd2e565ae Implement mercurial detection on the agents
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 256
diff changeset
25 import org.jetbrains.annotations.Nullable;
581
d693048e77ae Schedule cleanup by cron
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 579
diff changeset
26 import org.quartz.CronExpression;
256
73708ca4521f Add ability to disable pull protocol
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
27
309
33305b2022c2 Take caches and plugin data dirs from PluginConfig
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 280
diff changeset
28 import java.io.File;
581
d693048e77ae Schedule cleanup by cron
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 579
diff changeset
29 import java.text.ParseException;
d693048e77ae Schedule cleanup by cron
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 579
diff changeset
30
d693048e77ae Schedule cleanup by cron
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 579
diff changeset
31 import static com.intellij.openapi.util.text.StringUtil.isEmpty;
256
73708ca4521f Add ability to disable pull protocol
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
32
73708ca4521f Add ability to disable pull protocol
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
33 /**
73708ca4521f Add ability to disable pull protocol
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
34 * @author dmitry.neverov
73708ca4521f Add ability to disable pull protocol
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
35 */
329
ef091b782acc Add ability to specify timeout for pull operation (teamcity.hg.pull.timeout.seconds)
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 256
diff changeset
36 public class ServerPluginConfigImpl implements ServerPluginConfig {
ef091b782acc Add ability to specify timeout for pull operation (teamcity.hg.pull.timeout.seconds)
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 256
diff changeset
37
456
f9bf9ec48347 Option to force use of revsets for some vcs root
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 442
diff changeset
38 private static final Logger LOG = Logger.getInstance(ServerPluginConfigImpl.class.getName());
329
ef091b782acc Add ability to specify timeout for pull operation (teamcity.hg.pull.timeout.seconds)
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 256
diff changeset
39 private static final String PULL_TIMEOUT_SECONDS = "teamcity.hg.pull.timeout.seconds";
330
dd55596a5753 Add ability to specify timeout for pull operation (teamcity.hg.pull.timeout.seconds)
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
40 public static final int DEFAULT_PULL_TIMEOUT_SECONDS = 3600;
dd55596a5753 Add ability to specify timeout for pull operation (teamcity.hg.pull.timeout.seconds)
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
41
309
33305b2022c2 Take caches and plugin data dirs from PluginConfig
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 280
diff changeset
42 private final File myCachesDir;
33305b2022c2 Take caches and plugin data dirs from PluginConfig
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 280
diff changeset
43
514
89e9c06fbc76 Move TeamCity-specific logic to separate module
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 511
diff changeset
44 public ServerPluginConfigImpl(@NotNull final CachePaths paths) {
89e9c06fbc76 Move TeamCity-specific logic to separate module
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 511
diff changeset
45 myCachesDir = paths.getCacheDirectory("mercurial");
309
33305b2022c2 Take caches and plugin data dirs from PluginConfig
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 280
diff changeset
46 }
256
73708ca4521f Add ability to disable pull protocol
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
47
73708ca4521f Add ability to disable pull protocol
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
48 public boolean isUsePullProtocol() {
73708ca4521f Add ability to disable pull protocol
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
49 return TeamCityProperties.getBooleanOrTrue("teamcity.hg.use.pull.protocol");
73708ca4521f Add ability to disable pull protocol
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
50 }
329
ef091b782acc Add ability to specify timeout for pull operation (teamcity.hg.pull.timeout.seconds)
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 256
diff changeset
51
280
8c1fd2e565ae Implement mercurial detection on the agents
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 256
diff changeset
52 @Nullable
8c1fd2e565ae Implement mercurial detection on the agents
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 256
diff changeset
53 public String getHgPath() {
8c1fd2e565ae Implement mercurial detection on the agents
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 256
diff changeset
54 return TeamCityProperties.getPropertyOrNull("teamcity.hg.server.path");
8c1fd2e565ae Implement mercurial detection on the agents
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 256
diff changeset
55 }
309
33305b2022c2 Take caches and plugin data dirs from PluginConfig
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 280
diff changeset
56
33305b2022c2 Take caches and plugin data dirs from PluginConfig
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 280
diff changeset
57 @NotNull
33305b2022c2 Take caches and plugin data dirs from PluginConfig
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 280
diff changeset
58 public File getCachesDir() {
33305b2022c2 Take caches and plugin data dirs from PluginConfig
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 280
diff changeset
59 return myCachesDir;
33305b2022c2 Take caches and plugin data dirs from PluginConfig
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 280
diff changeset
60 }
33305b2022c2 Take caches and plugin data dirs from PluginConfig
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 280
diff changeset
61
419
743dc1646555 Add option to not use revsets
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 408
diff changeset
62 public boolean dontUseRevsets() {
743dc1646555 Add option to not use revsets
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 408
diff changeset
63 return TeamCityProperties.getBoolean("teamcity.hg.dont.use.revsets");
743dc1646555 Add option to not use revsets
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 408
diff changeset
64 }
743dc1646555 Add option to not use revsets
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 408
diff changeset
65
329
ef091b782acc Add ability to specify timeout for pull operation (teamcity.hg.pull.timeout.seconds)
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 256
diff changeset
66 public int getPullTimeout() {
ef091b782acc Add ability to specify timeout for pull operation (teamcity.hg.pull.timeout.seconds)
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 256
diff changeset
67 int timeout = TeamCityProperties.getInteger(PULL_TIMEOUT_SECONDS, DEFAULT_PULL_TIMEOUT_SECONDS);
ef091b782acc Add ability to specify timeout for pull operation (teamcity.hg.pull.timeout.seconds)
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 256
diff changeset
68 return timeout > 0 ? timeout : DEFAULT_PULL_TIMEOUT_SECONDS;
ef091b782acc Add ability to specify timeout for pull operation (teamcity.hg.pull.timeout.seconds)
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 256
diff changeset
69 }
442
6c43663744d9 getCurrentVersion do pull only when remote repository is updated
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 419
diff changeset
70
565
844fc8f99c29 Add ability to limit number of nodes in DAG
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 460
diff changeset
71 public int getMaxDagNodesCount() {
844fc8f99c29 Add ability to limit number of nodes in DAG
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 460
diff changeset
72 return TeamCityProperties.getInteger("teamcity.hg.maxDagNodesCount", 0);
844fc8f99c29 Add ability to limit number of nodes in DAG
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 460
diff changeset
73 }
844fc8f99c29 Add ability to limit number of nodes in DAG
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 460
diff changeset
74
578
40c085517770 Truncate command output in the logs
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 571
diff changeset
75 public int getLogOutputLimit() {
40c085517770 Truncate command output in the logs
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 571
diff changeset
76 return TeamCityProperties.getInteger("teamcity.hg.logOutputLimitChars", 2048);
40c085517770 Truncate command output in the logs
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 571
diff changeset
77 }
40c085517770 Truncate command output in the logs
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 571
diff changeset
78
511
f2666e817701 Detect changes in subrepos
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 460
diff changeset
79 public boolean detectSubrepoChanges() {
546
dc7aae21ef23 Use single option for subrepo changes
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 542
diff changeset
80 return TeamCityProperties.getBooleanOrTrue("teamcity.hg.detectSubrepoChanges");
538
8468457fe4d3 Report subrepo changes - initial version
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 529
diff changeset
81 }
8468457fe4d3 Report subrepo changes - initial version
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 529
diff changeset
82
529
33a6be414903 TW-17489 support bookmarks
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 514
diff changeset
83 public boolean bookmarksEnabled() {
33a6be414903 TW-17489 support bookmarks
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 514
diff changeset
84 return TeamCityProperties.getBooleanOrTrue("teamcity.hg.enableBookmarks");
33a6be414903 TW-17489 support bookmarks
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 514
diff changeset
85 }
579
da75e774d237 Clean mirrors on the server relying on last used time
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 578
diff changeset
86
649
0b50d7952a7d TW-23468 support tags as branches
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 633
diff changeset
87 public boolean useTagsAsBranches() {
0b50d7952a7d TW-23468 support tags as branches
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 633
diff changeset
88 return TeamCityProperties.getBooleanOrTrue("teamcity.hg.useTagsAsBranches");
0b50d7952a7d TW-23468 support tags as branches
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 633
diff changeset
89 }
0b50d7952a7d TW-23468 support tags as branches
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 633
diff changeset
90
579
da75e774d237 Clean mirrors on the server relying on last used time
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 578
diff changeset
91 public long getMirrorExpirationTimeoutMillis() {
da75e774d237 Clean mirrors on the server relying on last used time
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 578
diff changeset
92 int days = TeamCityProperties.getInteger("teamcity.hg.mirrorExpirationTimeoutDays", 7);
da75e774d237 Clean mirrors on the server relying on last used time
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 578
diff changeset
93 return days * Dates.ONE_DAY;
da75e774d237 Clean mirrors on the server relying on last used time
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 578
diff changeset
94 }
581
d693048e77ae Schedule cleanup by cron
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 579
diff changeset
95
d693048e77ae Schedule cleanup by cron
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 579
diff changeset
96 @Nullable
d693048e77ae Schedule cleanup by cron
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 579
diff changeset
97 public CronExpression getCleanupCronExpression() {
602
18fb51e85f82 Add default value for hg cleanup time - every day at 2 a.m.
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 584
diff changeset
98 String cron = TeamCityProperties.getProperty("teamcity.hg.cleanupCron", "0 0 2 * * ? *");
581
d693048e77ae Schedule cleanup by cron
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 579
diff changeset
99 if (isEmpty(cron))
d693048e77ae Schedule cleanup by cron
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 579
diff changeset
100 return null;
d693048e77ae Schedule cleanup by cron
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 579
diff changeset
101 try {
d693048e77ae Schedule cleanup by cron
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 579
diff changeset
102 return new CronExpression(cron);
d693048e77ae Schedule cleanup by cron
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 579
diff changeset
103 } catch (ParseException e) {
d693048e77ae Schedule cleanup by cron
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 579
diff changeset
104 LOG.warn("Wrong cron expression " + cron, e);
d693048e77ae Schedule cleanup by cron
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 579
diff changeset
105 return null;
d693048e77ae Schedule cleanup by cron
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 579
diff changeset
106 }
d693048e77ae Schedule cleanup by cron
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 579
diff changeset
107 }
584
49b11c289395 Speed up subrepo changes collecting
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 581
diff changeset
108
49b11c289395 Speed up subrepo changes collecting
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 581
diff changeset
109 public boolean reportSubrepoChangesFileStatus() {
49b11c289395 Speed up subrepo changes collecting
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 581
diff changeset
110 return TeamCityProperties.getBoolean("teamcity.hg.reportSubrepoChangesFileStatus");
49b11c289395 Speed up subrepo changes collecting
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 581
diff changeset
111 }
633
6ed9e0528564 Add an option to allow patch caching when server-side checkout is used
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 602
diff changeset
112
6ed9e0528564 Add an option to allow patch caching when server-side checkout is used
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 602
diff changeset
113 public boolean allowSourceCaching() {
6ed9e0528564 Add an option to allow patch caching when server-side checkout is used
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 602
diff changeset
114 return TeamCityProperties.getBoolean("teamcity.hg.allowSourceCaching");
6ed9e0528564 Add an option to allow patch caching when server-side checkout is used
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 602
diff changeset
115 }
667
bcee3a8b2c7b Add TTL for list file policy
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
116
bcee3a8b2c7b Add TTL for list file policy
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
117 public int listFilesTTLSeconds() {
bcee3a8b2c7b Add TTL for list file policy
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
118 return TeamCityProperties.getInteger("teamcity.hg.listFilesTTLSeconds", 60);
bcee3a8b2c7b Add TTL for list file policy
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
119 }
671
3cc513b9e3c1 Use non-interactive merge
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 667
diff changeset
120
3cc513b9e3c1 Use non-interactive merge
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 667
diff changeset
121 public String getMergeTool() {
3cc513b9e3c1 Use non-interactive merge
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 667
diff changeset
122 return TeamCityProperties.getProperty("teamcity.hg.mergeTool", "internal:merge");
3cc513b9e3c1 Use non-interactive merge
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 667
diff changeset
123 }
865
3d700493d033 Ability to profile hg pull on server
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 732
diff changeset
124
3d700493d033 Ability to profile hg pull on server
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 732
diff changeset
125 public boolean runWithProfile(@NotNull HgVcsRoot root) {
3d700493d033 Ability to profile hg pull on server
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 732
diff changeset
126 String urls = TeamCityProperties.getProperty("teamcity.hg.runCommandsWithProfile");
3d700493d033 Ability to profile hg pull on server
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 732
diff changeset
127 return urls.contains(root.getRepository());
3d700493d033 Ability to profile hg pull on server
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 732
diff changeset
128 }
256
73708ca4521f Add ability to disable pull protocol
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
129 }