タグ

chefspecに関するclavierのブックマーク (5)

  • グリーのインフラに Chef を導入した話 | GREE Engineering

    類似のソフトウェアとして、Puppet や Ansible といったものもあります。こういったインフラ自動化まわりのソフトウェアについてはペパボの宮下さんの インフラ系技術の流れ が参考になります。 Chef in グリー さて、グリーでのChefまわりの構成をご紹介します。下図が全体の構成です。 開発環境 開発は各個人のマシン上で仮想マシンを立ち上げて行なっています。クックブックの開発では、クックブックを開発する人が serverspec でテストを書くようにしていて、構築後のサーバが期待通り動くことをテストしています。一つのクックブックでも設定値などの条件によって動作が変わってくるため、test-kitchen を用いて複数の条件(ランリストやノードのアトリビュート(以下、「アトリビュート」)などの組み合わせ)でテストを行っています。 また、一部仮想マシンを使う必要がないテスト(att

    グリーのインフラに Chef を導入した話 | GREE Engineering
  • cookbook テストツール ChefSpec を使ってみた一部始終(1) - ようへいの日々精進XP

    要件 cookbook をテストするツール(フレームワーク)を試してみる 幾つか存在するフレームワークのうちで今回は ChefSpec というツールを試してみる 準備 テスト用の cookbook の作成 cd ${Chef_Repos}/site-cookbooks knife cookbook create apache_install -o ./ chefspec のインストール gem からインストールする。 gem install chefspec --no-ri --no-rdoc example のひな形を用意する(ChefSpec ではテストケースのことを「example」と呼ぶ)。 knife cookbook create_specs apache_install -o ./実行後、apache_install ディレクトリ内に spec というディレクトリが出来ていて

    cookbook テストツール ChefSpec を使ってみた一部始終(1) - ようへいの日々精進XP
  • chefspecを利用したcookbookの動作テスト · さよならインターネット

    March 26, 2013 chefspec 1.0.0.rc1 Chefのcookbookのテストどうしたらいいんだろうって悩んでいたのですが chefspecが良さそうだったので試してみました。 テストしたいことは cookbookのrecipeに書いてあることが期待通り実行されるか ホスト名やプラットフォーム別のrecipeが期待通り実行されるか この2点です。 下記のようなcookbookがあるとして cookbook/yum/recipe/default.rb template "/etc/yum.conf" do source "yum.conf.erb" owner "root" mode 0644 end file "/etc/yum/exclude.conf" do owner "root" mode 0644 only_if { node[:platform_vers

  • Cookbookテストフレームワーク「ChefSpec」 #opschef_ja - クリエーションライン株式会社

    ChefSpecはCookbookテストフレームワークです。RSpecを用いたテスト駆動開発(TDD, Test Driven Development)と呼ばれる開発手法のためのテストフレームワークで、まずテストを書き、次のそのテストをパスするコードを書き、それらを繰り返して開発を進めていくという手順を取ります。実際にCookbookをノードに適用せず、Cookbookが期待した動作を行うように記述されているかどうかをテストします。 ChefSpecのインストール gemでインストールが可能です。 なお、以前インストールできるChefSpec 0.9.0はChef 11には対応していなかったので、インストールオプションに--preをつけるか、--version '1.0.0.rc1'をつけてChefSpec 1.0.0.rc1をインストールする必要がありました(Error in runni

    Cookbookテストフレームワーク「ChefSpec」 #opschef_ja - クリエーションライン株式会社
  • chefspecチートシート - Qiita

    公私共にchefを使っていて、テストにchefspecを使っていますが、RSpec系になじみがないからか、なかなか覚えられないのでチートシートにまとめます。 詳細や正確な情報は家で確認してください。 家:https://github.com/acrmp/chefspec specを書く上での準備 nodeの設定 cookbook, role, node等でattributesを定義していて、レシピの動作結果がこれに依存している場合は、convergeより先にnodeに値をセットする必要があります。 let( :chef_run ) do chef_run = ChefSpec::ChefRunner.new do |node| node.set['my_attribute'] = 'bar' node.set['my_other_attribute'] = {'hoge' => 'ba

    chefspecチートシート - Qiita
  • 1