Berkshelf : 요약하자면 managing cookbook dependencies 

Berkshelf는 의존성 있는 cookbook들은 모두 다운로드?(실제로 실제 쿡북의 로컬 저장 위치는 /root/.berkshelf/cookbooks)하고 chef-server에 cookbook upload 시 유용하다

Berksfile이라는 dependencies 파일에 의해 의존성 check를 함

metadata.rb에 dependencies cookbook을 기재하고...recipe file에 include_recipe 하면

berks install 시 의존성 cookbook 을 설치


[root@chef-mjs study]# berks install

Resolving cookbook dependencies...

Fetching 'study' from source at .

Fetching cookbook index from https://supermarket.chef.io...

Installing chef-client (4.3.1)

Installing chef_handler (1.2.0)

Installing cron (1.6.1)

Installing logrotate (1.9.2)

Installing ntp (1.8.6)

Using study (0.1.0) from source at .

Installing windows (1.38.1)


cookbook 의존성 관련 Berksfile.lock 파일 만들어짐

[root@chef-mjs study]# cat Berksfile.lock 

DEPENDENCIES

  study

    path: .

    metadata: true


GRAPH

  chef-client (4.3.1)

    cron (>= 1.2.0)

    logrotate (>= 1.2.0)

    windows (~> 1.37)

  chef_handler (1.2.0)

  cron (1.6.1)

  logrotate (1.9.2)

  ntp (1.8.6)

  study (0.1.0)

    chef-client (>= 0.0.0)

    ntp (>= 0.0.0)

  windows (1.38.1)

    chef_handler (>= 0.0.0)


berks upload 시 의존성 cookbook upload

[root@chef-mjs study]# berks upload --no-ssl-verify

Uploaded chef-client (4.3.1) to: 'https://chef-mjs:443/'

Uploaded chef_handler (1.2.0) to: 'https://chef-mjs:443/'

Uploaded cron (1.6.1) to: 'https://chef-mjs:443/'

Uploaded logrotate (1.9.2) to: 'https://chef-mjs:443/'

Uploaded ntp (1.8.6) to: 'https://chef-mjs:443/'

Uploaded study (0.1.0) to: 'https://chef-mjs:443/'

Uploaded windows (1.38.1) to: 'https://chef-mjs:443/'

Posted by 뭉탁거림
,