はじめに
ChefのBerksfile.lockを作成する方法について備忘録として残しておきます。
Berksfile/Berksfile.lockについて
ファイル | 説明 |
---|---|
Berksfile | cookbookを使用するために必要なソースと依存関係のセットを記述したファイル |
Berksfile.lock | cookbookのバージョンを固定するためのファイル |
Berksfile.lockの作成方法
※berkshelfがPCにインストール済みであることが前提の内容になります。
Berksfileの設定
cookbookを配置しているディレクトリに以下のようなファイルを作成する。
※今回はtd-agentのバージョン3.2.0
のcookbookを設定します。
Berksfile
source 'https://supermarket.chef.io'
cookbook 'td-agent', '~> 3.2.0'
berk installの実施
berks install
を実施する。
コマンド
berks install
実行例
% berks install
Resolving cookbook dependencies...
Fetching cookbook index from https://supermarket.chef.io...
Installing apt (7.4.2)
Installing td-agent (3.2.0)
Installing yum (7.4.0)
%
Berksfile.lockの確認
Berksfile
を配置しているディレクトリの中にBerksfile.lock
が存在することを確認。
Berksfile.lockの場所
% ls -l
total 40
-rw-r--r-- 1 ma-sato staff 70 7 1 21:05 Berksfile
-rw------- 1 ma-sato staff 127 7 1 21:06 Berksfile.lock ← これ
-rw-r--r-- 1 ma-sato staff 70 6 25 14:47 LICENSE
-rw-r--r-- 1 ma-sato staff 1349 6 25 14:47 README.md
-rw-r--r-- 1 ma-sato staff 1252 6 25 14:47 chefignore
drwxr-xr-x 4 ma-sato staff 128 6 25 14:47 cookbooks
drwxr-xr-x 4 ma-sato staff 128 6 25 14:47 data_bags
drwxr-xr-x 3 ma-sato staff 96 6 25 14:47 policyfiles
%
Berksfile.lockの内容
% cat Berksfile.lock
DEPENDENCIES
td-agent (~> 3.2.0)
GRAPH
apt (7.4.2)
td-agent (3.2.0)
apt (>= 0.0.0)
yum (>= 0.0.0)
yum (7.4.0)
%
Berksfile.lockを更新したい場合
Berksfile
修正後に再度berks install
を実施するとBerksfile.lock
を更新することが可能です。