lib/zold/commands/remote.rb in zold-0.4 vs lib/zold/commands/remote.rb in zold-0.4.1
- old
+ new
@@ -74,10 +74,11 @@
add(opts.arguments[1], opts.arguments[2].to_i)
when 'remove'
remove(opts.arguments[1], opts.arguments[2].to_i)
when 'update'
update(opts)
+ update(opts, false)
else
@log.info(opts.to_s)
end
end
@@ -108,11 +109,11 @@
@remotes.remove(host, port)
@log.info("#{host}:#{port} removed from the list")
@log.info("There are #{@remotes.all.count} remote nodes in the list")
end
- def update(opts)
+ def update(opts, deep = true)
@remotes.all.each do |r|
uri = URI("#{r[:home]}remotes")
res = Http.new(uri).get
unless res.code == '200'
@remotes.remove(r[:host], r[:port])
@@ -143,12 +144,14 @@
"#{Rainbow(r[:host]).red} score too weak: #{score.strength}"
)
next
end
@remotes.rescore(r[:host], r[:port], score.value)
- json['all'].each do |s|
- unless @remotes.exists?(s['host'], s['port'])
- add(s['host'], s['port'])
+ if deep
+ json['all'].each do |s|
+ unless @remotes.exists?(s['host'], s['port'])
+ add(s['host'], s['port'])
+ end
end
end
@log.info("#{r[:host]}:#{r[:port]}: #{Rainbow(score.value).green} \
(v.#{json['version']})")
end