diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2018-06-27 13:07:03 +0200 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2018-06-27 13:07:03 +0200 |
| commit | 43da5e3a1baae2b2fa4f00e2218632e882654517 (patch) | |
| tree | ffe4f2db60cb9e4b0ca7696d118ddebbb907cb31 | |
| parent | 43e60f7e0961a7b3bdb6813703c41cee2680a0dd (diff) | |
pkg/vcs: move from pkg/git
Rename pkg/git to pkg/vcs because we need to support not only git.
| -rw-r--r-- | dashboard/app/jobs.go | 6 | ||||
| -rw-r--r-- | pkg/bisect/bisect.go | 60 | ||||
| -rw-r--r-- | pkg/instance/instance.go | 4 | ||||
| -rw-r--r-- | pkg/vcs/git.go (renamed from pkg/git/git.go) | 4 | ||||
| -rw-r--r-- | pkg/vcs/git_test.go (renamed from pkg/git/git_test.go) | 2 | ||||
| -rw-r--r-- | syz-ci/jobs.go | 12 | ||||
| -rw-r--r-- | syz-ci/manager.go | 14 | ||||
| -rw-r--r-- | syz-ci/syzupdater.go | 6 |
8 files changed, 54 insertions, 54 deletions
diff --git a/dashboard/app/jobs.go b/dashboard/app/jobs.go index e0fbc09c1..7148a6b9e 100644 --- a/dashboard/app/jobs.go +++ b/dashboard/app/jobs.go @@ -12,7 +12,7 @@ import ( "github.com/google/syzkaller/dashboard/dashapi" "github.com/google/syzkaller/pkg/email" - "github.com/google/syzkaller/pkg/git" + "github.com/google/syzkaller/pkg/vcs" "golang.org/x/net/context" "google.golang.org/appengine/datastore" "google.golang.org/appengine/log" @@ -85,9 +85,9 @@ func addTestJob(c context.Context, bug *Bug, bugKey *datastore.Key, bugReporting } switch { - case !git.CheckRepoAddress(repo): + case !vcs.CheckRepoAddress(repo): return fmt.Sprintf("%q does not look like a valid git repo address.", repo), nil - case !git.CheckBranch(branch) && !git.CheckCommitHash(branch): + case !vcs.CheckBranch(branch) && !vcs.CheckCommitHash(branch): return fmt.Sprintf("%q does not look like a valid git branch or commit.", branch), nil case crash.ReproC == 0 && crash.ReproSyz == 0: return "This crash does not have a reproducer. I cannot test it.", nil diff --git a/pkg/bisect/bisect.go b/pkg/bisect/bisect.go index 78ac998a4..3dab05290 100644 --- a/pkg/bisect/bisect.go +++ b/pkg/bisect/bisect.go @@ -10,9 +10,9 @@ import ( "time" "github.com/google/syzkaller/pkg/build" - "github.com/google/syzkaller/pkg/git" "github.com/google/syzkaller/pkg/instance" "github.com/google/syzkaller/pkg/osutil" + "github.com/google/syzkaller/pkg/vcs" "github.com/google/syzkaller/syz-manager/mgrconfig" ) @@ -51,7 +51,7 @@ type ReproConfig struct { type env struct { cfg *Config - head *git.Commit + head *vcs.Commit inst *instance.Env numTests int buildTime time.Duration @@ -62,7 +62,7 @@ type buildEnv struct { compiler string } -func Run(cfg *Config) (*git.Commit, error) { +func Run(cfg *Config) (*vcs.Commit, error) { env := &env{ cfg: cfg, } @@ -92,13 +92,13 @@ func Run(cfg *Config) (*git.Commit, error) { return res, nil } -func (env *env) bisect() (*git.Commit, error) { +func (env *env) bisect() (*vcs.Commit, error) { cfg := env.cfg var err error if env.inst, err = instance.NewEnv(&cfg.Manager); err != nil { return nil, err } - if env.head, err = git.Poll(cfg.Manager.KernelSrc, cfg.Kernel.Repo, cfg.Kernel.Branch); err != nil { + if env.head, err = vcs.Poll(cfg.Manager.KernelSrc, cfg.Kernel.Repo, cfg.Kernel.Branch); err != nil { return nil, err } if err := build.Clean(cfg.Manager.TargetOS, cfg.Manager.TargetArch, @@ -109,12 +109,12 @@ func (env *env) bisect() (*git.Commit, error) { if err := env.inst.BuildSyzkaller(cfg.Syzkaller.Repo, cfg.Syzkaller.Commit); err != nil { return nil, err } - if _, err := git.SwitchCommit(cfg.Manager.KernelSrc, cfg.Kernel.Commit); err != nil { + if _, err := vcs.SwitchCommit(cfg.Manager.KernelSrc, cfg.Kernel.Commit); err != nil { return nil, err } if res, err := env.test(); err != nil { return nil, err - } else if res != git.BisectBad { + } else if res != vcs.BisectBad { return nil, fmt.Errorf("the crash wasn't reproduced on the original commit") } res, bad, good, err := env.commitRange() @@ -127,44 +127,44 @@ func (env *env) bisect() (*git.Commit, error) { if good == "" { return nil, nil // still not fixed } - return git.Bisect(cfg.Manager.KernelSrc, bad, good, cfg.Trace, func() (git.BisectResult, error) { + return vcs.Bisect(cfg.Manager.KernelSrc, bad, good, cfg.Trace, func() (vcs.BisectResult, error) { res, err := env.test() if cfg.Fix { - if res == git.BisectBad { - res = git.BisectGood - } else if res == git.BisectGood { - res = git.BisectBad + if res == vcs.BisectBad { + res = vcs.BisectGood + } else if res == vcs.BisectGood { + res = vcs.BisectBad } } return res, err }) } -func (env *env) commitRange() (*git.Commit, string, string, error) { +func (env *env) commitRange() (*vcs.Commit, string, string, error) { if env.cfg.Fix { return env.commitRangeForFix() } return env.commitRangeForBug() } -func (env *env) commitRangeForFix() (*git.Commit, string, string, error) { +func (env *env) commitRangeForFix() (*vcs.Commit, string, string, error) { env.log("testing current HEAD %v", env.head.Hash) - if _, err := git.SwitchCommit(env.cfg.Manager.KernelSrc, env.head.Hash); err != nil { + if _, err := vcs.SwitchCommit(env.cfg.Manager.KernelSrc, env.head.Hash); err != nil { return nil, "", "", err } res, err := env.test() if err != nil { return nil, "", "", err } - if res != git.BisectGood { + if res != vcs.BisectGood { return nil, "", "", nil } return nil, env.head.Hash, env.cfg.Kernel.Commit, nil } -func (env *env) commitRangeForBug() (*git.Commit, string, string, error) { +func (env *env) commitRangeForBug() (*vcs.Commit, string, string, error) { cfg := env.cfg - tags, err := git.PreviousReleaseTags(cfg.Manager.KernelSrc, cfg.Kernel.Commit) + tags, err := vcs.PreviousReleaseTags(cfg.Manager.KernelSrc, cfg.Kernel.Commit) if err != nil { return nil, "", "", err } @@ -183,7 +183,7 @@ func (env *env) commitRangeForBug() (*git.Commit, string, string, error) { lastBad := cfg.Kernel.Commit for i, tag := range tags { env.log("testing release %v", tag) - commit, err := git.SwitchCommit(cfg.Manager.KernelSrc, tag) + commit, err := vcs.SwitchCommit(cfg.Manager.KernelSrc, tag) if err != nil { return nil, "", "", err } @@ -191,10 +191,10 @@ func (env *env) commitRangeForBug() (*git.Commit, string, string, error) { if err != nil { return nil, "", "", err } - if res == git.BisectGood { + if res == vcs.BisectGood { return nil, lastBad, tag, nil } - if res == git.BisectBad { + if res == vcs.BisectBad { lastBad = tag } if i == len(tags)-1 { @@ -204,10 +204,10 @@ func (env *env) commitRangeForBug() (*git.Commit, string, string, error) { panic("unreachable") } -func (env *env) test() (git.BisectResult, error) { +func (env *env) test() (vcs.BisectResult, error) { cfg := env.cfg env.numTests++ - current, err := git.HeadCommit(cfg.Manager.KernelSrc) + current, err := vcs.HeadCommit(cfg.Manager.KernelSrc) if err != nil { return 0, err } @@ -235,26 +235,26 @@ func (env *env) test() (git.BisectResult, error) { } else { env.log("%v", err) } - return git.BisectSkip, nil + return vcs.BisectSkip, nil } testStart := time.Now() results, err := env.inst.Test(8, cfg.Repro.Syz, cfg.Repro.Opts, cfg.Repro.C) env.testTime += time.Since(testStart) if err != nil { env.log("failed: %v", err) - return git.BisectSkip, nil + return vcs.BisectSkip, nil } bad, good := env.processResults(current, results) - res := git.BisectSkip + res := vcs.BisectSkip if bad != 0 { - res = git.BisectBad + res = vcs.BisectBad } else if good != 0 { - res = git.BisectGood + res = vcs.BisectGood } return res, nil } -func (env *env) processResults(current *git.Commit, results []error) (bad, good int) { +func (env *env) processResults(current *vcs.Commit, results []error) (bad, good int) { var verdicts []string for i, res := range results { if res == nil { @@ -303,7 +303,7 @@ func (env *env) processResults(current *git.Commit, results []error) (bad, good // Note: linux-specific. func (env *env) buildEnvForCommit(commit string) (*buildEnv, error) { cfg := env.cfg - tags, err := git.PreviousReleaseTags(cfg.Manager.KernelSrc, commit) + tags, err := vcs.PreviousReleaseTags(cfg.Manager.KernelSrc, commit) if err != nil { return nil, err } diff --git a/pkg/instance/instance.go b/pkg/instance/instance.go index 4e28e0b92..a41a4cbc2 100644 --- a/pkg/instance/instance.go +++ b/pkg/instance/instance.go @@ -16,10 +16,10 @@ import ( "github.com/google/syzkaller/pkg/build" "github.com/google/syzkaller/pkg/csource" - "github.com/google/syzkaller/pkg/git" "github.com/google/syzkaller/pkg/log" "github.com/google/syzkaller/pkg/osutil" "github.com/google/syzkaller/pkg/report" + "github.com/google/syzkaller/pkg/vcs" "github.com/google/syzkaller/prog" "github.com/google/syzkaller/syz-manager/mgrconfig" "github.com/google/syzkaller/vm" @@ -59,7 +59,7 @@ func (env *Env) BuildSyzkaller(repo, commit string) error { if srcIndex == -1 { return fmt.Errorf("syzkaller path %q is not in GOPATH", cfg.Syzkaller) } - if _, err := git.CheckoutCommit(cfg.Syzkaller, repo, commit); err != nil { + if _, err := vcs.CheckoutCommit(cfg.Syzkaller, repo, commit); err != nil { return fmt.Errorf("failed to checkout syzkaller repo: %v", err) } cmd := osutil.Command("make", "target") diff --git a/pkg/git/git.go b/pkg/vcs/git.go index 899930bff..e942b3c39 100644 --- a/pkg/git/git.go +++ b/pkg/vcs/git.go @@ -1,8 +1,8 @@ // Copyright 2017 syzkaller project authors. All rights reserved. // Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. -// Package git provides helper functions for working with git repositories. -package git +// Package vcs provides helper functions for working with git repositories. +package vcs import ( "bufio" diff --git a/pkg/git/git_test.go b/pkg/vcs/git_test.go index 86f033acf..6b7cf183e 100644 --- a/pkg/git/git_test.go +++ b/pkg/vcs/git_test.go @@ -1,7 +1,7 @@ // Copyright 2017 syzkaller project authors. All rights reserved. // Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. -package git +package vcs import ( "reflect" diff --git a/syz-ci/jobs.go b/syz-ci/jobs.go index fbbb60228..cdb677ead 100644 --- a/syz-ci/jobs.go +++ b/syz-ci/jobs.go @@ -12,10 +12,10 @@ import ( "github.com/google/syzkaller/dashboard/dashapi" "github.com/google/syzkaller/pkg/build" - "github.com/google/syzkaller/pkg/git" "github.com/google/syzkaller/pkg/instance" "github.com/google/syzkaller/pkg/log" "github.com/google/syzkaller/pkg/osutil" + "github.com/google/syzkaller/pkg/vcs" "github.com/google/syzkaller/syz-manager/mgrconfig" ) @@ -185,16 +185,16 @@ func (jp *JobProcessor) test(job *Job) error { } log.Logf(0, "job: fetching kernel...") - var kernelCommit *git.Commit - if git.CheckCommitHash(req.KernelBranch) { - kernelCommit, err = git.CheckoutCommit(kernelDir, req.KernelRepo, req.KernelBranch) + var kernelCommit *vcs.Commit + if vcs.CheckCommitHash(req.KernelBranch) { + kernelCommit, err = vcs.CheckoutCommit(kernelDir, req.KernelRepo, req.KernelBranch) if err != nil { return fmt.Errorf("failed to checkout kernel repo %v on commit %v: %v", req.KernelRepo, req.KernelBranch, err) } resp.Build.KernelBranch = "" } else { - kernelCommit, err = git.CheckoutBranch(kernelDir, req.KernelRepo, req.KernelBranch) + kernelCommit, err = vcs.CheckoutBranch(kernelDir, req.KernelRepo, req.KernelBranch) if err != nil { return fmt.Errorf("failed to checkout kernel repo %v/%v: %v", req.KernelRepo, req.KernelBranch, err) @@ -208,7 +208,7 @@ func (jp *JobProcessor) test(job *Job) error { return fmt.Errorf("kernel clean failed: %v", err) } if len(req.Patch) != 0 { - if err := git.Patch(kernelDir, req.Patch); err != nil { + if err := vcs.Patch(kernelDir, req.Patch); err != nil { return err } } diff --git a/syz-ci/manager.go b/syz-ci/manager.go index 7e9d2dcf6..dadc980bd 100644 --- a/syz-ci/manager.go +++ b/syz-ci/manager.go @@ -13,12 +13,12 @@ import ( "github.com/google/syzkaller/dashboard/dashapi" "github.com/google/syzkaller/pkg/build" "github.com/google/syzkaller/pkg/config" - "github.com/google/syzkaller/pkg/git" "github.com/google/syzkaller/pkg/hash" "github.com/google/syzkaller/pkg/instance" "github.com/google/syzkaller/pkg/log" "github.com/google/syzkaller/pkg/osutil" "github.com/google/syzkaller/pkg/report" + "github.com/google/syzkaller/pkg/vcs" "github.com/google/syzkaller/syz-manager/mgrconfig" ) @@ -147,7 +147,7 @@ loop: for { if time.Since(nextBuildTime) >= 0 { rebuildAfter := buildRetryPeriod - commit, err := git.Poll(mgr.kernelDir, mgr.mgrcfg.Repo, mgr.mgrcfg.Branch) + commit, err := vcs.Poll(mgr.kernelDir, mgr.mgrcfg.Repo, mgr.mgrcfg.Branch) if err != nil { mgr.Errorf("failed to poll: %v", err) } else { @@ -237,7 +237,7 @@ func (mgr *Manager) checkLatest() *BuildInfo { } func (mgr *Manager) build() error { - kernelCommit, err := git.HeadCommit(mgr.kernelDir) + kernelCommit, err := vcs.HeadCommit(mgr.kernelDir) if err != nil { return fmt.Errorf("failed to get git HEAD commit: %v", err) } @@ -535,16 +535,16 @@ func (mgr *Manager) pollCommits(buildCommit string) ([]string, []dashapi.FixComm } var present []string if len(resp.PendingCommits) != 0 { - commits, err := git.ListRecentCommits(mgr.kernelDir, buildCommit) + commits, err := vcs.ListRecentCommits(mgr.kernelDir, buildCommit) if err != nil { return nil, nil, err } m := make(map[string]bool, len(commits)) for _, com := range commits { - m[git.CanonicalizeCommit(com)] = true + m[vcs.CanonicalizeCommit(com)] = true } for _, com := range resp.PendingCommits { - if m[git.CanonicalizeCommit(com)] { + if m[vcs.CanonicalizeCommit(com)] { present = append(present, com) } } @@ -554,7 +554,7 @@ func (mgr *Manager) pollCommits(buildCommit string) ([]string, []dashapi.FixComm // TODO(dvyukov): mmots contains weird squashed commits titled "linux-next" or "origin", // which contain hundreds of other commits. This makes fix attribution totally broken. if mgr.mgrcfg.Repo != "git://git.cmpxchg.org/linux-mmots.git" { - commits, err := git.ExtractFixTagsFromCommits(mgr.kernelDir, buildCommit, resp.ReportEmail) + commits, err := vcs.ExtractFixTagsFromCommits(mgr.kernelDir, buildCommit, resp.ReportEmail) if err != nil { return nil, nil, err } diff --git a/syz-ci/syzupdater.go b/syz-ci/syzupdater.go index d1f9842ef..286aa1fbc 100644 --- a/syz-ci/syzupdater.go +++ b/syz-ci/syzupdater.go @@ -12,9 +12,9 @@ import ( "syscall" "time" - "github.com/google/syzkaller/pkg/git" "github.com/google/syzkaller/pkg/log" "github.com/google/syzkaller/pkg/osutil" + "github.com/google/syzkaller/pkg/vcs" "github.com/google/syzkaller/syz-manager/mgrconfig" ) @@ -186,7 +186,7 @@ func (upd *SyzUpdater) UpdateAndRestart() { } func (upd *SyzUpdater) pollAndBuild(lastCommit string) string { - commit, err := git.Poll(upd.syzkallerDir, upd.repo, upd.branch) + commit, err := vcs.Poll(upd.syzkallerDir, upd.repo, upd.branch) if err != nil { log.Logf(0, "syzkaller: failed to poll: %v", err) } else { @@ -203,7 +203,7 @@ func (upd *SyzUpdater) pollAndBuild(lastCommit string) string { } func (upd *SyzUpdater) build() error { - commit, err := git.HeadCommit(upd.syzkallerDir) + commit, err := vcs.HeadCommit(upd.syzkallerDir) if err != nil { return fmt.Errorf("failed to get HEAD commit: %v", err) } |
