NetworkRepos fetches info about remotes for the network of repos. Pass a value of 0 to fetch info on all remotes.
(remotesForLookup int)
| 130 | // NetworkRepos fetches info about remotes for the network of repos. |
| 131 | // Pass a value of 0 to fetch info on all remotes. |
| 132 | func (r *ResolvedRemotes) NetworkRepos(remotesForLookup int) ([]*api.Repository, error) { |
| 133 | if r.network == nil { |
| 134 | err := resolveNetwork(r, remotesForLookup) |
| 135 | if err != nil { |
| 136 | return nil, err |
| 137 | } |
| 138 | } |
| 139 | |
| 140 | var repos []*api.Repository |
| 141 | repoMap := map[string]bool{} |
| 142 | |
| 143 | add := func(r *api.Repository) { |
| 144 | fn := ghrepo.FullName(r) |
| 145 | if _, ok := repoMap[fn]; !ok { |
| 146 | repoMap[fn] = true |
| 147 | repos = append(repos, r) |
| 148 | } |
| 149 | } |
| 150 | |
| 151 | for _, repo := range r.network.Repositories { |
| 152 | if repo == nil { |
| 153 | continue |
| 154 | } |
| 155 | if repo.Parent != nil { |
| 156 | add(repo.Parent) |
| 157 | } |
| 158 | add(repo) |
| 159 | } |
| 160 | |
| 161 | return repos, nil |
| 162 | } |
| 163 | |
| 164 | // RemoteForRepo finds the git remote that points to a repository |
| 165 | func (r *ResolvedRemotes) RemoteForRepo(repo ghrepo.Interface) (*Remote, error) { |
no test coverage detected