256bitの殺人メニュー

インフラエンジニアだったソリューションアーキテクトなくわののブログ。こちらのBlogは個人の意見となっていて会社とは全く関係ありません。お約束です。[twitter:@kuwa_tw]めんどくさがりが重い腰を上げて何かをアウトプットすることにどれほどの意味があるのかを試してみたいブログでもある。

vagrant-berkshelf(非推奨)を無理やりインストールする

はい、乙カレー様です。桑野です。
最近喉がイガイガ、鼻がムズムズ、身体は重い、これなーんだ(10点)


と、vagrant-berkshelfって非推奨になってしまったんですね。。。気付かずに入れようとしてたメモをなんとなくもったいないので書いとくw

インストール時エラー

$ vagrant plugin install vagrant-berkshelf
The plugin(s) can't be installed due to the version conflicts below.
This means that the plugins depend on a library version that conflicts
with other plugins or Vagrant itself, creating an impossible situation
where Vagrant wouldn't be able to load the plugins.

You can fix the issue by either removing a conflicting plugin or
by contacting a plugin author to see if they can address the conflict.

Vagrant could not find compatible versions for gem "celluloid":
  In Gemfile:
    vagrant-berkshelf (>= 0) ruby depends on
      celluloid (~> 0.13.0) ruby

    vagrant (= 1.5.0) ruby depends on
      celluloid (0.15.2)


 Ah, there you go. The conflict is a real issue. I haven't tried since updating the Vagrant dependencies. Unfortunately, that is not a dependency I can change.



Perhaps vagrant-berkshelf can have its dependencies updated... I'll open a ticket there.

なんかcelluloidのバージョン依存がvagrantvagrant-berkshelfで違うよーっていわれてインストール出来ないと。vagrant側がGEM管理から抜けてしまった影響ですね。

インストール手順

で、インストールどうやんのかな、と思って調べてたらvagrant-berkshelfのgithubのIssueにあった
で、やってみた


手順としてはGistにある。

berkshelf build
$ cd /tmp/dir
$ git clone https://github.com/berkshelf/berkshelf.git
$ cd berkshelf
$  gem build berkshelf.gemspec

ってやると

rbenv: version `2.0.0-p451' is not installed
rbenv: version `2.0.0-p451' is not installed

って出るのですが、これ ./.ruby-versionが残ってるからですね。
このバージョンじゃないとダメだっていってんのかもしれないですが、とりあえず2.1.0でやってみます。

$ rbenv local 2.1.0
# gemsetsを管理してる場合はこれも
$ echo >.rbenv-gemsets testgemsets
$ gem build berkshelf.gemspec

そしたらVagrantの管理してるGemにインストール

gem install berkshelf-*.gem --conservative --no-ri --no-rdoc --install-dir $HOME/.vagrant.d/gems
vagrant-berkshelf build

次は vagrant-berkshelf

$ cd /tmp/dir
$ git clone https://github.com/berkshelf/vagrant-berkshelf.git
$ cd vagrant-berkshelf
# gemsetsを管理してる場合はこれも
$ echo >.rbenv-gemsets testgemsets
$ gem build vagrant-berkshelf.gemspec


できたらgemファイル指定してvagrant plugin installで終わり。

$ vagrant plugin install vagrant-berkshelf-*.gem

インストールされたか確認

$ vagrant plugin list
vagrant-berkshelf (1.4.0.dev1)
vagrant-login (1.0.1, system)
vagrant-omnibus (1.3.1)

まあ、非推奨なんで

これからVagrant使う方はvagrant-berkshelf使わないほうがいいと思いますw
生Berkshelfを活用する方向にしましょうw(なんなんだ)


ではでは(◉◞౪◟◉`) 三 (´◉◞౪◟◉)ヒュンヒュン

追記

入れても上手く動かなかったんでやっぱ非推奨のものをつかうもんじゃないんや!って思ったんで忘れましょう。はいw

実践 Vagrant

実践 Vagrant

DENIX(デニックス) シェリフバッヂ ゴールド [113/L]

DENIX(デニックス) シェリフバッヂ ゴールド [113/L]