著作一覧 |
新年会のじゃんけん合戦でServerspecを勝ち取ったので読み始めた。
Serverspec(宮下 剛輔)書籍としてはなんか妙なところはあるのだが(たとえば、「なぜそうではないか」「なぜそうしないか」の説明がしつこい)、どう読んでもserverspecを利用するのは正しい。世の中、良いものがどんどん出てきて実に良いことだ。
妙なユースケースだが、サーバーを手作業でセットアップすることが前提だとして(セットアップ台数/年が非常に小さくて、かつ作業者にCIという概念もなければ使うつもりもないとして)、そういうサーバーに介入できるのが障害時だとしたら、とりあえず調査を手っ取り早くするためにspecをきっておけば具合が良さそうだ。
では試してみるかと、Windows Server 2012の仮想マシンを用意して(ディスクが空いていたのでLMDEにOracle VirtualBoxをaptitudeしてから)試そうとした。
で、Ruby-2.2-x64.msiを導入して、おもむろにgem install serverspecとしたら、
C:\Users\arton>gem install serverspec ERROR: Could not find a valid gem 'serverspec' (>= 0), here is why: Unable to download data from https://rubygems.org/ - SSL_connect retur ned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed ( https://api.rubygems.org/specs.4.8.gz)
??
で、いろいろ調べるとすぐに見つかるのはRubyInstallerはWindowsネイティブコンパイル時のパス設定のバグでRubyGems2.4系を入れていないからRubyGemsのpemが古いというイッシューだ。
でも、おれのパッケージはVC++バイナリインストール用だからそれはまったく関係ない。つまり、RubyGemsは最新を同梱しているからpemが古いということはない(はず)。
でも待てよ? そもそものcacert.pemはどこにあるんだ?(というか、Windowsマシンでgem installを使ったことは一度もなかったから気にもしていなかった)
まずそこからだというわけでhttp://curl.haxx.se/ca/cacert.pemをダウンロードして環境変数SSL_CERT_FILEでポイント。
set SSL_CERT_FILE=C:\users\arton\Downloads\cacert.pem
で無事gem installに成功。cacert.pemの格納先と環境変数の設定は後でちゃんとやる。
ジェズイットを見習え |