From 5509d25c1dbc3ef6734ee2136f2ffd8d7b0d87e9 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Thu, 6 Sep 2018 11:15:56 +0200 Subject: syz-ci: allow manager http address auto-assignment Manually assigning http addresses is tedious and error-prone. --- syz-ci/manager.go | 4 ++++ syz-ci/syz-ci.go | 6 ++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/syz-ci/manager.go b/syz-ci/manager.go index 3c254ad2f..7145fbcbd 100644 --- a/syz-ci/manager.go +++ b/syz-ci/manager.go @@ -103,6 +103,10 @@ func createManager(cfg *Config, mgrcfg *ManagerConfig, stop chan struct{}) *Mana } managercfg.Name = cfg.Name + "-" + mgrcfg.Name managercfg.Syzkaller = filepath.FromSlash("syzkaller/current") + if managercfg.HTTP == "" && cfg.ManagerPort != 0 { + managercfg.HTTP = fmt.Sprintf(":%v", cfg.ManagerPort) + cfg.ManagerPort++ + } kernelDir := filepath.Join(dir, "kernel") repo, err := vcs.NewRepo(managercfg.TargetOS, managercfg.Type, kernelDir) diff --git a/syz-ci/syz-ci.go b/syz-ci/syz-ci.go index 4c0de5929..772accf1f 100644 --- a/syz-ci/syz-ci.go +++ b/syz-ci/syz-ci.go @@ -68,8 +68,10 @@ import ( var flagConfig = flag.String("config", "", "config file") type Config struct { - Name string `json:"name"` - HTTP string `json:"http"` + Name string `json:"name"` + HTTP string `json:"http"` + // If manager http address is not specified, give it an address starting from this port. Optional. + ManagerPort int `json:"manager_port_start"` DashboardAddr string `json:"dashboard_addr"` // Optional. DashboardClient string `json:"dashboard_client"` // Optional. DashboardKey string `json:"dashboard_key"` // Optional. -- cgit mrf-deployment