annotate mercurial-tests/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/VcsRootBuilder.java @ 686:1efd1846f00a

Add an option for using tar archive for building a full patch This is a workaround for the case when java cannot read some file from the repository due to encoding used in a file name.
author Dmitry Neverov <dmitry.neverov@jetbrains.com>
date Tue, 17 Dec 2013 13:38:24 +0100
parents 0b50d7952a7d
children 5ee94ee69b29
rev   line source
275
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
1 package jetbrains.buildServer.buildTriggers.vcs.mercurial;
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
2
356
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
3 import jetbrains.buildServer.vcs.SVcsRoot;
275
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
4 import jetbrains.buildServer.vcs.impl.VcsRootImpl;
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
5 import org.jetbrains.annotations.NotNull;
356
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
6 import org.jmock.Expectations;
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
7 import org.jmock.Mockery;
275
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
8
649
0b50d7952a7d TW-23468 support tags as branches
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 638
diff changeset
9 import java.io.File;
0b50d7952a7d TW-23468 support tags as branches
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 638
diff changeset
10 import java.io.IOException;
0b50d7952a7d TW-23468 support tags as branches
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 638
diff changeset
11
275
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
12 /**
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
13 * @author dmitry.neverov
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
14 */
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
15 public class VcsRootBuilder {
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
16
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
17 private String myRepository;
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
18 private String myUsername;
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
19 private String myPassword;
276
8c10f5cec37d TW-17797 Fix merge-base calculation
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 275
diff changeset
20 private String myBranch;
275
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
21 private long myRootId = 1L;
280
8c1fd2e565ae Implement mercurial detection on the agents
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 276
diff changeset
22 private String myHgPath;
371
24d926f22e85 TW-16045 allow specify username for tags
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 356
diff changeset
23 private String myUserForTag;
502
2755266b7dd5 Use uncompressed transfer explicitly
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 371
diff changeset
24 private boolean myUncompressed = true;
531
81fa236998d4 TW-25057 custom clone dir should not contains password
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 502
diff changeset
25 private File myCloneRepositoryTo;
544
4ff88460fb5d UI option for subrepo changes
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 536
diff changeset
26 private boolean myDetectSubrepoChanges = false;
649
0b50d7952a7d TW-23468 support tags as branches
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 638
diff changeset
27 private boolean myTagsAsBranches = false;
686
1efd1846f00a Add an option for using tar archive for building a full patch
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
28 private boolean myIncludeSubreposInPatch = true;
1efd1846f00a Add an option for using tar archive for building a full patch
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
29 private boolean myUseArchiveForPatch = false;
371
24d926f22e85 TW-16045 allow specify username for tags
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 356
diff changeset
30
24d926f22e85 TW-16045 allow specify username for tags
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 356
diff changeset
31 public static VcsRootBuilder vcsRoot() {
24d926f22e85 TW-16045 allow specify username for tags
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 356
diff changeset
32 return new VcsRootBuilder();
24d926f22e85 TW-16045 allow specify username for tags
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 356
diff changeset
33 }
275
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
34
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
35 public VcsRootImpl build() throws IOException {
309
33305b2022c2 Take caches and plugin data dirs from PluginConfig
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 280
diff changeset
36 VcsRootImpl vcsRoot = new VcsRootImpl(myRootId, Constants.VCS_NAME);
275
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
37 vcsRoot.addProperty(Constants.REPOSITORY_PROP, myRepository);
280
8c1fd2e565ae Implement mercurial detection on the agents
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 276
diff changeset
38 vcsRoot.addProperty(Constants.HG_COMMAND_PATH_PROP, myHgPath != null ? myHgPath : Util.getHgPath());
275
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
39 vcsRoot.addProperty(Constants.USERNAME, myUsername);
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
40 vcsRoot.addProperty(Constants.PASSWORD, myPassword);
276
8c10f5cec37d TW-17797 Fix merge-base calculation
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 275
diff changeset
41 vcsRoot.addProperty(Constants.BRANCH_NAME_PROP, myBranch);
371
24d926f22e85 TW-16045 allow specify username for tags
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 356
diff changeset
42 vcsRoot.addProperty(Constants.USER_FOR_TAG, myUserForTag);
502
2755266b7dd5 Use uncompressed transfer explicitly
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 371
diff changeset
43 vcsRoot.addProperty(Constants.UNCOMPRESSED_TRANSFER, String.valueOf(myUncompressed));
544
4ff88460fb5d UI option for subrepo changes
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 536
diff changeset
44 vcsRoot.addProperty(Constants.DETECT_SUBREPO_CHANGES, String.valueOf(myDetectSubrepoChanges));
686
1efd1846f00a Add an option for using tar archive for building a full patch
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
45 vcsRoot.addProperty(Constants.INCLUDE_SUBREPOS_IN_PATCH, String.valueOf(myIncludeSubreposInPatch));
1efd1846f00a Add an option for using tar archive for building a full patch
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
46 vcsRoot.addProperty(Constants.USE_ARCHIVE_FOR_PATCH, String.valueOf(myUseArchiveForPatch));
531
81fa236998d4 TW-25057 custom clone dir should not contains password
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 502
diff changeset
47 if (myCloneRepositoryTo != null)
81fa236998d4 TW-25057 custom clone dir should not contains password
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 502
diff changeset
48 vcsRoot.addProperty(Constants.SERVER_CLONE_PATH_PROP, String.valueOf(myCloneRepositoryTo.getAbsolutePath()));
649
0b50d7952a7d TW-23468 support tags as branches
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 638
diff changeset
49 vcsRoot.addProperty(Constants.USE_TAGS_AS_BRANCHES, String.valueOf(myTagsAsBranches));
275
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
50 return vcsRoot;
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
51 }
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
52
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
53
356
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
54 public SVcsRoot build(Mockery context) {
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
55 final SVcsRoot root = context.mock(SVcsRoot.class, "SVcsRoot" + myRootId);
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
56 context.checking(new Expectations() {{
536
fdb9ea7cb51e Fix test
kir@kir-macpro.cz.labs.intellij.net
parents: 531
diff changeset
57 allowing(root).describe(false); will(returnValue("toString"));
356
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
58 allowing(root).getVcsName(); will(returnValue(Constants.VCS_NAME));
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
59 allowing(root).getProperty(with(Constants.REPOSITORY_PROP)); will(returnValue(myRepository));
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
60 allowing(root).getProperty(with(Constants.HG_COMMAND_PATH_PROP)); will(returnValue(myHgPath));
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
61 allowing(root).getProperty(with(Constants.BRANCH_NAME_PROP)); will(returnValue(myBranch));
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
62 allowing(root).getProperty(with(Constants.SERVER_CLONE_PATH_PROP)); will(returnValue(null));
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
63 allowing(root).getProperty(with(Constants.USERNAME)); will(returnValue(myUsername));
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
64 allowing(root).getProperty(with(Constants.PASSWORD)); will(returnValue(myPassword));
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
65 allowing(root).getProperty(with(Constants.UNCOMPRESSED_TRANSFER)); will(returnValue(null));
371
24d926f22e85 TW-16045 allow specify username for tags
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 356
diff changeset
66 allowing(root).getProperty(with(Constants.USER_FOR_TAG)); will(returnValue(myUserForTag));
544
4ff88460fb5d UI option for subrepo changes
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 536
diff changeset
67 allowing(root).getProperty(with(Constants.DETECT_SUBREPO_CHANGES)); will(returnValue(String.valueOf(myDetectSubrepoChanges)));
649
0b50d7952a7d TW-23468 support tags as branches
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 638
diff changeset
68 allowing(root).getProperty(with(Constants.USE_TAGS_AS_BRANCHES)); will(returnValue(String.valueOf(myTagsAsBranches)));
356
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
69 }});
531
81fa236998d4 TW-25057 custom clone dir should not contains password
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 502
diff changeset
70 if (myCloneRepositoryTo != null) {
81fa236998d4 TW-25057 custom clone dir should not contains password
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 502
diff changeset
71 context.checking(new Expectations() {{
81fa236998d4 TW-25057 custom clone dir should not contains password
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 502
diff changeset
72 allowing(root).getProperty(with(Constants.SERVER_CLONE_PATH_PROP)); will(returnValue(myCloneRepositoryTo.getAbsolutePath()));
81fa236998d4 TW-25057 custom clone dir should not contains password
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 502
diff changeset
73 }});
81fa236998d4 TW-25057 custom clone dir should not contains password
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 502
diff changeset
74 }
356
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
75 return root;
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
76 }
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
77
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
78
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
79 public VcsRootBuilder withUrl(@NotNull String repository) {
275
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
80 myRepository = repository;
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
81 return this;
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
82 }
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
83
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
84
638
7c017b6aa438 Tests for merge support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 544
diff changeset
85 public VcsRootBuilder withUrl(@NotNull File repository) {
7c017b6aa438 Tests for merge support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 544
diff changeset
86 myRepository = repository.getAbsolutePath();
7c017b6aa438 Tests for merge support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 544
diff changeset
87 return this;
7c017b6aa438 Tests for merge support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 544
diff changeset
88 }
7c017b6aa438 Tests for merge support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 544
diff changeset
89
7c017b6aa438 Tests for merge support
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 544
diff changeset
90
356
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
91 public VcsRootBuilder withUserName(@NotNull String username) {
275
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
92 myUsername = username;
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
93 return this;
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
94 }
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
95
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
96
356
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
97 public VcsRootBuilder withPassword(@NotNull String password) {
275
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
98 myPassword = password;
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
99 return this;
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
100 }
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
101
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
102
356
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
103 public VcsRootBuilder withBranch(@NotNull String branch) {
276
8c10f5cec37d TW-17797 Fix merge-base calculation
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 275
diff changeset
104 myBranch = branch;
8c10f5cec37d TW-17797 Fix merge-base calculation
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 275
diff changeset
105 return this;
8c10f5cec37d TW-17797 Fix merge-base calculation
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 275
diff changeset
106 }
8c10f5cec37d TW-17797 Fix merge-base calculation
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 275
diff changeset
107
8c10f5cec37d TW-17797 Fix merge-base calculation
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 275
diff changeset
108
356
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
109 public VcsRootBuilder withId(long rootId) {
275
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
110 myRootId = rootId;
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
111 return this;
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
112 }
280
8c1fd2e565ae Implement mercurial detection on the agents
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 276
diff changeset
113
8c1fd2e565ae Implement mercurial detection on the agents
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 276
diff changeset
114
356
53b430731041 TW-19984 ensure map file cleaned as well
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 309
diff changeset
115 public VcsRootBuilder withHgPath(String hgPath) {
280
8c1fd2e565ae Implement mercurial detection on the agents
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 276
diff changeset
116 myHgPath = hgPath;
8c1fd2e565ae Implement mercurial detection on the agents
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 276
diff changeset
117 return this;
8c1fd2e565ae Implement mercurial detection on the agents
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 276
diff changeset
118 }
371
24d926f22e85 TW-16045 allow specify username for tags
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 356
diff changeset
119
24d926f22e85 TW-16045 allow specify username for tags
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 356
diff changeset
120
24d926f22e85 TW-16045 allow specify username for tags
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 356
diff changeset
121 public VcsRootBuilder withUserForTag(String username) {
24d926f22e85 TW-16045 allow specify username for tags
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 356
diff changeset
122 myUserForTag = username;
24d926f22e85 TW-16045 allow specify username for tags
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 356
diff changeset
123 return this;
24d926f22e85 TW-16045 allow specify username for tags
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 356
diff changeset
124 }
531
81fa236998d4 TW-25057 custom clone dir should not contains password
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 502
diff changeset
125
81fa236998d4 TW-25057 custom clone dir should not contains password
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 502
diff changeset
126
81fa236998d4 TW-25057 custom clone dir should not contains password
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 502
diff changeset
127 public VcsRootBuilder withCloneRepositoryTo(File cloneTo) {
81fa236998d4 TW-25057 custom clone dir should not contains password
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 502
diff changeset
128 myCloneRepositoryTo = cloneTo;
81fa236998d4 TW-25057 custom clone dir should not contains password
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 502
diff changeset
129 return this;
81fa236998d4 TW-25057 custom clone dir should not contains password
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 502
diff changeset
130 }
544
4ff88460fb5d UI option for subrepo changes
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 536
diff changeset
131
4ff88460fb5d UI option for subrepo changes
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 536
diff changeset
132
4ff88460fb5d UI option for subrepo changes
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 536
diff changeset
133 public VcsRootBuilder withSubrepoChanges(boolean detectSubrepoChanges) {
4ff88460fb5d UI option for subrepo changes
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 536
diff changeset
134 myDetectSubrepoChanges = detectSubrepoChanges;
4ff88460fb5d UI option for subrepo changes
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 536
diff changeset
135 return this;
4ff88460fb5d UI option for subrepo changes
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 536
diff changeset
136 }
649
0b50d7952a7d TW-23468 support tags as branches
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 638
diff changeset
137
0b50d7952a7d TW-23468 support tags as branches
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 638
diff changeset
138
686
1efd1846f00a Add an option for using tar archive for building a full patch
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
139 public VcsRootBuilder withSubreposInPatch(boolean includeSubreposInPatch) {
1efd1846f00a Add an option for using tar archive for building a full patch
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
140 myIncludeSubreposInPatch = includeSubreposInPatch;
1efd1846f00a Add an option for using tar archive for building a full patch
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
141 return this;
1efd1846f00a Add an option for using tar archive for building a full patch
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
142 }
1efd1846f00a Add an option for using tar archive for building a full patch
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
143
1efd1846f00a Add an option for using tar archive for building a full patch
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
144
1efd1846f00a Add an option for using tar archive for building a full patch
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
145 public VcsRootBuilder withArchiveForPatch(boolean useArchiveForPatch) {
1efd1846f00a Add an option for using tar archive for building a full patch
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
146 myUseArchiveForPatch = useArchiveForPatch;
1efd1846f00a Add an option for using tar archive for building a full patch
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
147 return this;
1efd1846f00a Add an option for using tar archive for building a full patch
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
148 }
1efd1846f00a Add an option for using tar archive for building a full patch
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
149
1efd1846f00a Add an option for using tar archive for building a full patch
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 649
diff changeset
150
649
0b50d7952a7d TW-23468 support tags as branches
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 638
diff changeset
151 public VcsRootBuilder withTagsEnabled(boolean useTagsAsBranches) {
0b50d7952a7d TW-23468 support tags as branches
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 638
diff changeset
152 myTagsAsBranches = useTagsAsBranches;
0b50d7952a7d TW-23468 support tags as branches
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 638
diff changeset
153 return this;
0b50d7952a7d TW-23468 support tags as branches
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents: 638
diff changeset
154 }
275
13f3e7d0c42c Implement VersionCommand
Dmitry Neverov <dmitry.neverov@jetbrains.com>
parents:
diff changeset
155 }