This report will go through your originating workflows (it's trivial to change to all workflows) and list off what non-manual triggers are in place to kick them off. This report has to be used in conjunction with a report template such as the HTML Template.
Meta-Data Script:
import com.urbancode.anthill3.domain.reporting.*;
ReportMetaData rmd = new ReportMetaData();
rmd.addColumn("Project");
rmd.addColumn("Branch");
rmd.addColumn("Triggers");
return rmd;
Report Script:
import com.urbancode.anthill3.domain.profile.*;
import com.urbancode.anthill3.domain.project.*;
import com.urbancode.anthill3.domain.reporting.*;
import com.urbancode.anthill3.domain.trigger.*;
import com.urbancode.anthill3.domain.trigger.scheduled.*;
import com.urbancode.anthill3.domain.workflow.*;
import com.urbancode.anthill3.persistence.*;
Project[] projects = ProjectFactory.getInstance().restoreAll();
ReportOutput output = new ReportOutput(metaData);
for (int i = 0; i < projects.length; i++) {
Workflow[] workflows = projects[i].getOriginatingWorkflowArray();
project = null;
for (int j = 0; j < workflows.length; j++) {
ReportRow row = new ReportRow(output, " ");
if (project != projects[i]) {
row.setColumnValue("Project", projects[i].getName());
project = projects[i];
}
else {
row.setColumnValue("Project", " ");
}
row.setColumnValue("Branch", workflows[j].getName());
StringBuffer depBuf = new StringBuffer();
Trigger[] triggers = workflows[j].getTriggerArray();
StringBuffer trigBuf = new StringBuffer();
if (workflows[j].isOriginating() &&
workflows[j].getBuildProfile().getSourceConfig().
getRepository().getRepositoryTrigger() != null) {
trigBuf.append("Builds on Commit");
if (triggers.length != 0) {
trigBuf.append("<br>");
}
}
for (int k = 0; k < triggers.length; k++) {
trigBuf.append(triggers[k].getName());
if (triggers[k] instanceof ScheduledTrigger) {
trigBuf.append(" - Fires next at: ");
trigBuf.append(triggers[k].getSchedule().
getNextOccurrence().toString());
}
if (k < triggers.length - 1) {
trigBuf.append("<br>");
}
}
row.setColumnValue("Triggers", trigBuf.toString());
output.addRow(row);
}
}
return output;
Related Content