Module: SchemaDev::GemfileSelector

Defined in:
lib/schema_dev/gemfile_selector.rb

Class Method Summary collapse

Class Method Details

.command(rails:, db: nil) ⇒ Object



16
17
18
# File 'lib/schema_dev/gemfile_selector.rb', line 16

def self.command(rails:, db: nil)
  "BUNDLE_GEMFILE=#{gemfile(rails: rails, db: db)}"
end

.gemfile(rails:, db: nil) ⇒ Object



7
8
9
10
11
12
13
14
# File 'lib/schema_dev/gemfile_selector.rb', line 7

def self.gemfile(rails:, db: nil)
  root = Pathname.new(GEMFILES_DIR)
  if db
    root.join("rails-#{rails}", "Gemfile.#{db}")
  else
    root.join("Gemfile.#{rails}")
  end
end

.infer_dbObject



20
21
22
23
# File 'lib/schema_dev/gemfile_selector.rb', line 20

def self.infer_db
  (env = ENV['BUNDLE_GEMFILE']) =~ %r{rails.*/Gemfile[.](.*)}
  $1 or raise "Can't infer db: Env BUNDLE_GEMFILE=#{env.inspect}) isn't a schema_dev Gemfile path with db"
end