提交 70a197fb 编写于 作者: J Jesse Glick

When printing AbstractBuild.BuildingRemotely message to log, also indicate any...

When printing AbstractBuild.BuildingRemotely message to log, also indicate any (non-self) labels of the node.
This is invaluable when diagnosing problems with a build on a cloud slave after the slave has been deprovisioned.
If the node name by itself does not indicate what type of machine it was, you would have a hard time guessing.
上级 037393c2
......@@ -36,6 +36,7 @@ import hudson.console.ModelHyperlinkNote;
import hudson.matrix.MatrixConfiguration;
import hudson.model.Fingerprint.BuildPtr;
import hudson.model.Fingerprint.RangeSet;
import hudson.model.labels.LabelAtom;
import hudson.model.listeners.RunListener;
import hudson.model.listeners.SCMListener;
import hudson.scm.ChangeLogParser;
......@@ -540,11 +541,30 @@ public abstract class AbstractBuild<P extends AbstractProject<P,R>,R extends Abs
this.listener = listener;
launcher = createLauncher(listener);
if (!Jenkins.getInstance().getNodes().isEmpty())
listener.getLogger().print(node instanceof Jenkins ? Messages.AbstractBuild_BuildingOnMaster() :
Messages.AbstractBuild_BuildingRemotely(ModelHyperlinkNote.encodeTo("/computer/" + builtOn, builtOn)));
else
listener.getLogger().print(Messages.AbstractBuild_Building());
if (!Jenkins.getInstance().getNodes().isEmpty()) {
if (node instanceof Jenkins) {
listener.getLogger().print(Messages.AbstractBuild_BuildingOnMaster());
} else {
listener.getLogger().print(Messages.AbstractBuild_BuildingRemotely(ModelHyperlinkNote.encodeTo("/computer/" + builtOn, builtOn)));
Set<LabelAtom> assignedLabels = new HashSet<LabelAtom>(node.getAssignedLabels());
assignedLabels.remove(node.getSelfLabel());
if (!assignedLabels.isEmpty()) {
boolean first = true;
for (LabelAtom label : assignedLabels) {
if (first) {
listener.getLogger().print(" (");
first = false;
} else {
listener.getLogger().print(' ');
}
listener.getLogger().print(label.getName());
}
listener.getLogger().print(')');
}
}
} else {
listener.getLogger().print(Messages.AbstractBuild_Building());
}
lease = decideWorkspace(node, Computer.currentComputer().getWorkspaceList());
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册