弊社はgithub enterpriseで運営しています。
外部からは自由にアクセスできないように、ファイアーウォールで社内アクセスのみに接続を限定しています。
が、今やっている案件ではお客様が用意したサーバーにアクセスしなければならず。
社内gitサーバーにアクセスできない状態です。
そういった場合、capistranoでローカルにソースを先にダウンロードしてtarで固めてサーバーに送信するという指定ができます。
config/deploy.rb
|
|
ですが、Gemfileにか書かれているGemファイルはbundle installで入れるようなので、社内gitサーバーに置かれたgemを参照しようとしたら落ちました。
うーん。gemも一式ローカルに落としてくれんか?と探していたらありました。
rudionrails/capistrano-strategy-copy-bundled ?
GitHub
Gemfileにgem ‘capistrano-strategy-copy-bundled’と書いてbundle install。
config/deploy.rb
|
|
でもcap deploy:updateしたら、
|
|
って怒られる。
うーん。gemsetがdefault使われてるなー。ってことで。
いい機会なので、rbenvにしてみました。
http://ksauzz.github.io/blog/2012/03/23/rbenv-ruby-build-rbenv-gemset/[?](http://d.hatena.ne.jp/keyword/http%3A//ksauzz%2Egithub%2Eio/blog/2012/03/23/rbenv%2Druby%2Dbuild%2Drbenv%2Dgemset/?mode=edit)
んで cap deploy:update
|
|
また怒られる。なんでだ。ぐぐっても有益な情報なし。
あ、ひょっとしてbundle exec必要?
ってことでbundle exec cap deploy:update
んで行くはず。
はずって言うのも。あまりにGem一式のダウンロードが重くて、やってらんねぇってなったので。
急遽ファイアーウォールに穴開けてもらうことになったからです。
中途半端ですまんです。