mirror of
https://github.com/chromebrew/chromebrew.git
synced 2026-01-09 15:37:56 -05:00
Adjust ruby gem installs to use begin/rescue block for gem loading (#10539)
* Adjust ruby gem loading during install... Signed-off-by: Satadru Pramanik <satadru@gmail.com> * Rebuild ruby_libversion. Signed-off-by: Satadru Pramanik <satadru@gmail.com> --------- Signed-off-by: Satadru Pramanik <satadru@gmail.com>
This commit is contained in:
committed by
GitHub
parent
92c669ae67
commit
95fff98ecc
@@ -63,9 +63,18 @@ class RUBY < Package
|
||||
@gem_outdated = !@gem_installed && gem_installed_anyver
|
||||
crewlog "preflight: @gem_name: #{@gem_name}, @gem_ver: #{@gem_ver}, @gem_outdated: #{@gem_outdated}, @gem_installed: #{@gem_installed} && @remote_gem_ver.to_s: #{Gem::Version.new(@remote_gem_ver.to_s)} == Gem::Version.new(@gem_ver): #{Gem::Version.new(@gem_ver)} && File.file?(@gem_filelist_path): #{File.file?(@gem_filelist_path)}"
|
||||
if @gem_installed && Gem::Version.new(@remote_gem_ver.to_s) == Gem::Version.new(@gem_ver)
|
||||
require_gem(@gem_name)
|
||||
# Make sure gem is installed before trying to get files from the gem...
|
||||
begin
|
||||
gem @gem_name
|
||||
rescue LoadError
|
||||
puts " -> install #{@gem_name} gem".orange
|
||||
Gem.install(@gem_name)
|
||||
gem @gem_name
|
||||
end
|
||||
system "gem contents #{@gem_name} > #{@gem_filelist_path}" unless File.file?(@gem_filelist_path)
|
||||
@install_gem = false
|
||||
@device = ConvenienceFunctions.load_symbolized_json
|
||||
pkg_info = @device[:installed_packages].select { |pkg| pkg[:name] == name } [0]
|
||||
@install_gem = false if Gem::Version.new(version) == pkg_info[:version]
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user