Module: Autowow::Features::Rbenv
Instance Method Summary
collapse
Methods included from Executor
#pretty, #pretty_with_output, #quiet, #tty_params
#aliases, #installed_versions, #version
Instance Method Details
#obsolete_versions ⇒ Object
38
39
40
41
42
43
44
45
|
# File 'lib/autowow/features/rbenv.rb', line 38
def obsolete_versions
alias_map = ruby_aliases
used_versions_and_aliases = used_versions
used_versions.each do |v|
used_versions_and_aliases.push(alias_map[v]) if alias_map.has_key?(v)
end
quiet.run(installed_versions).out.clean_lines - used_versions_and_aliases
end
|
#ruby_aliases ⇒ Object
28
29
30
31
32
33
34
35
36
|
# File 'lib/autowow/features/rbenv.rb', line 28
def ruby_aliases
ret = {}
result = quiet.run!(aliases)
return ret unless result.success?
result.out.clean_lines.each do |line|
ret[line.split(" => ")[0]] = line.split(" => ")[1]
end
ret
end
|
#ruby_versions ⇒ Object
15
16
17
|
# File 'lib/autowow/features/rbenv.rb', line 15
def ruby_versions
logger.info(used_versions)
end
|
#used_versions ⇒ Object
19
20
21
22
23
24
25
26
|
# File 'lib/autowow/features/rbenv.rb', line 19
def used_versions
rubies = []
Fs.in_place_or_subdirs(Vcs.is_git?) do
result = quiet.run!(version)
rubies.concat(result.out.clean_lines) if result.success?
end
rubies.uniq
end
|