diff --git a/test/ci_support/example_cdash_analyze_and_report_random_failures.py b/test/ci_support/example_cdash_analyze_and_report_random_failures.py index 72da4853e..a6c9e7cba 100755 --- a/test/ci_support/example_cdash_analyze_and_report_random_failures.py +++ b/test/ci_support/example_cdash_analyze_and_report_random_failures.py @@ -30,7 +30,12 @@ def checkTargetTopicRandomFailure(self, targetTopicPair, knownTargetTopicPairs): return targetTopicPair in knownTargetTopicPairs class ExampleExtractBuildNameStrategy: - pass + + def getCoreBuildName(self, fullBuildName): + coreBuildName = fullBuildName.rsplit('-',1)[0] + return coreBuildName + + diff --git a/tribits/ci_support/CDashAnalyzeReportRandomFailures.py b/tribits/ci_support/CDashAnalyzeReportRandomFailures.py index e45b8b819..ebc0d9364 100644 --- a/tribits/ci_support/CDashAnalyzeReportRandomFailures.py +++ b/tribits/ci_support/CDashAnalyzeReportRandomFailures.py @@ -101,10 +101,7 @@ def runDriver(self): for nonpassingTest in initialNonpassingTestsLOD: # Remove unique jenkins run ID from build name - correctedBuildName = nonpassingTest['buildName'].rsplit('-', 1)[0] - # NOTE: This is project specific code. As Ross pointed out, buildName - # contains a lot of Trilinos specific prefix and suffix that should - # be processed by a Strategy class to be more project agnostic. + correctedBuildName = self.extractBuildNameStrategy.getCoreBuildName(nonpassingTest['buildName']) buildNameMax = 80 shortenedBuildName = correctedBuildName[:buildNameMax]