Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -94,17 +94,17 @@
<build>
<plugins>
<plugin>
<groupId>org.jvnet.hudson.tools</groupId>
<groupId>org.jenkins-ci.tools</groupId>
<artifactId>maven-hpi-plugin</artifactId>
<version>3.0.1</version>
<version>2.0</version>
<extensions>true</extensions>
<configuration>
<disabledTestInjection>true</disabledTestInjection>
</configuration>
</plugin>
<plugin>
<artifactId>maven-scm-plugin</artifactId>
<version>1.9</version>
<version>1.9.5</version>
<configuration>
<tag>${project.artifactId}-${project.version}</tag>
</configuration>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,14 +40,8 @@ public class PipelineAggregator extends View {
private int buildHistorySize;

private boolean useCondensedTables;

public boolean isUseScrollingCommits() {
return useScrollingCommits;
}

public void setUseScrollingCommits(boolean useScrollingCommits) {
this.useScrollingCommits = useScrollingCommits;
}

private boolean onlyLastBuild;

private boolean useScrollingCommits;

Expand All @@ -60,6 +54,7 @@ public PipelineAggregator(String name, String viewName) {
this.fontSize = 16;
this.buildHistorySize = 16;
this.useCondensedTables = false;
this.onlyLastBuild = false;
this.filterRegex = null;
}

Expand Down Expand Up @@ -88,6 +83,22 @@ public boolean isUseCondensedTables() {
return useCondensedTables;
}

public boolean isUseScrollingCommits() {
return useScrollingCommits;
}

public void setUseScrollingCommits(boolean useScrollingCommits) {
this.useScrollingCommits = useScrollingCommits;
}

public boolean isOnlyLastBuild() {
return onlyLastBuild;
}

public void setOnlyLastBuild(boolean onlyLastBuild) {
this.onlyLastBuild = onlyLastBuild;
}

public String getTableStyle() {
return useCondensedTables ? "table-condensed" : "";
}
Expand All @@ -103,6 +114,7 @@ protected void submit(StaplerRequest req) throws ServletException, IOException {
this.buildHistorySize = json.getInt("buildHistorySize");
this.useCondensedTables = json.getBoolean("useCondensedTables");
this.useScrollingCommits = json.getBoolean("useScrollingCommits");
this.onlyLastBuild = json.getBoolean("onlyLastBuild");
if (json.get("useRegexFilter") != null) {
String regexToTest = req.getParameter("filterRegex");
try {
Expand Down Expand Up @@ -155,18 +167,26 @@ public Collection<Build> getBuildHistory() {
Pattern r = filterRegex != null ? Pattern.compile(filterRegex) : null;
List<WorkflowJob> fJobs = filterJobs(jobs, r);
List<Build> l = new ArrayList();
RunList<WorkflowRun> builds = new RunList(fJobs).limit(buildHistorySize);
for ( WorkflowRun build : builds){
List<ChangeLogSet<? extends ChangeLogSet.Entry>> changeLogSets = ((WorkflowRun) build).getChangeSets();
Result result = build.getResult();
l.add(new Build(build.getDisplayName(),
build.getFullDisplayName(),
build.getUrl(),
build.getNumber(),
build.getStartTimeInMillis(),
build.getDuration(),
result == null ? "BUILDING" : result.toString(), changeLogSets));
}
List<WorkflowRun> wfr = new ArrayList<WorkflowRun>();
if( !this.onlyLastBuild ) {
RunList<WorkflowRun> builds = new RunList(fJobs).limit(buildHistorySize);
for ( WorkflowRun build : builds){
wfr.add(build);
}
} else {
for(WorkflowJob job : fJobs) {
wfr.add(job.getLastBuild());
}
}
if( wfr != null && wfr.size() > 0 ) {
for (WorkflowRun build : wfr) {
List<ChangeLogSet<? extends ChangeLogSet.Entry>> changeLogSets = ((WorkflowRun) build).getChangeSets();
Result result = build.getResult();
l.add(new Build(build.getDisplayName(), build.getFullDisplayName(), build.getUrl(), build.getNumber(),
build.getStartTimeInMillis(), build.getDuration(), result == null ? "BUILDING" : result.toString(),
changeLogSets));
}
}
return l;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,5 +20,8 @@
<f:entry title="${%Use auto-rolling commits}">
<f:checkbox name="useScrollingCommits" field="useScrollingCommits" />
</f:entry>
<f:entry title="${%Only display last build}">
<f:checkbox name="onlyLastBuild" field="onlyLastBuild" />
</f:entry>
</f:section>
</j:jelly>
Original file line number Diff line number Diff line change
Expand Up @@ -50,9 +50,10 @@
var nodeStatuses = [];
var buildHistorySize = ${it.buildHistorySize};
var useScrollingCommits= ${it.useScrollingCommits};
var onlyLastBuild= ${it.onlyLastBuild};
var rollingCommits = false;
function reload_info (interval) {
reload_jenkins_build_history('#jenkinsBuildHistory', jenkinsUrl + '/${it.url}', buildHistorySize, useScrollingCommits);
reload_jenkins_build_history('#jenkinsBuildHistory', jenkinsUrl + '/${it.url}', buildHistorySize, useScrollingCommits, onlyLastBuild);
setTimeout(function(){ reload_info(interval); }, interval);
}

Expand Down
2 changes: 1 addition & 1 deletion src/main/webapp/js/pipeline-aggregator.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ function format_interval(iv) {
return ivStr;
}

function reload_jenkins_build_history(tableSelector, viewUrl, buildHistorySize, useScrollingCommits) {
function reload_jenkins_build_history(tableSelector, viewUrl, buildHistorySize, useScrollingCommits, onlyLastBuild) {
$.getJSON(viewUrl + 'api/json', function (data) {
// Remove all existing rows
$(tableSelector + ' tbody').find('tr').remove();
Expand Down