aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2018-09-06 11:15:56 +0200
committerDmitry Vyukov <dvyukov@google.com>2018-09-06 11:15:56 +0200
commit5509d25c1dbc3ef6734ee2136f2ffd8d7b0d87e9 (patch)
treebada6a84c4b70c181fec140be83647a04513a9e7
parent596466b38cd4e2de23df479ffd78dece9966d875 (diff)
syz-ci: allow manager http address auto-assignment
Manually assigning http addresses is tedious and error-prone.
-rw-r--r--syz-ci/manager.go4
-rw-r--r--syz-ci/syz-ci.go6
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.