Class: Mergem::Repos
- Inherits:
-
Object
- Object
- Mergem::Repos
- Defined in:
- lib/mergem/repos.rb
Overview
Find all repositories by the locations provided.
- Author
-
Yegor Bugayenko ([email protected])
- Copyright
-
Copyright © 2022-2023 Yegor Bugayenko
- License
-
MIT
Instance Method Summary collapse
- #each ⇒ Object
-
#initialize(api, loog, masks) ⇒ Repos
constructor
A new instance of Repos.
Constructor Details
#initialize(api, loog, masks) ⇒ Repos
Returns a new instance of Repos.
26 27 28 29 30 |
# File 'lib/mergem/repos.rb', line 26 def initialize(api, loog, masks) @api = api @loog = loog @masks = masks end |
Instance Method Details
#each ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
# File 'lib/mergem/repos.rb', line 32 def each total = 0 names = [] @masks.each do |repo| if repo.end_with?('/*') org = repo.split('/')[0] @api.repositories(org).each do |r| n = r['full_name'] @loog.debug("Found #{n} repo in @#{org}") names << n end else names << repo end end names.each do |n| r = @api.repository(n) if r[:archived] @loog.debug("Repository #{n} is archived, ignoring") next end yield n total += 1 end total end |