diff --git a/provider/github/installations.go b/provider/github/installations.go index 4f27b598..76be3dbf 100644 --- a/provider/github/installations.go +++ b/provider/github/installations.go @@ -71,10 +71,25 @@ func NewInstallations( func (t *Installations) Sync() error { log.Infof("syncing installations with github") - installations, _, err := t.appClient.Apps.ListInstallations(context.TODO(), &github.ListOptions{}) - if err != nil { - return err + var installations []*github.Installation + opts := &github.ListOptions{ + PerPage: 100, } + for { + installs, resp, err := t.appClient.Apps.ListInstallations(context.TODO(), opts) + if err != nil { + return err + } + + installations = append(installations, installs...) + + if resp.NextPage == 0 { + break + } + + opts.Page = resp.NextPage + } + log.Debugf("found %d installations", len(installations)) new := make(map[int64]*github.Installation, len(installations))