package main import ( "os" "strings" "go.wit.com/log" ) func repomap() { var changed bool = false if argv.Repomap == "" { return } data, _ := os.ReadFile(argv.Repomap) for _, line := range strings.Split(string(data), "\n") { if line == "" { continue } if strings.HasPrefix(line, "#") { continue } parts := strings.Fields(line) gopath := parts[0] url := "https://" + parts[1] var comment string if len(parts) > 1 { comment = strings.Join(parts[2:], " ") } repo := me.forge.Repos.FindByGoPath(gopath) if repo == nil { if argv.Clone { me.forge.Clone(gopath) } else { log.Info(gopath, "need to clone") } } else { if repo.URL != url { log.Info(gopath, "url wrong", repo.URL, "vs", url) log.Info("\tcomment", comment) repo.URL = url changed = true } if repo.Desc != comment && !(comment == "") { log.Info(gopath, "comment wrong", repo.Desc, "vs", comment) repo.Desc = comment changed = true } } } if changed { me.forge.Repos.ConfigSave() log.Info("config saved") os.Exit(0) } }