You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by dp...@apache.org on 2019/04/05 12:26:35 UTC
[ignite-teamcity-bot] 01/01: IGNITE-11688: Default tracked branch
name is now overridable in server config
This is an automated email from the ASF dual-hosted git repository.
dpavlov pushed a commit to branch ignite-11688
in repository https://gitbox.apache.org/repos/asf/ignite-teamcity-bot.git
commit 94959c541978499338a20ed2184ec5705d4c69eb
Author: Dmitriy Pavlov <dp...@apache.org>
AuthorDate: Fri Apr 5 15:26:29 2019 +0300
IGNITE-11688: Default tracked branch name is now overridable in server config
---
.../apache/ignite/ci/github/pure/GitHubConnectionImpl.java | 7 +++++--
.../ignite/ci/tcbot/chain/TrackedBranchChainsProcessor.java | 6 +++---
.../org/apache/ignite/ci/tcbot/conf/ITcServerConfig.java | 5 +++++
.../org/apache/ignite/ci/tcbot/conf/TcServerConfig.java | 13 +++++++++++++
.../org/apache/ignite/ci/tcbot/issue/IssueDetector.java | 4 ++--
.../ignite/ci/tcbot/visa/TcBotTriggerAndSignOffService.java | 8 ++++++--
.../apache/ignite/ci/web/rest/parms/FullQueryParams.java | 1 -
7 files changed, 34 insertions(+), 10 deletions(-)
diff --git a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/github/pure/GitHubConnectionImpl.java b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/github/pure/GitHubConnectionImpl.java
index a7ff550..ddfce1c 100644
--- a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/github/pure/GitHubConnectionImpl.java
+++ b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/github/pure/GitHubConnectionImpl.java
@@ -141,7 +141,10 @@ class GitHubConnectionImpl implements IGitHubConnection {
/** {@inheritDoc} */
@Override public String gitApiUrl() {
- return gitApiUrl;
+ if (gitApiUrl == null)
+ return null;
+
+ return gitApiUrl.endsWith("/") ? gitApiUrl : gitApiUrl + "/";
}
/** {@inheritDoc} */
@@ -150,7 +153,7 @@ class GitHubConnectionImpl implements IGitHubConnection {
@Nullable AtomicReference<String> outLinkNext) {
Preconditions.checkState(!isNullOrEmpty(gitApiUrl), "Git API URL is not configured for this server.");
- String url = fullUrl != null ? fullUrl : gitApiUrl + "pulls?sort=updated&direction=desc";
+ String url = fullUrl != null ? fullUrl : gitApiUrl() + "pulls?sort=updated&direction=desc";
HashMap<String, String> rspHeaders = new HashMap<>();
if (outLinkNext != null) {
diff --git a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/chain/TrackedBranchChainsProcessor.java b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/chain/TrackedBranchChainsProcessor.java
index 5648057..a261730 100644
--- a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/chain/TrackedBranchChainsProcessor.java
+++ b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/chain/TrackedBranchChainsProcessor.java
@@ -27,6 +27,7 @@ import org.apache.ignite.ci.analysis.mode.ProcessLogsMode;
import org.apache.ignite.ci.conf.BranchTracked;
import org.apache.ignite.ci.di.AutoProfiling;
import org.apache.ignite.ci.tcbot.conf.ITcBotConfig;
+import org.apache.ignite.ci.tcbot.conf.TcServerConfig;
import org.apache.ignite.ci.teamcity.ignited.ITeamcityIgnited;
import org.apache.ignite.ci.teamcity.ignited.ITeamcityIgnitedProvider;
import org.apache.ignite.ci.teamcity.ignited.SyncMode;
@@ -35,7 +36,6 @@ import org.apache.ignite.ci.user.ICredentialsProv;
import org.apache.ignite.ci.web.model.current.ChainAtServerCurrentStatus;
import org.apache.ignite.ci.web.model.current.TestFailuresSummary;
import org.apache.ignite.ci.web.model.long_running.FullLRTestsSummary;
-import org.apache.ignite.ci.web.rest.parms.FullQueryParams;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@@ -68,7 +68,7 @@ public class TrackedBranchChainsProcessor {
final TestFailuresSummary res = new TestFailuresSummary();
final AtomicInteger runningUpdates = new AtomicInteger();
- final String branchNn = isNullOrEmpty(branch) ? FullQueryParams.DEFAULT_TRACKED_BRANCH_NAME : branch;
+ final String branchNn = isNullOrEmpty(branch) ? TcServerConfig.DEFAULT_TRACKED_BRANCH_NAME : branch;
res.setTrackedBranch(branchNn);
final BranchTracked tracked = tcBotConfig.getTrackedBranches().getBranchMandatory(branchNn);
@@ -143,7 +143,7 @@ public class TrackedBranchChainsProcessor {
ICredentialsProv creds) {
FullLRTestsSummary summary = new FullLRTestsSummary();
- final String branchNn = isNullOrEmpty(branch) ? FullQueryParams.DEFAULT_TRACKED_BRANCH_NAME : branch;
+ final String branchNn = isNullOrEmpty(branch) ? TcServerConfig.DEFAULT_TRACKED_BRANCH_NAME : branch;
final BranchTracked tracked = tcBotConfig.getTrackedBranches().getBranchMandatory(branchNn);
tracked.chains.stream()
diff --git a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/conf/ITcServerConfig.java b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/conf/ITcServerConfig.java
index 8f65ee8..7c5185f 100644
--- a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/conf/ITcServerConfig.java
+++ b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/conf/ITcServerConfig.java
@@ -35,4 +35,9 @@ public interface ITcServerConfig {
@NotNull public String host();
@NotNull public String logsDirectory();
+
+ /**
+ * @return
+ */
+ @NotNull public String defaultTrackedBranch();
}
diff --git a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/conf/TcServerConfig.java b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/conf/TcServerConfig.java
index 81ceea2..1c42a11 100644
--- a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/conf/TcServerConfig.java
+++ b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/conf/TcServerConfig.java
@@ -27,6 +27,7 @@ import org.jetbrains.annotations.Nullable;
* Teamcity connection configuration or reference to another config.
*/
public class TcServerConfig implements ITcServerConfig {
+ public static final String DEFAULT_TRACKED_BRANCH_NAME = "master";
private static final String DEFAULT_HOST = "https://ci.ignite.apache.org/";
/** TC server name. */
@@ -44,6 +45,9 @@ public class TcServerConfig implements ITcServerConfig {
/** Downloaded build logs relative path. */
@Nullable private String logsDir;
+ /** Default tracked branch. */
+ @Nullable private String defaultTrackedBranch;
+
public TcServerConfig() {
}
@@ -101,7 +105,16 @@ public class TcServerConfig implements ITcServerConfig {
return props != null
? props.getProperty(HelperConfig.HOST, DEFAULT_HOST)
: DEFAULT_HOST;
+ }
+
+ /**
+ * @return tracked branch name to be used for this server for PRs check
+ */
+ @Override @NotNull public String defaultTrackedBranch() {
+ if (!Strings.isNullOrEmpty(defaultTrackedBranch))
+ return defaultTrackedBranch;
+ return DEFAULT_TRACKED_BRANCH_NAME;
}
/**
diff --git a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/issue/IssueDetector.java b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/issue/IssueDetector.java
index 4828867..48d965c 100644
--- a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/issue/IssueDetector.java
+++ b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/issue/IssueDetector.java
@@ -47,6 +47,7 @@ import org.apache.ignite.ci.mail.EmailSender;
import org.apache.ignite.ci.mail.SlackSender;
import org.apache.ignite.ci.tcbot.chain.TrackedBranchChainsProcessor;
import org.apache.ignite.ci.tcbot.conf.ITcBotConfig;
+import org.apache.ignite.ci.tcbot.conf.TcServerConfig;
import org.apache.ignite.ci.tcbot.user.IUserStorage;
import org.apache.ignite.ci.teamcity.ignited.IRunHistory;
import org.apache.ignite.ci.teamcity.ignited.IStringCompactor;
@@ -61,7 +62,6 @@ import org.apache.ignite.ci.web.model.current.ChainAtServerCurrentStatus;
import org.apache.ignite.ci.web.model.current.SuiteCurrentStatus;
import org.apache.ignite.ci.web.model.current.TestFailure;
import org.apache.ignite.ci.web.model.current.TestFailuresSummary;
-import org.apache.ignite.ci.web.rest.parms.FullQueryParams;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -159,7 +159,7 @@ public class IssueDetector {
.forEach(issue -> {
List<String> addrs = new ArrayList<>();
- if (slackCh != null && FullQueryParams.DEFAULT_TRACKED_BRANCH_NAME.equals(issue.trackedBranchName))
+ if (slackCh != null && TcServerConfig.DEFAULT_TRACKED_BRANCH_NAME.equals(issue.trackedBranchName))
addrs.add(SLACK + "#" + slackCh);
for (TcHelperUser next : userForPossibleNotifications) {
diff --git a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/visa/TcBotTriggerAndSignOffService.java b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/visa/TcBotTriggerAndSignOffService.java
index 6ca04b3..658efed 100644
--- a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/visa/TcBotTriggerAndSignOffService.java
+++ b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/visa/TcBotTriggerAndSignOffService.java
@@ -51,6 +51,7 @@ import org.apache.ignite.ci.tcbot.chain.PrChainsProcessor;
import org.apache.ignite.ci.tcbot.conf.IGitHubConfig;
import org.apache.ignite.ci.tcbot.conf.IJiraServerConfig;
import org.apache.ignite.ci.tcbot.conf.ITcBotConfig;
+import org.apache.ignite.ci.tcbot.conf.ITcServerConfig;
import org.apache.ignite.ci.tcmodel.mute.MuteInfo;
import org.apache.ignite.ci.tcmodel.result.Build;
import org.apache.ignite.ci.teamcity.ignited.BuildRefCompacted;
@@ -81,7 +82,7 @@ import static org.apache.ignite.ci.observer.BuildsInfo.CANCELLED_STATUS;
import static org.apache.ignite.ci.observer.BuildsInfo.FINISHED_STATUS;
import static org.apache.ignite.ci.observer.BuildsInfo.RUNNING_STATUS;
import static org.apache.ignite.ci.util.XmlUtil.xmlEscapeText;
-import static org.apache.ignite.ci.web.rest.parms.FullQueryParams.DEFAULT_TRACKED_BRANCH_NAME;
+import static org.apache.ignite.ci.tcbot.conf.TcServerConfig.DEFAULT_TRACKED_BRANCH_NAME;
/**
* TC Bot Visa Facade. Provides method for TC Bot Visa obtaining. Contains features for adding comment to the ticket
@@ -572,8 +573,11 @@ public class TcBotTriggerAndSignOffService {
@NotNull public String findDefaultBranchBuildType(String srvId) {
StringBuilder buildTypeId = new StringBuilder();
+ ITcServerConfig tcCfg = cfg.getTeamcityConfig(srvId);
+ String trBranch = tcCfg.defaultTrackedBranch();
+
cfg.getTrackedBranches()
- .get(DEFAULT_TRACKED_BRANCH_NAME)
+ .get(trBranch)
.ifPresent(
b -> b.getChainsStream()
.filter(c -> Objects.equals(srvId, c.serverId))
diff --git a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/rest/parms/FullQueryParams.java b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/rest/parms/FullQueryParams.java
index 323691b..11d0b56 100644
--- a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/rest/parms/FullQueryParams.java
+++ b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/rest/parms/FullQueryParams.java
@@ -27,7 +27,6 @@ import org.jetbrains.annotations.Nullable;
* Contains maximum combination of query parameters
*/
public class FullQueryParams {
- public static final String DEFAULT_TRACKED_BRANCH_NAME = "master";
//see definitions in Index.html javascript
public static final String HISTORY = "History";