microwave 1.0.2 → 1.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (125) hide show
  1. data/Rakefile +4 -4
  2. data/bin/chef-solo +2 -0
  3. data/spec/spec_helper.rb +2 -0
  4. data/spec/unit/checksum/storage/filesystem_spec.rb +4 -4
  5. data/spec/unit/config_spec.rb +7 -4
  6. data/spec/unit/data_bag_spec.rb +11 -11
  7. data/spec/unit/formatters/error_inspectors/compile_error_inspector_spec.rb +8 -8
  8. data/spec/unit/formatters/error_inspectors/resource_failure_inspector_spec.rb +5 -5
  9. metadata +10 -124
  10. data/distro/README +0 -2
  11. data/distro/arch/etc/conf.d/chef-client.conf +0 -5
  12. data/distro/arch/etc/conf.d/chef-expander.conf +0 -8
  13. data/distro/arch/etc/conf.d/chef-server-webui.conf +0 -10
  14. data/distro/arch/etc/conf.d/chef-server.conf +0 -10
  15. data/distro/arch/etc/conf.d/chef-solr.conf +0 -8
  16. data/distro/arch/etc/rc.d/chef-client +0 -90
  17. data/distro/arch/etc/rc.d/chef-expander +0 -78
  18. data/distro/arch/etc/rc.d/chef-server +0 -78
  19. data/distro/arch/etc/rc.d/chef-server-webui +0 -78
  20. data/distro/arch/etc/rc.d/chef-solr +0 -78
  21. data/distro/common/html/chef-client.8.html +0 -145
  22. data/distro/common/html/chef-expander.8.html +0 -164
  23. data/distro/common/html/chef-expanderctl.8.html +0 -146
  24. data/distro/common/html/chef-server-webui.8.html +0 -185
  25. data/distro/common/html/chef-server.8.html +0 -182
  26. data/distro/common/html/chef-solo.8.html +0 -191
  27. data/distro/common/html/chef-solr.8.html +0 -165
  28. data/distro/common/html/knife-bootstrap.1.html +0 -241
  29. data/distro/common/html/knife-client.1.html +0 -219
  30. data/distro/common/html/knife-configure.1.html +0 -170
  31. data/distro/common/html/knife-cookbook-site.1.html +0 -241
  32. data/distro/common/html/knife-cookbook.1.html +0 -384
  33. data/distro/common/html/knife-data-bag.1.html +0 -238
  34. data/distro/common/html/knife-environment.1.html +0 -267
  35. data/distro/common/html/knife-exec.1.html +0 -134
  36. data/distro/common/html/knife-index.1.html +0 -125
  37. data/distro/common/html/knife-node.1.html +0 -250
  38. data/distro/common/html/knife-recipe.1.html +0 -92
  39. data/distro/common/html/knife-role.1.html +0 -200
  40. data/distro/common/html/knife-search.1.html +0 -288
  41. data/distro/common/html/knife-ssh.1.html +0 -156
  42. data/distro/common/html/knife-status.1.html +0 -128
  43. data/distro/common/html/knife-tag.1.html +0 -137
  44. data/distro/common/html/knife.1.html +0 -320
  45. data/distro/common/html/shef.1.html +0 -283
  46. data/distro/common/man/man1/knife-bootstrap.1 +0 -201
  47. data/distro/common/man/man1/knife-client.1 +0 -99
  48. data/distro/common/man/man1/knife-configure.1 +0 -88
  49. data/distro/common/man/man1/knife-cookbook-site.1 +0 -145
  50. data/distro/common/man/man1/knife-cookbook.1 +0 -345
  51. data/distro/common/man/man1/knife-data-bag.1 +0 -136
  52. data/distro/common/man/man1/knife-environment.1 +0 -178
  53. data/distro/common/man/man1/knife-exec.1 +0 -46
  54. data/distro/common/man/man1/knife-index.1 +0 -29
  55. data/distro/common/man/man1/knife-node.1 +0 -134
  56. data/distro/common/man/man1/knife-role.1 +0 -88
  57. data/distro/common/man/man1/knife-search.1 +0 -280
  58. data/distro/common/man/man1/knife-ssh.1 +0 -79
  59. data/distro/common/man/man1/knife-status.1 +0 -29
  60. data/distro/common/man/man1/knife-tag.1 +0 -43
  61. data/distro/common/man/man1/knife.1 +0 -288
  62. data/distro/common/man/man1/shef.1 +0 -256
  63. data/distro/common/man/man8/chef-client.8 +0 -104
  64. data/distro/common/man/man8/chef-expander.8 +0 -97
  65. data/distro/common/man/man8/chef-expanderctl.8 +0 -62
  66. data/distro/common/man/man8/chef-server-webui.8 +0 -155
  67. data/distro/common/man/man8/chef-server.8 +0 -147
  68. data/distro/common/man/man8/chef-solo.8 +0 -158
  69. data/distro/common/man/man8/chef-solr.8 +0 -122
  70. data/distro/common/markdown/README +0 -3
  71. data/distro/common/markdown/man1/knife-bootstrap.mkd +0 -141
  72. data/distro/common/markdown/man1/knife-client.mkd +0 -103
  73. data/distro/common/markdown/man1/knife-configure.mkd +0 -70
  74. data/distro/common/markdown/man1/knife-cookbook-site.mkd +0 -123
  75. data/distro/common/markdown/man1/knife-cookbook.mkd +0 -263
  76. data/distro/common/markdown/man1/knife-data-bag.mkd +0 -121
  77. data/distro/common/markdown/man1/knife-environment.mkd +0 -151
  78. data/distro/common/markdown/man1/knife-exec.mkd +0 -37
  79. data/distro/common/markdown/man1/knife-index.mkd +0 -30
  80. data/distro/common/markdown/man1/knife-node.mkd +0 -130
  81. data/distro/common/markdown/man1/knife-role.mkd +0 -85
  82. data/distro/common/markdown/man1/knife-search.mkd +0 -180
  83. data/distro/common/markdown/man1/knife-ssh.mkd +0 -69
  84. data/distro/common/markdown/man1/knife-status.mkd +0 -36
  85. data/distro/common/markdown/man1/knife-tag.mkd +0 -39
  86. data/distro/common/markdown/man1/knife.mkd +0 -218
  87. data/distro/common/markdown/man1/shef.mkd +0 -189
  88. data/distro/common/markdown/man8/chef-client.mkd +0 -74
  89. data/distro/common/markdown/man8/chef-expander.mkd +0 -82
  90. data/distro/common/markdown/man8/chef-expanderctl.mkd +0 -58
  91. data/distro/common/markdown/man8/chef-server-webui.mkd +0 -121
  92. data/distro/common/markdown/man8/chef-server.mkd +0 -121
  93. data/distro/common/markdown/man8/chef-solo.mkd +0 -107
  94. data/distro/common/markdown/man8/chef-solr.mkd +0 -89
  95. data/distro/debian/etc/default/chef-client +0 -4
  96. data/distro/debian/etc/default/chef-expander +0 -8
  97. data/distro/debian/etc/default/chef-server +0 -9
  98. data/distro/debian/etc/default/chef-server-webui +0 -9
  99. data/distro/debian/etc/default/chef-solr +0 -8
  100. data/distro/debian/etc/init.d/chef-client +0 -210
  101. data/distro/debian/etc/init.d/chef-expander +0 -176
  102. data/distro/debian/etc/init.d/chef-server +0 -122
  103. data/distro/debian/etc/init.d/chef-server-webui +0 -123
  104. data/distro/debian/etc/init.d/chef-solr +0 -176
  105. data/distro/debian/etc/init/chef-client.conf +0 -17
  106. data/distro/debian/etc/init/chef-expander.conf +0 -17
  107. data/distro/debian/etc/init/chef-server-webui.conf +0 -17
  108. data/distro/debian/etc/init/chef-server.conf +0 -17
  109. data/distro/debian/etc/init/chef-solr.conf +0 -17
  110. data/distro/redhat/etc/init.d/chef-client +0 -121
  111. data/distro/redhat/etc/init.d/chef-expander +0 -104
  112. data/distro/redhat/etc/init.d/chef-server +0 -112
  113. data/distro/redhat/etc/init.d/chef-server-webui +0 -112
  114. data/distro/redhat/etc/init.d/chef-solr +0 -104
  115. data/distro/redhat/etc/logrotate.d/chef-client +0 -8
  116. data/distro/redhat/etc/logrotate.d/chef-expander +0 -8
  117. data/distro/redhat/etc/logrotate.d/chef-server +0 -8
  118. data/distro/redhat/etc/logrotate.d/chef-server-webui +0 -8
  119. data/distro/redhat/etc/logrotate.d/chef-solr +0 -8
  120. data/distro/redhat/etc/sysconfig/chef-client +0 -15
  121. data/distro/redhat/etc/sysconfig/chef-expander +0 -7
  122. data/distro/redhat/etc/sysconfig/chef-server +0 -14
  123. data/distro/redhat/etc/sysconfig/chef-server-webui +0 -14
  124. data/distro/redhat/etc/sysconfig/chef-solr +0 -8
  125. data/distro/windows/service_manager.rb +0 -164
@@ -1,70 +0,0 @@
1
- knife-configure(1) -- Generate configuration files for knife or Chef Client
2
- ========================================
3
-
4
- ## SYNOPSIS
5
-
6
- __knife__ __configure__ [client] _(options)_
7
-
8
- ## DESCRIPTION
9
- Generates a knife.rb configuration file interactively. When given the
10
- --initial option, also creates a new administrative user.
11
-
12
- ## CONFIGURE SUBCOMMANDS ##
13
-
14
- __knife configure__ _(options)_
15
-
16
- * `-i`, `--initial`:
17
- Create an initial API Client
18
- * `-r`, `--repository REPO`:
19
- The path to your chef-repo
20
-
21
- Create a configuration file for knife. This will prompt for values to
22
- enter into the file. Default values are listed in square brackets if no
23
- other entry is typed. See __knife__(1) for a description of
24
- configuration options.
25
-
26
- __knife configure client__ _directory_
27
-
28
- Read the _knife.rb_ config file and generate a config file suitable for
29
- use in _/etc/chef/client.rb_ and copy the validation certificate into
30
- the specified _directory_.
31
-
32
- ## EXAMPLES
33
- * On a freshly installed Chef Server, use _knife configure -i_ to
34
- create an administrator and knife configuration file. Leave the
35
- field blank to accept the default value. On most systems, the
36
- default values are acceptable.
37
-
38
- user@host$ knife configure -i
39
- Please enter the chef server URL: [http://localhost:4000]
40
- Please enter a clientname for the new client: [username]
41
- Please enter the existing admin clientname: [chef-webui]
42
- Please enter the location of the existing admin client's private key: [/etc/chef/webui.pem]
43
- Please enter the validation clientname: [chef-validator]
44
- Please enter the location of the validation key: [/etc/chef/validation.pem]
45
- Please enter the path to a chef repository (or leave blank):
46
- Creating initial API user...
47
- Created (or updated) client[username]
48
- Configuration file written to /home/username/.chef/knife.rb
49
-
50
- This creates a new administrator client named _username_, writes
51
- a configuration file to _/home/username/.chef/knife.rb_, and the
52
- private key to _/home/username/.chef/username.pem_. The
53
- configuration file and private key may be copied to another system
54
- to facilitate administration of the Chef Server from a remote
55
- system. Depending on the value given for the Chef Server URL, you
56
- may need to modify that setting after copying to a remote host.
57
-
58
- ## SEE ALSO
59
- __knife__(1) __knife-client__(1)
60
-
61
- ## AUTHOR
62
- Chef was written by Adam Jacob <adam@opscode.com> with many contributions from the community.
63
-
64
- ## DOCUMENTATION
65
- This manual page was written by Joshua Timberman <joshua@opscode.com>.
66
- Permission is granted to copy, distribute and / or modify this document under the terms of the Apache 2.0 License.
67
-
68
- ## CHEF
69
- Knife is distributed with Chef. <http://wiki.opscode.com/display/chef/Home>
70
-
@@ -1,123 +0,0 @@
1
- knife-cookbook-site(1) -- Install and update open source cookbooks
2
- ========================================
3
-
4
- ## SYNOPSIS
5
-
6
- __knife__ __cookbook site__ _sub-command_ _(options)_
7
-
8
- ## COOKBOOK SITE SUB-COMMANDS
9
- `knife cookbook site` provides the following subcommands:
10
-
11
- ## INSTALL
12
- __cookbook site install COOKBOOK [VERSION]__ _(options)_
13
-
14
- * `-D`, `--skip-dependencies `:
15
- Skip automatic installation of dependencies.
16
- * `-o`, `--cookbook-path PATH`:
17
- Install cookbooks to PATH
18
- * `-B`, `--branch BRANCH`:
19
- Default branch to work with [defaults to master]
20
-
21
- Uses git(1) version control in conjunction with the cookbook site to
22
- install community contributed cookbooks to your local cookbook
23
- repository. Running `knife cookbook site install` does the following:
24
-
25
- 1. A new "pristine copy" branch is created in git for tracking the
26
- upstream;
27
- 2. All existing cookbooks are removed from the branch;
28
- 3. The cookbook is downloaded from the cookbook site in tarball form;
29
- 4. The downloaded cookbook is untarred, and its contents commited via git;
30
- 5. The pristine copy branch is merged into the master branch.
31
-
32
- By installing cookbook with this process, you can locally modify the
33
- upstream cookbook in your master branch and let git maintain your
34
- changes as a separate patch. When an updated upstream version becomes
35
- available, you will be able to merge the upstream changes while
36
- maintaining your local modifications.
37
-
38
- Unless _--skip-dependencies_ is specified, the process is applied recursively to all the
39
- cookbooks _COOKBOOK_ depends on (via metadata _dependencies_).
40
-
41
- ## DOWNLOAD
42
- __knife cookbook site download COOKBOOK [VERSION]__ _(options)_
43
-
44
- * `-f`, `--file FILE`:
45
- The filename to write to
46
- * `--force`:
47
- Force download deprecated cookbook
48
-
49
- Downloads a specific cookbook from the Community site, optionally
50
- specifying a certain version.
51
-
52
- ## LIST
53
- __knife cookbook site list__ _(options)_
54
-
55
- * `-w`, `--with-uri`:
56
- Show corresponding URIs
57
-
58
- Lists available cookbooks from the Community site.
59
-
60
- ## SEARCH
61
- __knife cookbook site search QUERY__ _(options)_
62
-
63
- Searches for available cookbooks matching the specified query.
64
-
65
- ## SHARE
66
- __knife cookbook site share COOKBOOK CATEGORY__ _(options)_
67
-
68
- * `-k`, `--key KEY`:
69
- API Client Key
70
- * `-u`, `--user USER`:
71
- API Client Username
72
- * `-o`, `--cookbook-path PATH:PATH`:
73
- A colon-separated path to look for cookbooks in
74
-
75
- Uploads the specified cookbook using the given category to the Opscode
76
- cookbooks site. Requires a login user and certificate for the Opscode
77
- Cookbooks site. By default, knife will use the username and API key
78
- you've configured in your configuration file; otherwise you must
79
- explicitly set these values on the command line or use an alternate
80
- configuration file.
81
-
82
- ## UNSHARE
83
- __knife cookbook site unshare COOKBOOK__
84
-
85
- Stops sharing the specified cookbook on the Opscode cookbooks site.
86
-
87
- ## SHOW
88
- __knife cookbook site show COOKBOOK [VERSION]__ _(options)_
89
-
90
- Shows information from the site about a particular cookbook.
91
-
92
- ## DESCRIPTION
93
- The cookbook site, <http://community.opscode.com/>, is a cookbook
94
- distribution service operated by Opscode. This service provides users
95
- with a central location to publish cookbooks for sharing with other
96
- community members.
97
-
98
- `knife cookbook site` commands provide an interface to the cookbook
99
- site's HTTP API. For commands that read data from the API, no account is
100
- required. In order to upload cookbooks using the `knife cookbook site
101
- share` command, you must create an account on the cookbook site and
102
- configure your credentials via command line option or in your knife
103
- configuration file.
104
-
105
- ## EXAMPLES
106
- Uploading cookbooks to the Opscode cookbooks site:
107
-
108
- knife cookbook site share example Other -k ~/.chef/USERNAME.pem -u USERNAME
109
-
110
- ## SEE ALSO
111
- __knife-cookbook(1)__
112
- <http://community.opscode.com/cookbooks>
113
-
114
- ## AUTHOR
115
- Chef was written by Adam Jacob <adam@opscode.com> with many contributions from the community.
116
-
117
- ## DOCUMENTATION
118
- This manual page was written by Joshua Timberman <joshua@opscode.com>.
119
- Permission is granted to copy, distribute and / or modify this document under the terms of the Apache 2.0 License.
120
-
121
- ## CHEF
122
- Knife is distributed with Chef. <http://wiki.opscode.com/display/chef/Home>
123
-
@@ -1,263 +0,0 @@
1
- knife-cookbook(1) -- upload and manage chef cookbooks
2
- ========================================
3
-
4
- ## SYNOPSIS
5
-
6
- __knife__ __cookbook__ _sub-command_ _(options)_
7
-
8
- ## SUB-COMMANDS
9
- `knife cookbook` supports the following sub commands:
10
-
11
- ## LIST
12
- __knife cookbook list__ _(options)_
13
-
14
- * `-a`, `--all`:
15
- show all versions of a cookbook instead of just the most recent
16
- * `-w`, `--with-uri`:
17
- show corresponding uris
18
-
19
- Lists the cookbooks available on the Chef server.
20
-
21
- ## SHOW
22
- __knife cookbook show cookbook [version] [part] [filename]__ _(options)_
23
-
24
- * `-f`, `--fqdn fqdn `:
25
- the fqdn of the host to see the file for
26
- * `-p`, `--platform platform `:
27
- the platform to see the file for
28
- * `-v`, `--platform-version version`:
29
- the platform version to see the file for
30
- * `-w`, `--with-uri`:
31
- Show corresponding URIs
32
-
33
- show a particular part of a _cookbook_ for the specified _version_. _part_ can be one of:
34
-
35
- * _attributes_
36
- * _definitions_
37
- * _files_
38
- * _libraries_
39
- * _providers_
40
- * _recipes_
41
- * _resources_
42
- * _templates_
43
-
44
- ## UPLOAD
45
- __knife cookbook upload [cookbooks...]__ _(options)_
46
-
47
- * `-a`, `--all`:
48
- upload all cookbooks, rather than just a single cookbook
49
- * `-o`, `--cookbook-path path:path`:
50
- a colon-separated path to look for cookbooks in
51
- * `-d`, `--upload-dependencies`:
52
- Uploads additional cookbooks that this cookbook lists in as
53
- dependencies in its metadata.
54
- * `-E`, `--environment ENVIRONMENT`:
55
- An _ENVIRONMENT_ to apply the uploaded cookbooks to. Specifying this
56
- option will cause knife to edit the _ENVIRONMENT_ to place a strict
57
- version constraint on the cookbook version(s) uploaded.
58
- * `--freeze`:
59
- Sets the frozen flag on the uploaded cookbook(s) Any future attempt
60
- to modify the cookbook without changing the version number will
61
- return an error unless --force is specified.
62
- * `--force`:
63
- Overrides the frozen flag on a cookbook, allowing you to overwrite a
64
- cookbook version that has previously been uploaded with the --freeze
65
- option.
66
-
67
- Uploads one or more cookbooks from your local cookbook repository(ies)
68
- to the Chef Server. Only files that don't yet exist on the server will
69
- be uploaded.
70
-
71
- As the command parses the name args as 1..n cookbook names:
72
- `knife cookbook upload COOKBOOK COOKBOOK ...`
73
- works for one to many cookbooks.
74
-
75
- ## DOWNLOAD
76
- __knife cookbook download cookbook [version]__ _(options)_
77
-
78
- * `-d`, `--dir download_directory`:
79
- the directory to download the cookbook into
80
- * `-f`, `--force`:
81
- overwrite an existing directory with the download
82
- * `-n`, `--latest`:
83
- download the latest version of the cookbook
84
-
85
- download a cookbook from the chef server. if no version is specified and
86
- only one version exists on the server, that version will be downloaded.
87
- if no version is specified and multiple versions are available on the
88
- server, you will be prompted for a version to download.
89
-
90
- ## DELETE
91
- __knife cookbook delete cookbook [version]__ _(options)_
92
-
93
- * `-a`, `--all`:
94
- delete all versions
95
- * `-p`, `--purge`:
96
- purge files from backing store. this will disable any cookbook that contains any of the same files as the cookbook being purged.
97
-
98
- delete the specified _version_ of the named _cookbook_. if no version is
99
- specified, and only one version exists on the server, that version will
100
- be deleted. if multiple versions are available on the server, you will
101
- be prompted for a version to delete.
102
-
103
- ## BULK DELETE
104
- __knife cookbook bulk delete regex__ _(options)_
105
-
106
- * `-p`, `--purge`:
107
- purge files from backing store. this will disable any cookbook that
108
- contains any of the same files as the cookbook being purged.
109
-
110
- delete cookbooks on the chef server based on a regular expression. the
111
- regular expression (_regex_) should be in quotes, not in //'s.
112
-
113
- ## COOKBOOK CREATE
114
- __knife cookbook create cookbook__ _(options)_
115
-
116
- * `-o`, `--cookbook-path path`:
117
- the directory where the cookbook will be created
118
- * `-r`, `--readme-format format`:
119
- format of the readme file md, mkd, txt, rdoc
120
- * `-c`, `--copyright copyright`:
121
- name of copyright holder
122
- * `-i`, `--license license`:
123
- license for cookbook, apachev2 or none
124
- * `-e`, `--email email`:
125
- email address of cookbook maintainer
126
-
127
- this is a helper command that creates a new cookbook directory in the
128
- `cookbook_path`. the following directories and files are created for the
129
- named cookbook.
130
-
131
- * cookbook/attributes
132
- * cookbook/definitions
133
- * cookbook/files/default
134
- * cookbook/libraries
135
- * cookbook/metadata.rb
136
- * cookbook/providers
137
- * cookbook/readme.md
138
- * cookbook/recipes/default.rb
139
- * cookbook/resources
140
- * cookbook/templates/default
141
-
142
- supported readme formats are 'md' (default), 'mkd', 'txt', 'rdoc'. the
143
- readme file will be written with the specified extension and a set of
144
- helpful starting headers.
145
-
146
- specify `-c` or `--copyright` with the name of the copyright holder as
147
- your name or your company/organization name in a quoted string. if this
148
- value is not specified an all-caps string `your_company_name` is used
149
- which can be easily changed with find/replace.
150
-
151
- specify `-i` or `--license` with the license that the cookbook is
152
- distributed under for sharing with other people or posting to the
153
- opscode cookbooks site. be aware of the licenses of files you put inside
154
- the cookbook and follow any restrictions they describe. when using
155
- `none` (default) or `apachev2`, comment header text and metadata file
156
- are pre-filled. the `none` license will be treated as
157
- non-redistributable.
158
-
159
- specify `-e` or `--email` with the email address of the cookbook's
160
- maintainer. if this value is not specified, an all-caps string
161
- `your_email` is used which can easily be changed with find/replace.
162
-
163
- the cookbook copyright, license, email and readme_format settings can be filled in the
164
- `knife.rb`, for example with default values:
165
-
166
- cookbook_copyright "your_company_name"
167
- cookbook_license "none"
168
- cookbook_email "your_email"
169
- readme_format "md"
170
-
171
-
172
- ## METADATA
173
- __knife cookbook metadata cookbook__ _(options)_
174
-
175
- * `-a`, `--all`:
176
- generate metadata for all cookbooks, rather than just a single cookbook
177
- * `-o`, `--cookbook-path path:path`:
178
- a colon-separated path to look for cookbooks in
179
-
180
- generate cookbook metadata for the named _cookbook_. the _path_ used here specifies where the cookbooks directory is located and corresponds to the `cookbook_path` configuration option.
181
-
182
- ## METADATA FROM FILE
183
- __knife cookbook metadata from file__ _(options)_
184
-
185
- load the cookbook metadata from a specified file.
186
-
187
- ## TEST
188
- __knife cookbook test [cookbooks...]__ _(options)_
189
-
190
- * `-a`, `--all`:
191
- test all cookbooks, rather than just a single cookbook
192
- * `-o`, `--cookbook-path path:path`:
193
- a colon-separated path to look for cookbooks in
194
-
195
- test the specified cookbooks for syntax errors. this uses the built-in
196
- ruby syntax checking option for files in the cookbook ending in `.rb`,
197
- and the erb syntax check for files ending in `.erb` (templates).
198
-
199
- ## RECIPE LIST
200
- __knife recipe list [PATTERN]__
201
-
202
- List available recipes from the server. Specify _PATTERN_ as a regular
203
- expression to limit the results.
204
-
205
- ## DESCRIPTION
206
- Cookbooks are the fundamental unit of distribution in Chef. They
207
- encapsulate all recipes of resources and assets used to configure a
208
- particular aspect of the infrastructure. The following sub-commands can
209
- be used to manipulate the cookbooks stored on the Chef Server.
210
-
211
- On disk, cookbooks are directories with a defined structure. The
212
- following directories may appear within a cookbook:
213
-
214
- * COOKBOOK/attributes/:
215
- Ruby files that define default parameters to be used in recipes
216
- * COOKBOOK/definitions/:
217
- Ruby files that contain _resource definitions_
218
- * COOKBOOK/files/SPECIFICITY:
219
- Files of arbitrary type. These files may be downloaded by
220
- chef-client(8) when configuring a host.
221
- * COOKBOOK/libraries/:
222
- Ruby files that contain library code needed for recipes
223
- * COOKBOOK/providers/:
224
- Ruby files that contain Lightweight Provider definitions
225
- * COOKBOOK/recipes/:
226
- Ruby files that use Chef's recipe DSL to describe the desired
227
- configuration of a system
228
- * COOKBOOK/resources/:
229
- Ruby files that contain Lightweight Resource definitions
230
- * COOKBOOK/templates/SPECIFICITY:
231
- ERuby (ERb) template files. These are referenced by _recipes_ and
232
- evaluated to dynamically generate configuration files.
233
-
234
- __SPECIFICITY__ is a feature of _files_ and _templates_ that allow you
235
- to specify alternate files to be used on a specific OS platform or host.
236
- The default specificity setting is _default_, that is files in
237
- `COOKBOOK/files/default` will be used when a more specific copy is not
238
- available. Further documentation for this feature is available on the
239
- Chef wiki: <http://wiki.opscode.com/display/chef/File+Distribution#FileDistribution-FileSpecificity>
240
-
241
- Cookbooks also contain a metadata file that defines various properties
242
- of the cookbook. The most important of these are the _version_ and the
243
- _dependencies_. The _version_ is used in combination with environments
244
- to select which copy of a given cookbook is distributed to a node. The
245
- _dependencies_ are used by the server to determine which additional
246
- cookbooks must be distributed to a given host when it requires a
247
- cookbook.
248
-
249
- ## SEE ALSO
250
- __knife-environment(1)__ __knife-cookbook-site(1)__
251
- <http://wiki.opscode.com/display/chef/Cookbooks>
252
- <http://wiki.opscode.com/display/chef/Metadata>
253
-
254
- ## AUTHOR
255
- Chef was written by Adam Jacob <adam@opscode.com> with many contributions from the community.
256
-
257
- ## DOCUMENTATION
258
- This manual page was written by Joshua Timberman <joshua@opscode.com>.
259
- Permission is granted to copy, distribute and / or modify this document under the terms of the Apache 2.0 License.
260
-
261
-
262
- ## CHEF
263
- Knife is distributed with Chef. <http://wiki.opscode.com/display/chef/Home>