Class: Lolipop::Mc::Starter::Rails::CheckItem::Rails

Inherits:
Base
  • Object
show all
Defined in:
lib/lolipop/mc/starter/rails/check_item/rails.rb

Instance Method Summary collapse

Methods inherited from Base

#desc, #initialize, #item_name

Constructor Details

This class inherits a constructor from Lolipop::Mc::Starter::Rails::CheckItem::Base

Instance Method Details

#checkObject



7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/lolipop/mc/starter/rails/check_item/rails.rb', line 7

def check
  begin 
    stdout, stderr, status = Open3.capture3("#{Dir.pwd}/bin/rails -v")
  rescue => e
    raise "Railsコマンドがインストールされていません #{e.message}"
  end
  raise 'Railsコマンドでエラーが発生しています' unless stdout.match(/^Rails/)
  raise 'Railsのバージョンが5.2.xではありません' unless stdout.match(/5\.2/)
  config = @config.load
  config['rails'] = stdout.strip
  @config.dump(config)
  "Rails5.2がインストールされています [#{stdout.strip}]"
end

#hintObject



21
22
23
24
# File 'lib/lolipop/mc/starter/rails/check_item/rails.rb', line 21

def hint
  puts 'このコマンドではRails5.2を指定しています'
  puts '`rails _5.2.3_ new your_app` のようにバージョンを指定することで特定バージョンのRailsプロジェクトを作成できます'
end