スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

『RailsによるアジャイルWebアプリケーション開発 第4版』 第16章 第2節 訂正

『RailsによるアジャイルWebアプリケーション開発 第4版』の『16.2 Capistranoによるリモートでのデプロイ』のコードがバージョン違いにより動かなかったので報告。

【0】問題

問題のコードはp.227のdeploy.rb。

deploy.rb を書籍通りに設定して、次のページに進み、

$ cap deploy:setup

すると、

RVM - Capistrano integration was extracted to a separate gem, install: `gem install rvm-capistrano` and remove the `$LOAD_PATH.unshift` line, note also the 'set :rvm_type, :user' is now the default (instead of :system). (RuntimeError)

なるエラーを吐かれます。

Google先生に聞いてみたところ、新しいRVMに起因するエラーみたいです。
とりあえず、解決をはかっていきます。


【1】gem「rvm-capistrano」を入れる

アプリケーションルートのGemfileに以下の行を追加します。

gem 'rvm-capistrano'

そして、

$ bundle install




【1】deploy.rbの修正

APP_ROOT/config/deploy.rb を修正します。
【修正前】

$:.unshift(File.expand_path('./lib', ENV['rvm_path']))
require "rvm/capistrano"
set :rvm_rub_string, '1.9.2'
set :rvm_type, :user

 ↑をこうします↓
【修正後】

require "rvm/capistrano"
set :rvm_ruby_string, '1.9.2'


これで正常に動作し、cap deploy:setup が通るようになりました。

ただ、解決までにかなり時間がかかり、ここに書いていないこともいろいろ試したので、もしかすると上記の方法だけでは解決しないかもしれません。その際はごめんなさいw

コメントの投稿

非公開コメント

カレンダー
09 | 2017/10 | 11
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -
検索フォーム
カテゴリ
月別アーカイブ
最新記事
最新コメント
最新トラックバック
RSSリンクの表示
QRコード
QR
リンク
アクセス解析
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。