dashboard/app, syz-ci: upload target OS/arch to dashboard

This commit is contained in:
Dmitry Vyukov 2017-09-19 16:53:47 +02:00
parent 62114d6064
commit d394531e95
5 changed files with 26 additions and 0 deletions

View File

@ -200,6 +200,9 @@ func apiUploadBuild(c context.Context, ns string, r *http.Request) (interface{},
Namespace: ns,
Manager: req.Manager,
ID: req.ID,
OS: req.OS,
Arch: req.Arch,
VMArch: req.VMArch,
SyzkallerCommit: req.SyzkallerCommit,
CompilerID: req.CompilerID,
KernelRepo: req.KernelRepo,

View File

@ -28,6 +28,9 @@ type Build struct {
Namespace string
Manager string
ID string // unique ID generated by syz-ci
OS string
Arch string
VMArch string
SyzkallerCommit string
CompilerID string
KernelRepo string

View File

@ -223,6 +223,9 @@ func createBugReport(c context.Context, bug *Bug, crash *Crash, bugReporting *Bu
Log: crashLog,
Report: report,
Maintainers: crash.Maintainers,
OS: build.OS,
Arch: build.Arch,
VMArch: build.VMArch,
CompilerID: build.CompilerID,
KernelRepo: build.KernelRepo,
KernelBranch: build.KernelBranch,

View File

@ -36,6 +36,9 @@ func New(client, addr, key string) *Dashboard {
type Build struct {
Manager string
ID string
OS string
Arch string
VMArch string
SyzkallerCommit string
CompilerID string
KernelRepo string
@ -141,6 +144,9 @@ type BugReport struct {
Title string
Maintainers []string
CC []string // additional CC emails
OS string
Arch string
VMArch string
CompilerID string
KernelRepo string
KernelBranch string

View File

@ -371,6 +371,14 @@ func (mgr *Manager) uploadBuild(info *BuildInfo) error {
if err != nil {
return fmt.Errorf("failed to read kernel.config: %v", err)
}
mgrcfg := new(mgrconfig.Config)
if err := config.LoadData(mgr.mgrcfg.Manager_Config, mgrcfg); err != nil {
return fmt.Errorf("failed to load manager %v config: %v", mgr.name, err)
}
os, vmarch, arch, err := mgrconfig.SplitTarget(mgrcfg.Target)
if err != nil {
return fmt.Errorf("failed to load manager %v config: %v", mgr.name, err)
}
commits, err := mgr.pollCommits(info.KernelCommit)
if err != nil {
// This is not critical for operation.
@ -379,6 +387,9 @@ func (mgr *Manager) uploadBuild(info *BuildInfo) error {
build := &dashapi.Build{
Manager: mgr.name,
ID: info.Tag,
OS: os,
Arch: arch,
VMArch: vmarch,
SyzkallerCommit: syzkallerCommit,
CompilerID: info.CompilerID,
KernelRepo: info.KernelRepo,