berks-apiとかのメモ
$ rvm install 2.0.0
$ rum use ruby-2.0.0-p594
$ gem install berks-api
berksfileもいれておく
$ gem install berksfile
51 gems installed
$ berks-api
/home/vagrant/.rvm/gems/ruby-2.0.0-p594/gems/ffi-1.9.6/lib/ffi/library.rb:133:in `block in ffi_lib': Could not open library 'archive': archive: cannot open shared object file: No such file or directory. (LoadError)
Could not open library 'libarchive.so': libarchive.so: cannot open shared object file: No such file or directory
パッケージがたりないようなので、追加
$ sudo apt-get install
$ libarchive-dev
起動した
vagrant@vagrant:~$ berks-api
I, [2014-11-12T07:39:52.665572 #28877] INFO -- : Cache manager starting...
I, [2014-11-12T07:39:52.666014 #28877] INFO -- : Loading save from /home/vagrant/.berkshelf/api-server/cerch
I, [2014-11-12T07:39:52.862366 #28877] INFO -- : Cache contains 7854 items
I, [2014-11-12T07:39:52.863443 #28877] INFO -- : Cache Builder starting...
I, [2014-11-12T07:39:52.916987 #28877] INFO -- : REST Gateway listening on 0.0.0.0:26200
I, [2014-11-12T07:39:52.948415 #28877] INFO -- : Processing supermarket
I, [2014-11-12T07:39:55.569108 #28877] INFO -- : Found 7854 cookbooks from supermarket
I, [2014-11-12T07:39:55.633288 #28877] INFO -- : About to merge cookbooks
I, [2014-11-12T07:39:55.633965 #28877] INFO -- : Cache m
▪️berkshelf-apiの設定
といあえず、supermarketをみる設定をしてみる
$ view /home/vagrant/.berkshelf/api-server/config.json
{ "endpoints": [ { "type": "supermarket" } ] }
▪️apiサーバ起動
$ berks-api
▪️cookbookの作成
$ cd ~/
$ berks cookbook berks-api-test
$ cd berks-api-test
▪️Berksfileの作成
source "http://localhost:26200"
metadata
cookbook "nginx"
▪️いれてみる
動いた。これで、
$ berks vendor coobooks
Resolving cookbook dependencies...
Fetching 'berks-api-test' from source at .
Fetching cookbook index from http://localhost:26200...
Installing apt (2.6.0) from http://localhost:26200 ([supermarket] https://supermarket.getchef.com/api/v1)
Using berks-api-test (0.1.0) from source at .
Installing bluepill (2.3.1) from http://localhost:26200 ([supermarket] https://supermarket.getchef.com/api/v1)
▪️metadata.rbをいじる
$ view ~/berks-api-test/metadata.rb
name 'berks-api-test’
maintainer 'YOUR_NAME'
maintainer_email 'YOUR_EMAIL'
license 'All rights reserved'
description 'Installs/Configures berks-api-test'
long_description 'Installs/Configures berks-api-test'
version '0.1.1'
depends ‘nginx'
▪️レシピをいじる
$ view /home/vagrant/berks-api-test/recipes/default.rb
include_recipe 'nginx::package'
▪️サーバへレシピをアップロード
$ berks install
$ berks upload
▪️ サーバへのrecipeの登録
knife node run_list add web1 berks-api-test
▪️反映
$ knife ssh "name:web1" -x vagrant "sudo chef-client”
$ knife ssh "name:web1" -x vagrant "sudo chef-client”
- 2014.11.12 Wednesday
- -
- 19:29
- comments(0)
- trackbacks(0)
- -
- -
- by orz