Module: RubyLanguageServer::GemInstaller

Defined in:
lib/ruby_language_server/gem_installer.rb

Overview

Sole purpose is to install gems

Class Method Summary collapse

Class Method Details

.install_gems(gem_names) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/ruby_language_server/gem_installer.rb', line 9

def install_gems(gem_names)
  gem_names&.compact!
  gem_names&.reject! { |name| name.strip == '' }
  return if gem_names.nil? || gem_names.empty?

  RubyLanguageServer.logger.info("Trying to install gems #{gem_names}")
  rubocop_gem = Gem::Specification.find_by_name 'rubocop'
  gemfile do
    source 'https://rubygems.org'
    gem 'rubocop', rubocop_gem.version.to_s
    gem_names.each do |gem_name|
      gem gem_name
    end
  end
end