Module: SourceMonitor::Setup::Detectors

Extended by:
Detectors
Included in:
Detectors
Defined in:
lib/source_monitor/setup/detectors.rb

Instance Method Summary collapse

Instance Method Details

#node_version(shell: ShellRunner.new) ⇒ Object



18
19
20
21
22
23
24
25
# File 'lib/source_monitor/setup/detectors.rb', line 18

def node_version(shell: ShellRunner.new)
  output = shell.run("node", "--version")
  return if output.blank?

  Gem::Version.new(output.strip.sub(/^v/i, ""))
rescue ArgumentError
  nil
end

#postgres_adapter(config: nil, fallback: nil) ⇒ Object



27
28
29
30
31
32
33
34
# File 'lib/source_monitor/setup/detectors.rb', line 27

def postgres_adapter(config: nil, fallback: nil)
  config ||= connection_db_config
  fallback ||= primary_config

  config_adapter(config) || config_adapter(fallback)
rescue StandardError
  nil
end

#rails_versionObject



12
13
14
15
16
# File 'lib/source_monitor/setup/detectors.rb', line 12

def rails_version
  return unless defined?(Rails)

  Rails.gem_version
end

#ruby_versionObject



8
9
10
# File 'lib/source_monitor/setup/detectors.rb', line 8

def ruby_version
  Gem::Version.new(RUBY_VERSION)
end

#solid_queue_versionObject



36
37
38
39
# File 'lib/source_monitor/setup/detectors.rb', line 36

def solid_queue_version
  spec = Gem.loaded_specs["solid_queue"]
  spec&.version
end