You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ir...@apache.org on 2020/07/09 20:19:02 UTC

[ignite-teamcity-bot] 01/04: Checkbox 'delete all files in checkout directory before each snapshot dependency build' #167

This is an automated email from the ASF dual-hosted git repository.

irakov pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite-teamcity-bot.git

commit 272ad2844e91b026960d59071f5c8b2e1802b2d0
Author: sergeyuttsel <ut...@gmail.com>
AuthorDate: Thu Jul 9 23:12:17 2020 +0300

    Checkbox 'delete all files in checkout directory before each snapshot dependency build' #167
    
    Signed-off-by: Ivan Rakov <iv...@gmail.com>
---
 .../tcbot/visa/TcBotTriggerAndSignOffService.java  |  3 ++-
 .../apache/ignite/ci/web/rest/TriggerBuilds.java   |  5 +++--
 .../src/main/webapp/js/testfails-2.2.js            | 24 ++++++++++++++--------
 .../tcservice/TeamcityServiceConnection.java       |  2 +-
 4 files changed, 21 insertions(+), 13 deletions(-)

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 8acb1e1..c4de5ca 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
@@ -267,6 +267,7 @@ public class TcBotTriggerAndSignOffService {
         @Nullable String ticketId,
         @Nullable String prNum,
         @Nullable String baseBranchForTc,
+        @Nonnull Boolean cleanRebuild,
         @Nullable ITcBotUserCreds prov) {
         String jiraRes = "";
 
@@ -297,7 +298,7 @@ public class TcBotTriggerAndSignOffService {
         Set<Integer> buildidsToSync = new HashSet<>();
 
         for (int i = 0; i < suiteIds.length; i++) {
-            T2<Build, Set<Integer>> objects = teamcity.triggerBuild(suiteIds[i], branchForTc, false, top != null && top, new HashMap<>(),
+            T2<Build, Set<Integer>> objects = teamcity.triggerBuild(suiteIds[i], branchForTc, cleanRebuild, top != null && top, new HashMap<>(),
                 false, "");
             buildidsToSync.addAll(objects.get2());
             builds[i] = objects.get1();
diff --git a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/rest/TriggerBuilds.java b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/rest/TriggerBuilds.java
index 75a8d69..afb8a68 100644
--- a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/rest/TriggerBuilds.java
+++ b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/web/rest/TriggerBuilds.java
@@ -83,7 +83,8 @@ public class TriggerBuilds {
         @Nullable @QueryParam("observe") Boolean observe,
         @Nullable @QueryParam("ticketId") String ticketId,
         @Nullable @QueryParam("prNum") String prNum,
-        @Nullable @QueryParam("baseBranchForTc") String baseBranchForTc
+        @Nullable @QueryParam("baseBranchForTc") String baseBranchForTc,
+        @Nonnull @QueryParam("cleanRebuild") Boolean cleanRebuild
     ) {
         ITcBotUserCreds prov = ITcBotUserCreds.get(req);
         Injector injector = CtxListener.getInjector(ctx);
@@ -95,7 +96,7 @@ public class TriggerBuilds {
 
         String jiraRes = injector
             .getInstance(TcBotTriggerAndSignOffService.class)
-            .triggerBuildsAndObserve(srvCodeOrAlias, branchForTc, parentSuiteId, suiteIdList, top, observe, ticketId, prNum, baseBranchForTc, prov);
+            .triggerBuildsAndObserve(srvCodeOrAlias, branchForTc, parentSuiteId, suiteIdList, top, observe, ticketId, prNum, baseBranchForTc, cleanRebuild, prov);
 
         return new TriggerResult("Tests started." + (!jiraRes.isEmpty() ? "<br>" + jiraRes : ""));
     }
diff --git a/ignite-tc-helper-web/src/main/webapp/js/testfails-2.2.js b/ignite-tc-helper-web/src/main/webapp/js/testfails-2.2.js
index 09eb64b..5a0b573 100644
--- a/ignite-tc-helper-web/src/main/webapp/js/testfails-2.2.js
+++ b/ignite-tc-helper-web/src/main/webapp/js/testfails-2.2.js
@@ -237,12 +237,12 @@ function showChainCurrentStatusData(chain, settings) {
         moreInfoTxt += "Trigger failed " + cntFailed + " builds";
         moreInfoTxt += " <a href='javascript:void(0);' ";
         moreInfoTxt += " onClick='triggerBuilds(\"" + srvCodeForTriggering + "\", \"" + parentSuitId + "\", " +
-            "\"" + suitesFailedList + "\", \"" + chain.branchName + "\", false, false, null, \"" + chain.prNum + "\", null)' ";
+            "\"" + suitesFailedList + "\", \"" + chain.branchName + "\", false, false, null, \"" + chain.prNum + "\", null, false)' ";
         moreInfoTxt += " title='trigger builds'>in queue</a> ";
 
         moreInfoTxt += " <a href='javascript:void(0);' ";
         moreInfoTxt += " onClick='triggerBuilds(\"" + srvCodeForTriggering + "\", \"" + parentSuitId + "\", " +
-            "\"" + suitesFailedList + "\", \"" + chain.branchName + "\", true, false, null, \"" + chain.prNum + "\", null)' ";
+            "\"" + suitesFailedList + "\", \"" + chain.branchName + "\", true, false, null, \"" + chain.prNum + "\", null, false)' ";
         moreInfoTxt += " title='trigger builds'>on top</a><br>";
     }
 
@@ -302,7 +302,7 @@ function showChainCurrentStatusData(chain, settings) {
             "\"" + chain.branchName + "\", " +
             "\"" + parentSuitId + "\", " +
             "\"\", " + // ticket id
-            "\"" + baseBranchForTc + "\")'>Comment JIRA</button>&nbsp;&nbsp;";
+            "\"" + baseBranchForTc + "\")'>Comment JIRA</button><br>";
 
         var blockersList = "";
 
@@ -319,6 +319,8 @@ function showChainCurrentStatusData(chain, settings) {
             }
         }
 
+        res += "<label for='cleanRebuild'><input id='cleanRebuild' type='checkbox'>Delete all files in checkout directory before each snapshot dependency build</label><br>"
+
         res += "<button onclick='triggerBuilds(" +
             "\"" + srvCodeForTriggering + "\", " +
             "\"" + parentSuitId + "\", " +
@@ -328,7 +330,8 @@ function showChainCurrentStatusData(chain, settings) {
             "false, " + //observe
             "null, " + // ticketId
             "\"" + + chain.prNum + "\", " +
-            "\"" + baseBranchForTc + "\" " +
+            "\"" + baseBranchForTc + "\", " +
+            "document.getElementById(\"cleanRebuild\").checked" +
             ")'> " +
             "Re-run possible blockers</button><br>";
 
@@ -341,7 +344,9 @@ function showChainCurrentStatusData(chain, settings) {
             "false, " + //observe
             "null, " + // ticketId
             "\"" + chain.prNum + "\", " + //prNum
-            "\"" + baseBranchForTc + "\")'> " +
+            "\"" + baseBranchForTc + "\", " +
+            "document.getElementById(\"cleanRebuild\").checked" +
+            ")'> " +
             "Re-run possible blockers (top queue)</button><br>";
     }
 
@@ -445,7 +450,7 @@ function filterPossibleBlocker(suite) {
     return null;
 }
 
-function triggerBuilds(tcServerCode, parentSuiteId, suiteIdList, branchName, top, observe, ticketId, prNum, baseBranchForTc) {
+function triggerBuilds(tcServerCode, parentSuiteId, suiteIdList, branchName, top, observe, ticketId, prNum, baseBranchForTc, cleanRebuild=false) {
     var queueAtTop = isDefinedAndFilled(top) && top;
     var observeJira = isDefinedAndFilled(observe) && observe;
     var suiteIdsNotExists = !isDefinedAndFilled(suiteIdList) || suiteIdList.length === 0;
@@ -510,7 +515,8 @@ function triggerBuilds(tcServerCode, parentSuiteId, suiteIdList, branchName, top
                 "observe": observeJira,
                 "ticketId": ticketId,
                 "prNum": prNum,
-                "baseBranchForTc": baseBranchForTc
+                "baseBranchForTc": baseBranchForTc,
+                "cleanRebuild": cleanRebuild
             },
             success: successDialog,
             error: showErrInLoadStatus
@@ -732,12 +738,12 @@ function showSuiteData(suite, settings, prNum) {
         mInfo += " Trigger build: ";
         mInfo += "<a href='javascript:void(0);' ";
         mInfo += " onClick='triggerBuilds(\"" + suite.serverId + "\", null, \"" +
-            suite.suiteId + "\", \"" + suite.branchName + "\", false, false, null, \"" + prNum + "\", null)' ";
+            suite.suiteId + "\", \"" + suite.branchName + "\", false, false, null, \"" + prNum + "\", null, false)' ";
         mInfo += " title='trigger build' >queue</a> ";
 
         mInfo += "<a href='javascript:void(0);' ";
         mInfo += " onClick='triggerBuilds(\"" + suite.serverId + "\", null, \"" +
-            suite.suiteId + "\", \"" + suite.branchName + "\", true, false, null, \"" + prNum + "\", null)' ";
+            suite.suiteId + "\", \"" + suite.branchName + "\", true, false, null, \"" + prNum + "\", null, false)' ";
         mInfo += " title='trigger build at top of queue'>top</a><br>";
     }
 
diff --git a/tcbot-teamcity/src/main/java/org/apache/ignite/tcservice/TeamcityServiceConnection.java b/tcbot-teamcity/src/main/java/org/apache/ignite/tcservice/TeamcityServiceConnection.java
index bc8e825..aa53420 100644
--- a/tcbot-teamcity/src/main/java/org/apache/ignite/tcservice/TeamcityServiceConnection.java
+++ b/tcbot-teamcity/src/main/java/org/apache/ignite/tcservice/TeamcityServiceConnection.java
@@ -172,7 +172,7 @@ public class TeamcityServiceConnection implements ITeamcity {
         String comments = " <comment><text>" +
             Strings.nullToEmpty(freeTextComments) + ", " +
             "Build triggered from Ignite TC Bot" +
-            " [cleanRebuild=" + cleanRebuild + ", top=" + queueAtTop + "]" +
+            " [cleanSources=" + cleanRebuild + ", cleanRebuild=" + cleanRebuild + ", top=" + queueAtTop + "]" +
             "</text></comment>\n";
 
         Map<String, Object> props = new HashMap<>();