diff --git a/core/src/main/java/hudson/widgets/HistoryWidget.java b/core/src/main/java/hudson/widgets/HistoryWidget.java index 5a067bd7c9..582b1d4a32 100644 --- a/core/src/main/java/hudson/widgets/HistoryWidget.java +++ b/core/src/main/java/hudson/widgets/HistoryWidget.java @@ -41,6 +41,7 @@ import java.util.Collections; import java.util.Iterator; import java.util.List; import jenkins.model.HistoricalBuild; +import jenkins.model.experimentalflags.NewJobPageUserExperimentalFlag; import jenkins.util.SystemProperties; import jenkins.widgets.HistoryPageEntry; import jenkins.widgets.HistoryPageFilter; @@ -206,7 +207,8 @@ public class HistoryWidget extends Widget { } protected HistoryPageFilter newPageFilter() { - HistoryPageFilter historyPageFilter = new HistoryPageFilter<>(THRESHOLD); + int maxEntries = new NewJobPageUserExperimentalFlag().getFlagValue() ? NEW_JOB_PAGE_THRESHOLD : THRESHOLD; + HistoryPageFilter historyPageFilter = new HistoryPageFilter<>(maxEntries); historyPageFilter.widget = this; if (newerThan != null) { @@ -280,6 +282,11 @@ public class HistoryWidget extends Widget { static final int THRESHOLD = SystemProperties.getInteger(HistoryWidget.class.getName() + ".threshold", 30); + /** + * Maximum number of builds shown in the builds list when the experimental new job page is enabled. + */ + static final int NEW_JOB_PAGE_THRESHOLD = 10; + public String getNextBuildNumberToFetch() { return nextBuildNumberToFetch; } diff --git a/core/src/main/resources/hudson/widgets/HistoryWidget/entries-new.jelly b/core/src/main/resources/hudson/widgets/HistoryWidget/entries-new.jelly new file mode 100644 index 0000000000..487888c9ae --- /dev/null +++ b/core/src/main/resources/hudson/widgets/HistoryWidget/entries-new.jelly @@ -0,0 +1,34 @@ + + + + + + + + + + diff --git a/core/src/main/resources/hudson/widgets/HistoryWidget/entries.jelly b/core/src/main/resources/hudson/widgets/HistoryWidget/entries.jelly index cae158f1f5..28585a4876 100644 --- a/core/src/main/resources/hudson/widgets/HistoryWidget/entries.jelly +++ b/core/src/main/resources/hudson/widgets/HistoryWidget/entries.jelly @@ -26,23 +26,32 @@ THE SOFTWARE. Render build histories. --> - - - - - - - + + - - - + + + + + + + + + + + - - ${simpleDate == now ? "%Today" : date} - - + + + - - + + ${simpleDate == now ? "%Today" : date} + + + + + + + diff --git a/core/src/main/resources/hudson/widgets/HistoryWidget/entry-new.jelly b/core/src/main/resources/hudson/widgets/HistoryWidget/entry-new.jelly new file mode 100644 index 0000000000..0987e48e56 --- /dev/null +++ b/core/src/main/resources/hudson/widgets/HistoryWidget/entry-new.jelly @@ -0,0 +1,88 @@ + + + + + + + + + + + + + +
+
+ +
${build.iconColor.description}
+
${%JumpToConsole(h.getConsoleProviderFor(build).descriptor.displayName)}
+
+ + + + + +
+
+ ${build.displayName} +
+ +
+ + + +
+ + + +
+
+ + +
+
+
+ +
+ +
+
+
+
+
+ +
+ +
+
+
+
diff --git a/core/src/main/resources/hudson/widgets/HistoryWidget/entry-new.properties b/core/src/main/resources/hudson/widgets/HistoryWidget/entry-new.properties new file mode 100644 index 0000000000..92e5ca8d22 --- /dev/null +++ b/core/src/main/resources/hudson/widgets/HistoryWidget/entry-new.properties @@ -0,0 +1 @@ +JumpToConsole=Click to jump to {0} diff --git a/core/src/main/resources/hudson/widgets/HistoryWidget/entry-skeleton.jelly b/core/src/main/resources/hudson/widgets/HistoryWidget/entry-skeleton.jelly new file mode 100644 index 0000000000..e6c3fb4591 --- /dev/null +++ b/core/src/main/resources/hudson/widgets/HistoryWidget/entry-skeleton.jelly @@ -0,0 +1,45 @@ + + + + +
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+
+ diff --git a/core/src/main/resources/hudson/widgets/HistoryWidget/index-new.jelly b/core/src/main/resources/hudson/widgets/HistoryWidget/index-new.jelly new file mode 100644 index 0000000000..45be6dc923 --- /dev/null +++ b/core/src/main/resources/hudson/widgets/HistoryWidget/index-new.jelly @@ -0,0 +1,79 @@ + + + +