diff options
author | Saku Ytti <saku@ytti.fi> | 2014-04-15 22:12:16 +0300 |
---|---|---|
committer | Saku Ytti <saku@ytti.fi> | 2014-04-15 22:12:16 +0300 |
commit | 2af41e1769225ac42027f2f686763389296bab79 (patch) | |
tree | 33ccf4abc090a5ee77c248df7d487b0ee733600d /lib/oxidized | |
parent | a7ddb8df89ba82d48f678982d081aa341fca57cc (diff) |
Remove dependency to sequel, sqlite3 and grit
Not every installation will use git + sql. Try to give helpful error
message on missing dependencies.
Diffstat (limited to 'lib/oxidized')
-rw-r--r-- | lib/oxidized/output/git.rb | 6 | ||||
-rw-r--r-- | lib/oxidized/source/sql.rb | 12 |
2 files changed, 15 insertions, 3 deletions
diff --git a/lib/oxidized/output/git.rb b/lib/oxidized/output/git.rb index ff9237b..6f232cb 100644 --- a/lib/oxidized/output/git.rb +++ b/lib/oxidized/output/git.rb @@ -1,6 +1,10 @@ module Oxidized class Git < Output - require 'grit' + begin + require 'grit' + rescue LoadError + raise LoadError, 'grit not found: sudo gem install grit' + end require 'oxidized/fix/grit' if RUBY_VERSION[0..1] == '2.' include Grit diff --git a/lib/oxidized/source/sql.rb b/lib/oxidized/source/sql.rb index f84a7a8..9f862e5 100644 --- a/lib/oxidized/source/sql.rb +++ b/lib/oxidized/source/sql.rb @@ -1,6 +1,10 @@ module Oxidized class SQL < Source - require 'sequel' + begin + require 'sequel' + rescue LoadError + raise LoadError, 'sequel not found: sudo gem install sequel' + end def initialize super @@ -23,7 +27,11 @@ class SQL < Source nodes = [] db = case @cfg.adapter when 'sqlite' - require 'sqlite3' + begin + require 'sqlite3' + rescue LoadError + raise LoadError, 'sqlite3 not found: sudo apt install libsqlite3-dev; sudo gem install sqlite3' + end Sequel.sqlite @cfg.file end db[@cfg.table.to_sym].each do |node| |