Class BuildFailureScanner

java.lang.Object
hudson.model.listeners.RunListener<Run>
com.sonyericsson.jenkins.plugins.bfa.BuildFailureScanner
All Implemented Interfaces:
ExtensionPoint

@Extension(ordinal=11003.0) public class BuildFailureScanner extends RunListener<Run>
Looks for Indications, trying to find the Cause of a problem.
Author:
Tomas Westling <thomas.westling@sonyericsson.com>
  • Field Details

    • ORDINAL

      public static final int ORDINAL
      The ordinal of this extension, one thousand below the GerritTrigger plugin.
      See Also:
  • Constructor Details

    • BuildFailureScanner

      public BuildFailureScanner()
  • Method Details

    • initThreadPool

      @Initializer(after=EXTENSIONS_AUGMENTED) public static void initThreadPool()
      Creates the shared thread pool after extensions have been made available.
    • onStarted

      public void onStarted(Run build, TaskListener listener)
      Overrides:
      onStarted in class RunListener<Run>
    • onCompleted

      public void onCompleted(Run run, @NonNull TaskListener listener)
      Overrides:
      onCompleted in class RunListener<Run>
    • scanIfNotScanned

      public static void scanIfNotScanned(Run build, PrintStream scanLog)
      Scans the build if it should be scanned and it has not already been scanned. If configured, also reports successful builds to the StatisticsLogger.
      Parameters:
      build - the build to scan
      scanLog - log to write information to
    • scan

      public static void scan(Run build, PrintStream scanLog)
      Performs a scan of the build, adds the FailureCauseBuildAction and reports to the StatisticsLogger.
      Parameters:
      build - the build to scan
      scanLog - log to write information to.
    • createSlackMessage

      public static String createSlackMessage(List<FoundFailureCause> foundCauseList, boolean notifySlackOfAllFailures, List<String> slackFailureCauseCategories, String buildName, String buildNum, String buildUrl, PrintStream scanLog)
      Function to create the message for Slack using build and BFA information.
      Parameters:
      foundCauseList - - Build failure causes found in the build
      notifySlackOfAllFailures - - Flag to indicate if all failures should be sent to Slack
      slackFailureCauseCategories - - Failure causes for which to notify Slack (from BFA configuration)
      buildName - - Name of the build
      buildNum - - Build object
      buildUrl - - Full URL of build
      scanLog - - PrintStream for the build log
      Returns:
      String Slack message with failure name, category and description if message successfully created, null otherwise