in src/main/java/CodeBuilder.java [634:670]
private void updateDashboard(Build b, CodeBuildAction action, CloudWatchMonitor logMonitor, TaskListener listener) {
if(action != null) {
action.setCurrentStatus(b.getBuildStatus());
logMonitor.setLogsLocation(b.getLogs());
logMonitor.pollForLogs(listener);
action.updateLogs(logMonitor.getLatestLogs());
action.setPhases(b.getPhases());
action.setS3ArtifactURL(generateS3ArtifactURL(artifactTypeOverride, b.getArtifacts().getLocation()));
action.setS3BucketName(b.getArtifacts().getLocation());
if(logMonitor.getLogsLocation() != null) {
LogsLocation logsLocation = logMonitor.getLogsLocation();
if(logsLocation.getGroupName() != null && logsLocation.getStreamName() != null && logsLocation.getDeepLink() != null
&& action.getCloudWatchLogsURL().equals("")) {
String cloudWatchLogsURL = logsLocation.getDeepLink();
action.setCloudWatchLogsURL(cloudWatchLogsURL);
LoggingHelper.log(listener, "CloudWatch dashboard: " + cloudWatchLogsURL);
}
if(logsLocation.getS3DeepLink() != null && b.getPhases() != null && action.getS3LogsURL().equals("")) {
List<BuildPhase> phases = b.getPhases();
for(BuildPhase phase : phases) {
if(phase.getPhaseType() != null && phase.getPhaseType().equals(BuildPhaseType.UPLOAD_ARTIFACTS.toString())) {
if(phase.getContexts() != null && phase.getContexts().get(0) != null && phase.getContexts().get(0).getMessage() != null
&& !phase.getContexts().get(0).getMessage().contains("Error uploading logs:")) {
String s3LogsURL = logsLocation.getS3DeepLink();
action.setS3LogsURL(s3LogsURL);
LoggingHelper.log(listener, "S3 logs location: " + s3LogsURL);
}
}
}
}
}
}
}