Merge "Delete Stale Metrics Files" am: 1c6ca94935

Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2364221

Change-Id: I9e77e2ab0d57a7b07fbcf950f1db092a59ff3e23
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Jason Wu 2022-12-20 16:47:22 +00:00 committed by Automerger Merge Worker
commit 19221c516e

View file

@ -110,6 +110,15 @@ func inList(s string, list []string) bool {
return indexList(s, list) != -1
}
func deleteStaleMetrics(metricsFilePathSlice []string) error {
for _, metricsFilePath := range metricsFilePathSlice {
if err := os.Remove(metricsFilePath); err != nil && !os.IsNotExist(err) {
return fmt.Errorf("Failed to remove %s\nError message: %w", metricsFilePath, err)
}
}
return nil
}
// Main execution of soong_ui. The command format is as follows:
//
// soong_ui <command> [<arg 1> <arg 2> ... <arg n>]
@ -117,7 +126,6 @@ func inList(s string, list []string) bool {
// Command is the type of soong_ui execution. Only one type of
// execution is specified. The args are specific to the command.
func main() {
//TODO(juu): Add logic to soong_ui to delete a hardcoded list of metrics files
shared.ReexecWithDelveMaybe(os.Getenv("SOONG_UI_DELVE"), shared.ResolveDelveBinary())
buildStarted := time.Now()
@ -187,6 +195,12 @@ func main() {
bp2buildMetricsFile := filepath.Join(logsDir, c.logsPrefix+"bp2build_metrics.pb")
soongBuildMetricsFile := filepath.Join(logsDir, c.logsPrefix+"soong_build_metrics.pb")
//Delete the stale metrics files
staleFileSlice := []string{buildErrorFile, rbeMetricsFile, soongMetricsFile, bp2buildMetricsFile, soongBuildMetricsFile}
if err := deleteStaleMetrics(staleFileSlice); err != nil {
log.Fatalln(err)
}
build.PrintOutDirWarning(buildCtx, config)
os.MkdirAll(logsDir, 0777)