switch some more things to use rill
This commit is contained in:
parent
cee7e25f3d
commit
a822e1e4f0
37
goSrcScan.go
37
goSrcScan.go
|
@ -201,40 +201,3 @@ func (f *Forge) RillRedoGoMod() int {
|
||||||
|
|
||||||
return counter
|
return counter
|
||||||
}
|
}
|
||||||
|
|
||||||
// x is the size of the queued up pool (shouldn't matter here for this I think)
|
|
||||||
// y is how many simultanous functions will run
|
|
||||||
// todo: tune and compute x,y by # of CPUs and disk io
|
|
||||||
// todo: store x,y in forge config ? (or compute them. notsure)
|
|
||||||
func (f *Forge) RillFuncError(x int, y int, rillf func(*gitpb.Repo) error) int {
|
|
||||||
var all []*gitpb.Repo
|
|
||||||
tmp := f.Repos.All()
|
|
||||||
for tmp.Scan() {
|
|
||||||
repo := tmp.Next()
|
|
||||||
if !repo.IsValidDir() {
|
|
||||||
log.Printf("%s %-50s", "got an invalid repo in forgepb.RillFuncError()", repo.GetGoPath())
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
all = append(all, repo)
|
|
||||||
}
|
|
||||||
// Convert a slice of user IDs into a channel
|
|
||||||
ids := rill.FromSlice(all, nil)
|
|
||||||
|
|
||||||
var counter int
|
|
||||||
// Read users from the API.
|
|
||||||
// Concurrency = 20
|
|
||||||
dirs := rill.Map(ids, x, func(id *gitpb.Repo) (*gitpb.Repo, error) {
|
|
||||||
return id, nil
|
|
||||||
})
|
|
||||||
|
|
||||||
err := rill.ForEach(dirs, y, func(repo *gitpb.Repo) error {
|
|
||||||
counter += 1
|
|
||||||
return rillf(repo)
|
|
||||||
})
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
log.Info("rill.ForEach() error:", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
return counter
|
|
||||||
}
|
|
||||||
|
|
78
rill.go
78
rill.go
|
@ -64,3 +64,81 @@ func (f *Forge) updateRepo(repo *gitpb.Repo) error {
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var RillX int = 30
|
||||||
|
var RillY int = 10
|
||||||
|
|
||||||
|
// x is the size of the queued up pool (shouldn't matter here for this I think)
|
||||||
|
// y is how many simultanous functions will run
|
||||||
|
// todo: tune and compute x,y by # of CPUs and disk io
|
||||||
|
// todo: store x,y in forge config ? (or compute them. notsure)
|
||||||
|
func (f *Forge) RillReload() int {
|
||||||
|
var all []*gitpb.Repo
|
||||||
|
tmp := f.Repos.All()
|
||||||
|
for tmp.Scan() {
|
||||||
|
repo := tmp.Next()
|
||||||
|
if !repo.IsValidDir() {
|
||||||
|
log.Printf("%s %-50s", "got an invalid repo in forgepb.RillFuncError()", repo.GetGoPath())
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
all = append(all, repo)
|
||||||
|
}
|
||||||
|
// Convert a slice of user IDs into a channel
|
||||||
|
ids := rill.FromSlice(all, nil)
|
||||||
|
|
||||||
|
var counter int
|
||||||
|
// Read users from the API.
|
||||||
|
// Concurrency = 20
|
||||||
|
dirs := rill.Map(ids, RillX, func(repo *gitpb.Repo) (*gitpb.Repo, error) {
|
||||||
|
return repo, nil
|
||||||
|
})
|
||||||
|
|
||||||
|
rill.ForEach(dirs, RillY, func(repo *gitpb.Repo) error {
|
||||||
|
if !repo.DidRepoChange() {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
f.configSave = true
|
||||||
|
repo.Reload()
|
||||||
|
counter += 1
|
||||||
|
return nil
|
||||||
|
})
|
||||||
|
|
||||||
|
return counter
|
||||||
|
}
|
||||||
|
|
||||||
|
// x is the size of the queued up pool (shouldn't matter here for this I think)
|
||||||
|
// y is how many simultanous functions will run
|
||||||
|
// todo: tune and compute x,y by # of CPUs and disk io
|
||||||
|
// todo: store x,y in forge config ? (or compute them. notsure)
|
||||||
|
func (f *Forge) RillFuncError(rillf func(*gitpb.Repo) error) int {
|
||||||
|
var all []*gitpb.Repo
|
||||||
|
tmp := f.Repos.All()
|
||||||
|
for tmp.Scan() {
|
||||||
|
repo := tmp.Next()
|
||||||
|
if !repo.IsValidDir() {
|
||||||
|
log.Printf("%s %-50s", "got an invalid repo in forgepb.RillFuncError()", repo.GetGoPath())
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
all = append(all, repo)
|
||||||
|
}
|
||||||
|
// Convert a slice of user IDs into a channel
|
||||||
|
ids := rill.FromSlice(all, nil)
|
||||||
|
|
||||||
|
var counter int
|
||||||
|
// Read users from the API.
|
||||||
|
// Concurrency = 20
|
||||||
|
dirs := rill.Map(ids, RillX, func(id *gitpb.Repo) (*gitpb.Repo, error) {
|
||||||
|
return id, nil
|
||||||
|
})
|
||||||
|
|
||||||
|
err := rill.ForEach(dirs, RillY, func(repo *gitpb.Repo) error {
|
||||||
|
counter += 1
|
||||||
|
return rillf(repo)
|
||||||
|
})
|
||||||
|
|
||||||
|
if err != nil {
|
||||||
|
log.Info("rill.ForEach() error:", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
return counter
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue