@@ -196,17 +196,8 @@ func filterRepositories(repos []*gitea.Repository, noArchived bool) (filteredRep
196196 return
197197}
198198
199- func getOrgRepos (client * gitea.Client , org string , reposFilters reposFilters ) ([]* gitea.Repository , error ) {
199+ func searchRepos (client * gitea.Client , searchOptions * gitea. SearchRepoOptions , reposFilters reposFilters ) ([]* gitea.Repository , error ) {
200200 var allRepos []* gitea.Repository
201- searchOptions := & gitea.SearchRepoOptions {}
202- // OwnerID
203- organization , _ , err := client .GetOrg (org )
204- if err != nil {
205- return nil , err
206- }
207-
208- searchOptions .OwnerID = organization .ID
209-
210201 for {
211202 repos , resp , err := client .SearchRepos (* searchOptions )
212203 if err != nil {
@@ -216,61 +207,43 @@ func getOrgRepos(client *gitea.Client, org string, reposFilters reposFilters) ([
216207 break
217208 }
218209
219- searchOptions .Page = resp .NextPage
220210 repos = filterRepositories (repos , * reposFilters .noArchived )
221211 allRepos = append (allRepos , repos ... )
212+ searchOptions .Page = resp .NextPage
222213 if resp .NextPage == 0 {
223214 break
224215 }
225216 }
217+
226218 return allRepos , nil
227219}
228220
229- func getAllRepos (client * gitea.Client , reposFilters reposFilters ) ([]* gitea.Repository , error ) {
230- var allRepos []* gitea.Repository
221+ func getOrgRepos (client * gitea.Client , org string , reposFilters reposFilters ) ([]* gitea.Repository , error ) {
231222 searchOptions := & gitea.SearchRepoOptions {}
232- for {
233- repos , resp , err := client .SearchRepos (* searchOptions )
234- if err != nil {
235- return nil , err
236- }
237- if len (repos ) == 0 {
238- break
239- }
240- repos = filterRepositories (repos , * reposFilters .noArchived )
241- allRepos = append (allRepos , repos ... )
242- searchOptions .Page = resp .NextPage
243- if resp .NextPage == 0 {
244- break
245- }
223+ // OwnerID
224+ organization , _ , err := client .GetOrg (org )
225+ if err != nil {
226+ return nil , err
246227 }
247- return allRepos , nil
228+
229+ searchOptions .OwnerID = organization .ID
230+
231+ return searchRepos (client , searchOptions , reposFilters )
232+ }
233+
234+ func getAllRepos (client * gitea.Client , reposFilters reposFilters ) ([]* gitea.Repository , error ) {
235+ return searchRepos (client , & gitea.SearchRepoOptions {}, reposFilters )
248236}
249237
250238func getUserRepos (client * gitea.Client , user string , reposFilters reposFilters ) ([]* gitea.Repository , error ) {
251- var allRepos []* gitea.Repository
252239 searchOptions := & gitea.SearchRepoOptions {}
253240 u , _ , err := client .GetUserInfo (user )
254241 if err != nil {
255242 return nil , err
256243 }
257244 searchOptions .OwnerID = u .ID
258- for {
259- repos , resp , err := client .SearchRepos (* searchOptions )
260- if err != nil {
261- return nil , err
262- }
263- if len (repos ) == 0 {
264- break
265- }
266- repos = filterRepositories (repos , * reposFilters .noArchived )
267- allRepos = append (allRepos , repos ... )
268- searchOptions .Page = resp .NextPage
269- if resp .NextPage == 0 {
270- break
271- }
272- }
273- return allRepos , nil
245+
246+ return searchRepos (client , searchOptions , reposFilters )
274247}
275248
276249func cloneRepos (destDir string , repos []* gitea.Repository ) error {
0 commit comments