From a9e7e9e3a26f5e19a9d96c1a27717aa83e0bdbcd Mon Sep 17 00:00:00 2001 From: Taras Madan Date: Fri, 9 Aug 2024 12:40:12 +0200 Subject: covermerger: add web-git source provider It allows to speed up the single file calculations because we don't need git clone. --- tools/syz-covermerger/syz_covermerger.go | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'tools') diff --git a/tools/syz-covermerger/syz_covermerger.go b/tools/syz-covermerger/syz_covermerger.go index 2f2d820a7..d3b9de2ae 100644 --- a/tools/syz-covermerger/syz_covermerger.go +++ b/tools/syz-covermerger/syz_covermerger.go @@ -31,8 +31,20 @@ var ( flagTotalRows = flag.Int64("total-rows", 0, "[optional] source size, is used for version contol") flagToDashAPI = flag.String("to-dashapi", "", "[optional] dashapi address") flagDashboardClientName = flag.String("dashboard-client-name", "coverage-merger", "[optional]") + flagSrcProvider = flag.String("provider", "git-clone", "[optional] git-clone or web-git") ) +func makeProvider() covermerger.FileVersProvider { + switch *flagSrcProvider { + case "git-clone": + return covermerger.MakeMonoRepo(*flagWorkdir) + case "web-git": + return covermerger.MakeWebGit() + default: + panic(fmt.Sprintf("unknown provider %v", *flagSrcProvider)) + } +} + func main() { flag.Parse() config := &covermerger.Config{ @@ -43,7 +55,7 @@ func main() { Branch: *flagBranch, Commit: *flagCommit, }, - FileVersProvider: covermerger.MakeMonoRepo(*flagWorkdir), + FileVersProvider: makeProvider(), } mergeResult, err := covermerger.MergeCSVData(config, os.Stdin) if err != nil { -- cgit mrf-deployment