summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authorGeorge Karpenkov <ekarpenkov@apple.com>2017-10-30 19:40:33 +0000
committerGeorge Karpenkov <ekarpenkov@apple.com>2017-10-30 19:40:33 +0000
commit13cb2b777469657b202e5ad4afc12695f5e811af (patch)
tree9dbeeaaab8fef6ab0e505fe8948a05c6b6a5f089 /utils
parentdf09bf11928579bf2d1c55b21ab0f92f8903eb38 (diff)
[analyzer] [tests] Remove empty folders in reference results, do not store diffs.txt
Storing diffs.txt is now redundant, as we simply dump the CmpRuns output to stdout (it is saved in CI and tends to be small). Not generating those files enables us to remove empty folders, which confuse git, as it would not add them with reference results. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@316948 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils')
-rwxr-xr-xutils/analyzer/SATestBuild.py16
-rwxr-xr-xutils/analyzer/SATestUpdateDiffs.py13
2 files changed, 12 insertions, 17 deletions
diff --git a/utils/analyzer/SATestBuild.py b/utils/analyzer/SATestBuild.py
index 3c694fb038..60c8796e33 100755
--- a/utils/analyzer/SATestBuild.py
+++ b/utils/analyzer/SATestBuild.py
@@ -120,8 +120,6 @@ BuildLogName = "run_static_analyzer.log"
# displayed when buildbot detects a build failure.
NumOfFailuresInSummary = 10
FailuresSummaryFileName = "failures.txt"
-# Summary of the result diffs.
-DiffsSummaryFileName = "diffs.txt"
# The scan-build result directory.
SBOutputDirName = "ScanBuildResults"
@@ -434,6 +432,16 @@ def CleanUpEmptyPlists(SBOutputDir):
continue
+def CleanUpEmptyFolders(SBOutputDir):
+ """
+ Remove empty folders from results, as git would not store them.
+ """
+ Subfolders = glob.glob(SBOutputDir + "/*")
+ for Folder in Subfolders:
+ if not os.listdir(Folder):
+ os.removedirs(Folder)
+
+
def checkBuild(SBOutputDir):
"""
Given the scan-build output directory, checks if the build failed
@@ -446,6 +454,7 @@ def checkBuild(SBOutputDir):
TotalFailed = len(Failures)
if TotalFailed == 0:
CleanUpEmptyPlists(SBOutputDir)
+ CleanUpEmptyFolders(SBOutputDir)
Plists = glob.glob(SBOutputDir + "/*/*.plist")
print "Number of bug reports (non-empty plist files) produced: %d" %\
len(Plists)
@@ -519,9 +528,8 @@ def runCmpResults(Dir, Strictness=0):
if Verbose == 1:
print " Comparing Results: %s %s" % (RefDir, NewDir)
- DiffsPath = os.path.join(NewDir, DiffsSummaryFileName)
PatchedSourceDirPath = os.path.join(Dir, PatchedSourceDirName)
- Opts = CmpRuns.CmpOptions(DiffsPath, "", PatchedSourceDirPath)
+ Opts = CmpRuns.CmpOptions(rootA="", rootB=PatchedSourceDirPath)
# Scan the results, delete empty plist files.
NumDiffs, ReportsInRef, ReportsInNew = \
CmpRuns.dumpScanBuildResultsDiff(RefDir, NewDir, Opts, False)
diff --git a/utils/analyzer/SATestUpdateDiffs.py b/utils/analyzer/SATestUpdateDiffs.py
index c1c3a25cf5..2282af15a5 100755
--- a/utils/analyzer/SATestUpdateDiffs.py
+++ b/utils/analyzer/SATestUpdateDiffs.py
@@ -54,22 +54,9 @@ def updateReferenceResults(ProjName, ProjBuildMode):
# Clean up the generated difference results.
SATestBuild.cleanupReferenceResults(RefResultsPath)
- # Remove the created .diffs file before adding.
- removeDiffsSummaryFiles(RefResultsPath)
-
runCmd('git add "%s"' % (RefResultsPath,))
-def removeDiffsSummaryFiles(RefResultsPath):
- """
- Remove all auto-generated .diffs files in reference data.
- """
- for (Dirpath, Dirnames, Filenames) in os.walk(RefResultsPath):
- if SATestBuild.DiffsSummaryFileName in Filenames:
- runCmd("rm '%s'" % os.path.join(
- Dirpath, SATestBuild.DiffsSummaryFileName))
-
-
def main(argv):
if len(argv) == 2 and argv[1] in ('-h', '--help'):
print >> sys.stderr, "Update static analyzer reference results based "\