chef 0.10.0.beta.7 → 0.10.0.beta.8
Sign up to get free protection for your applications and to get access to all the features.
- data/distro/common/html/knife-bootstrap.1.html +182 -0
- data/distro/common/html/knife-client.1.html +216 -0
- data/distro/common/html/knife-configure.1.html +170 -0
- data/distro/common/html/knife-cookbook-site.1.html +166 -0
- data/distro/common/html/knife-cookbook.1.html +233 -0
- data/distro/common/html/knife-data-bag.1.html +234 -0
- data/distro/common/html/knife-environment.1.html +93 -0
- data/distro/common/html/knife-exec.1.html +93 -0
- data/distro/common/html/knife-index.1.html +125 -0
- data/distro/common/html/knife-node.1.html +268 -0
- data/distro/common/html/knife-recipe.1.html +92 -0
- data/distro/common/html/knife-role.1.html +136 -0
- data/distro/common/html/knife-search.1.html +102 -0
- data/distro/common/html/knife-ssh.1.html +101 -0
- data/distro/common/html/knife-status.1.html +97 -0
- data/distro/common/html/knife-tag.1.html +93 -0
- data/distro/common/html/knife.1.html +362 -0
- data/distro/common/man/man1/knife-bootstrap.1 +137 -0
- data/distro/common/man/man1/knife-client.1 +98 -0
- data/distro/common/man/man1/knife-configure.1 +88 -0
- data/distro/common/man/man1/knife-cookbook-site.1 +91 -0
- data/distro/common/man/man1/knife-cookbook.1 +242 -0
- data/distro/common/man/man1/knife-data-bag.1 +130 -0
- data/distro/common/man/man1/knife-environment.1 +13 -0
- data/distro/common/man/man1/knife-exec.1 +13 -0
- data/distro/common/man/man1/knife-index.1 +29 -0
- data/distro/common/man/man1/knife-node.1 +153 -0
- data/distro/common/man/man1/knife-recipe.1 +13 -0
- data/distro/common/man/man1/knife-role.1 +64 -0
- data/distro/common/man/man1/knife-search.1 +37 -0
- data/distro/common/man/man1/knife-ssh.1 +33 -0
- data/distro/common/man/man1/knife-status.1 +17 -0
- data/distro/common/man/man1/knife-tag.1 +13 -0
- data/distro/common/man/man1/knife.1 +346 -0
- data/distro/common/man/{man8/shef.8 → man1/shef.1} +0 -0
- data/distro/common/man/{man1/chef-server-webui.1 → man8/chef-server-webui.8} +0 -0
- data/distro/common/man/{man1/chef-server.1 → man8/chef-server.8} +0 -0
- data/distro/common/man/{man1/chef-solr.1 → man8/chef-solr.8} +0 -0
- data/distro/common/markdown/man1/knife-bootstrap.mkd +88 -0
- data/distro/common/markdown/man1/knife-client.mkd +101 -0
- data/distro/common/markdown/man1/knife-configure.mkd +70 -0
- data/distro/common/markdown/man1/knife-cookbook-site.mkd +69 -0
- data/distro/common/markdown/man1/knife-cookbook.mkd +136 -0
- data/distro/common/markdown/man1/knife-data-bag.mkd +117 -0
- data/distro/common/markdown/man1/knife-environment.mkd +8 -0
- data/distro/common/markdown/man1/knife-exec.mkd +9 -0
- data/distro/common/markdown/man1/knife-index.mkd +30 -0
- data/distro/common/markdown/man1/knife-node.mkd +147 -0
- data/distro/common/markdown/man1/knife-recipe.mkd +24 -0
- data/distro/common/markdown/man1/knife-role.mkd +79 -0
- data/distro/common/markdown/man1/knife-search.mkd +56 -0
- data/distro/common/markdown/man1/knife-ssh.mkd +64 -0
- data/distro/common/markdown/man1/knife-status.mkd +38 -0
- data/distro/common/markdown/man1/knife-tag.mkd +8 -0
- data/distro/common/markdown/man1/knife.mkd +261 -0
- data/lib/chef/cookbook/metadata.rb +76 -40
- data/lib/chef/cookbook_version.rb +86 -2
- data/lib/chef/cookbook_version_selector.rb +7 -2
- data/lib/chef/environment.rb +41 -0
- data/lib/chef/knife/configure.rb +4 -0
- data/lib/chef/knife/cookbook_upload.rb +4 -1
- data/lib/chef/knife/help.rb +98 -0
- data/lib/chef/rest.rb +1 -0
- data/lib/chef/version.rb +1 -1
- metadata +58 -11
- data/distro/common/man/man1/chef-indexer.1 +0 -42
- data/distro/common/man/man1/chef-solr-indexer.1 +0 -55
- data/distro/common/man/man8/chef-solr-rebuild.8 +0 -37
- data/distro/common/man/man8/knife.8 +0 -1349
- data/distro/common/markdown/knife.mkd +0 -865
@@ -0,0 +1,101 @@
|
|
1
|
+
knife-client(1) -- Manage Chef API Clients
|
2
|
+
========================================
|
3
|
+
|
4
|
+
## SYNOPSIS
|
5
|
+
|
6
|
+
__knife__ __client__ _sub-command_ _(options)_
|
7
|
+
|
8
|
+
## DESCRIPTION
|
9
|
+
Clients are identities used for communication with the Chef Server API,
|
10
|
+
roughly equivalent to user accounts on the Chef Server, except that
|
11
|
+
clients only communicate with the Chef Server API and are authenticated
|
12
|
+
via request signatures.
|
13
|
+
|
14
|
+
In the typical case, there will be one client object on the server for
|
15
|
+
each node, and the corresponding client and node will have identical
|
16
|
+
names.
|
17
|
+
|
18
|
+
In the Chef authorization model, there is one special client, the
|
19
|
+
"validator", which is authorized to create new non-administrative
|
20
|
+
clients but has minimal privileges otherwise. This identity is used as a
|
21
|
+
sort of "guest account" to create a client identity when initially
|
22
|
+
setting up a host for management with Chef.
|
23
|
+
|
24
|
+
## CLIENT SUB-COMMANDS
|
25
|
+
|
26
|
+
## BULK DELETE
|
27
|
+
__knife client bulk delete__ _regex_ _(options)_
|
28
|
+
|
29
|
+
Delete clients where the client name matches the regular expression
|
30
|
+
_regex_ on the Chef Server. The regular expression should be given as a
|
31
|
+
quoted string, and not surrounded by forward slashes.
|
32
|
+
|
33
|
+
## CREATE
|
34
|
+
__knife client create__ _client name_ _(options)_
|
35
|
+
|
36
|
+
* `-a`, `--admin `:
|
37
|
+
Create the client as an admin
|
38
|
+
* `-f`, `--file FILE`:
|
39
|
+
Write the key to a file
|
40
|
+
|
41
|
+
Create a new client. This generates an RSA keypair. The private key will
|
42
|
+
be displayed on _STDOUT_ or written to the named file. The public half
|
43
|
+
will be stored on the Server. For _chef-client_ systems, the private key
|
44
|
+
should be copied to the system as `/etc/chef/client.pem`.
|
45
|
+
|
46
|
+
Admin clients should be created for users that will use _knife_ to
|
47
|
+
access the API as an administrator. The private key will generally be
|
48
|
+
copied to `~/.chef/client\_name.pem` and referenced in the `knife.rb`
|
49
|
+
configuration file.
|
50
|
+
|
51
|
+
## DELETE
|
52
|
+
__knife client delete__ _client name_ _(options)_
|
53
|
+
|
54
|
+
Deletes a registered client.
|
55
|
+
|
56
|
+
## EDIT
|
57
|
+
__client edit__ _client name_ _(options)_
|
58
|
+
|
59
|
+
Edit a registered client.
|
60
|
+
|
61
|
+
## LIST
|
62
|
+
__client list__ _(options)_
|
63
|
+
|
64
|
+
* `-w`, `--with-uri`:
|
65
|
+
Show corresponding URIs
|
66
|
+
|
67
|
+
List all registered clients.
|
68
|
+
|
69
|
+
## REREGISTER
|
70
|
+
__client reregister__ _client name_ _(options)_
|
71
|
+
|
72
|
+
* `-f`, `--file FILE`:
|
73
|
+
Write the key to a file
|
74
|
+
|
75
|
+
Regenerate the RSA keypair for a client. The public half will be stored
|
76
|
+
on the server and the private key displayed on _STDOUT_ or written to
|
77
|
+
the named file. This operation will invalidate the previous keypair used
|
78
|
+
by the client, preventing it from authenticating with the Chef Server.
|
79
|
+
Use care when reregistering the validator client.
|
80
|
+
|
81
|
+
## SHOW
|
82
|
+
__client show__ _client name_ _(options)_
|
83
|
+
|
84
|
+
* `-a`, `--attribute ATTR`:
|
85
|
+
Show only one attribute
|
86
|
+
|
87
|
+
Show a client. Output format is determined by the --format option.
|
88
|
+
|
89
|
+
## SEE ALSO
|
90
|
+
__knife-node__(1)
|
91
|
+
|
92
|
+
## AUTHOR
|
93
|
+
Chef was written by Adam Jacob <adam@opscode.com> with many contributions from the community.
|
94
|
+
|
95
|
+
## DOCUMENTATION
|
96
|
+
This manual page was written by Joshua Timberman <joshua@opscode.com>.
|
97
|
+
Permission is granted to copy, distribute and / or modify this document under the terms of the Apache 2.0 License.
|
98
|
+
|
99
|
+
## CHEF
|
100
|
+
Knife is distributed with Chef. <http://wiki.opscode.com/display/chef/Home>
|
101
|
+
|
@@ -0,0 +1,70 @@
|
|
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
|
+
|
@@ -0,0 +1,69 @@
|
|
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
|
+
|
10
|
+
The following sub-commands are still in the context of cookbooks, but they make use of Opscode's Cookbook Community site, _http://cookbooks.opscode.com/_. That site has an API, and these sub-commands utilize that API, rather than the Chef Server API.
|
11
|
+
|
12
|
+
__cookbook site download COOKBOOK [VERSION]__ _(options)_
|
13
|
+
|
14
|
+
* `-f`, `--file FILE`:
|
15
|
+
The filename to write to
|
16
|
+
|
17
|
+
Downloads a specific cookbook from the Community site, optionally specifying a certain version.
|
18
|
+
|
19
|
+
__cookbook site list__ _(options)_
|
20
|
+
|
21
|
+
* `-w`, `--with-uri`:
|
22
|
+
Show corresponding URIs
|
23
|
+
|
24
|
+
Lists available cookbooks from the Community site.
|
25
|
+
|
26
|
+
__cookbook site search QUERY__ _(options)_
|
27
|
+
|
28
|
+
Searches the Community site with the specified query.
|
29
|
+
|
30
|
+
__cookbook site share COOKBOOK CATEGORY__ _(options)_
|
31
|
+
|
32
|
+
* `-k`, `--key KEY`:
|
33
|
+
API Client Key
|
34
|
+
* `-u`, `--user USER`:
|
35
|
+
API Client Username
|
36
|
+
* `-o`, `--cookbook-path PATH:PATH`:
|
37
|
+
A colon-separated path to look for cookbooks in
|
38
|
+
|
39
|
+
Uploads the specified cookbook using the given category to the Opscode cookbooks site. Requires a login user and certificate for the Opscode Cookbooks site. See __EXAMPLES__ for usage if the Opscode user and certificate pair are not used for authenticating with the Chef Server. In other words, if the Chef Server is not the Opscode Platform.
|
40
|
+
|
41
|
+
__cookbook site unshare COOKBOOK__
|
42
|
+
|
43
|
+
Stops sharing the specified cookbook on the Opscode cookbooks site.
|
44
|
+
|
45
|
+
__cookbook site show COOKBOOK [VERSION]__ _(options)_
|
46
|
+
|
47
|
+
Shows information from the site about a particular cookbook.
|
48
|
+
|
49
|
+
__cookbook site vendor COOKBOOK [VERSION]__ _(options)_
|
50
|
+
|
51
|
+
* `-d`, `--dependencies`:
|
52
|
+
Grab dependencies automatically
|
53
|
+
|
54
|
+
Uses `git` version control in conjunction with the cookbook site to download upstream cookbooks. A new vendor branch is created in git, the cookbook downloaded from the site and untarred, then the master branch is merged. This allows the user to track upstream changes to cookbooks while merging in customizations. If _-d_ is specified, all the cookbooks it depends on (via metadata _dependencies_) are downloaded and untarred as well, each using their own vendor branch.
|
55
|
+
|
56
|
+
|
57
|
+
## SEE ALSO
|
58
|
+
__knife-environment__(1)
|
59
|
+
|
60
|
+
## AUTHOR
|
61
|
+
Chef was written by Adam Jacob <adam@opscode.com> with many contributions from the community.
|
62
|
+
|
63
|
+
## DOCUMENTATION
|
64
|
+
This manual page was written by Joshua Timberman <joshua@opscode.com>.
|
65
|
+
Permission is granted to copy, distribute and / or modify this document under the terms of the Apache 2.0 License.
|
66
|
+
|
67
|
+
## CHEF
|
68
|
+
Knife is distributed with Chef. <http://wiki.opscode.com/display/chef/Home>
|
69
|
+
|
@@ -0,0 +1,136 @@
|
|
1
|
+
knife-cookbook(1) -- Upload and manage Chef cookbooks
|
2
|
+
========================================
|
3
|
+
|
4
|
+
## SYNOPSIS
|
5
|
+
|
6
|
+
__knife__ __cookbook__ _sub-command_ _(options)_
|
7
|
+
|
8
|
+
## COOKBOOK SUB-COMMANDS
|
9
|
+
|
10
|
+
Cookbooks are the fundamental unit of distribution in Chef. They encapsulate all recipes of resources and assets used to configure a particular aspect of the infrastructure. The following sub-commands can be used to manipulate the cookbooks stored on the Chef Server.
|
11
|
+
|
12
|
+
__cookbook bulk delete REGEX__ _(options)_
|
13
|
+
|
14
|
+
* `-p`, `--purge`:
|
15
|
+
Purge files from backing store. This will disable any cookbook that contains any of the same files as the cookbook being purged.
|
16
|
+
|
17
|
+
Delete cookbooks on the Chef Server based on a regular expression. The regular expression (_REGEX_) should be in quotes, not in //'s.
|
18
|
+
|
19
|
+
__cookbook create COOKBOOK__ _(options)_
|
20
|
+
|
21
|
+
* `-o`, `--cookbook-path PATH`:
|
22
|
+
The directory where the cookbook will be created
|
23
|
+
* `-r`, `--readme-format FORMAT`:
|
24
|
+
Format of the README file
|
25
|
+
* `-C`, `--copyright COPYRIGHT`:
|
26
|
+
Name of Copyright holder
|
27
|
+
* `-I`, `--license LICENSE`:
|
28
|
+
License for cookbook, apachev2 or none
|
29
|
+
* `-E`, `--email EMAIL`:
|
30
|
+
Email address of cookbook maintainer
|
31
|
+
|
32
|
+
This is a helper command that creates a new cookbook directory in the `cookbook_path`. The following directories and files are created for the named cookbook.
|
33
|
+
|
34
|
+
* COOKBOOK/attributes
|
35
|
+
* COOKBOOK/definitions
|
36
|
+
* COOKBOOK/files/default
|
37
|
+
* COOKBOOK/libraries
|
38
|
+
* COOKBOOK/metadata.rb
|
39
|
+
* COOKBOOK/providers
|
40
|
+
* COOKBOOK/README.rdoc
|
41
|
+
* COOKBOOK/recipes/default.rb
|
42
|
+
* COOKBOOK/resources
|
43
|
+
* COOKBOOK/templates/default
|
44
|
+
|
45
|
+
Supported README formats are 'rdoc' (default), 'md', 'mkd', 'txt'. The README file will be written with the specified extension and a set of helpful starting headers.
|
46
|
+
|
47
|
+
Specify `-C` or `--copyright` with the name of the copyright holder as your name or your company/organization name in a quoted string. If this value is not specified an all-caps string `YOUR_COMPANY_NAME` is used which can be easily changed with find/replace.
|
48
|
+
|
49
|
+
Specify `-I` or `--license` with the license that the cookbook is distributed under for sharing with other people or posting to the Opscode Cookbooks site. Be aware of the licenses of files you put inside the cookbook and follow any restrictions they describe. When using `none` (default) or `apachev2`, comment header text and metadata file are pre-filled. The `none` license will be treated as non-redistributable.
|
50
|
+
|
51
|
+
Specify `-E` or `--email` with the email address of the cookbook's maintainer. If this value is not specified, an all-caps string `YOUR_EMAIL` is used which can easily be changed with find/replace.
|
52
|
+
|
53
|
+
The cookbook copyright, license and email settings can be filled in the `knife.rb`, for example with default values:
|
54
|
+
|
55
|
+
cookbook_copyright "YOUR_COMPANY_NAME"
|
56
|
+
cookbook_license "none"
|
57
|
+
cookbook_email "YOUR_EMAIL"
|
58
|
+
|
59
|
+
__cookbook delete COOKBOOK [VERSION]__ _(options)_
|
60
|
+
|
61
|
+
* `-a`, `--all`:
|
62
|
+
Delete all versions
|
63
|
+
* `-p`, `--purge`:
|
64
|
+
Purge files from backing store. This will disable any cookbook that contains any of the same files as the cookbook being purged.
|
65
|
+
|
66
|
+
Delete the specified _VERSION_ of the named _COOKBOOK_. If no version is specified, and only one version exists on the server, that version will be deleted. If multiple versions are available on the server, you will be prompted for a version to delete.
|
67
|
+
|
68
|
+
__cookbook download COOKBOOK [VERSION]__ _(options)_
|
69
|
+
|
70
|
+
* `-d`, `--dir DOWNLOAD_DIRECTORY`:
|
71
|
+
The directory to download the cookbook into
|
72
|
+
* `-f`, `--force`:
|
73
|
+
Overwrite an existing directory with the download
|
74
|
+
* `-N`, `--latest`:
|
75
|
+
Download the latest version of the cookbook
|
76
|
+
|
77
|
+
Download a cookbook from the Chef Server. If no version is specified and only one version exists on the server, that version will be downloaded. If no version is specified and multiple versions are available on the server, you will be prompted for a version to download.
|
78
|
+
|
79
|
+
__cookbook list__ _(options)_
|
80
|
+
|
81
|
+
* `-w`, `--with-uri`:
|
82
|
+
Show corresponding URIs
|
83
|
+
|
84
|
+
List all the cookbooks.
|
85
|
+
|
86
|
+
__cookbook metadata COOKBOOK__ _(options)_
|
87
|
+
|
88
|
+
* `-a`, `--all`:
|
89
|
+
Generate metadata for all cookbooks, rather than just a single cookbook
|
90
|
+
* `-o`, `--cookbook-path PATH:PATH`:
|
91
|
+
A colon-separated path to look for cookbooks in
|
92
|
+
|
93
|
+
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.
|
94
|
+
|
95
|
+
__cookbook metadata from FILE__ _(options)_
|
96
|
+
|
97
|
+
Load the cookbook metadata from a specified file.
|
98
|
+
|
99
|
+
__cookbook show COOKBOOK [VERSION] [PART] [FILENAME]__ _(options)_
|
100
|
+
|
101
|
+
* `-f`, `--fqdn FQDN `:
|
102
|
+
The FQDN of the host to see the file for
|
103
|
+
* `-p`, `--platform PLATFORM `:
|
104
|
+
The platform to see the file for
|
105
|
+
* `-V`, `--platform-version VERSION`:
|
106
|
+
The platform version to see the file for
|
107
|
+
|
108
|
+
Show a particular part of a _COOKBOOK_ for the specified _VERSION_. _PART_ can be one of:
|
109
|
+
|
110
|
+
* _attributes_
|
111
|
+
* _definitions_
|
112
|
+
* _files_
|
113
|
+
* _libraries_
|
114
|
+
* _providers_
|
115
|
+
* _recipes_
|
116
|
+
* _resources_
|
117
|
+
* _templates_
|
118
|
+
|
119
|
+
__cookbook test [COOKBOOKS...]__ _(options)_
|
120
|
+
|
121
|
+
* `-a`, `--all`:
|
122
|
+
Test all cookbooks, rather than just a single cookbook
|
123
|
+
* `-o`, `--cookbook-path PATH:PATH`:
|
124
|
+
A colon-separated path to look for cookbooks in
|
125
|
+
|
126
|
+
Test the specified cookbooks for syntax errors. This uses the built-in Ruby syntax checking option for files in the cookbook ending in `.rb`, and the ERB syntax check for files ending in `.erb` (templates).
|
127
|
+
|
128
|
+
__cookbook upload [COOKBOOKS...]__ _(options)_
|
129
|
+
|
130
|
+
* `-a`, `--all`:
|
131
|
+
Upload all cookbooks, rather than just a single cookbook
|
132
|
+
* `-o`, `--cookbook-path PATH:PATH`:
|
133
|
+
A colon-separated path to look for cookbooks in
|
134
|
+
|
135
|
+
Uploads the specified cookbooks to the Chef Server. The actual upload executes a number of commands, most of which occur on the local machine. The cookbook is staged in a temporary location. Then the `cookbook_path` (or `-o PATH`) is processed to search for the named cookbook, and each occurance is copied in the order specified. A syntax check is performed a la `cookbook test`, above. The metadata is generated, a la `cookbook metadata`. A gzip(1)'ed, tar(1) file is created, and is uploaded to the server.
|
136
|
+
|
@@ -0,0 +1,117 @@
|
|
1
|
+
knife-data-bag(1) -- Store arbitrary data on a Chef Server
|
2
|
+
========================================
|
3
|
+
|
4
|
+
## SYNOPSIS
|
5
|
+
|
6
|
+
__knife__ __data bag__ _sub-command_ _(options)_
|
7
|
+
|
8
|
+
## DESCRIPTION
|
9
|
+
Data bags are stores of arbitrary JSON data. Each data bag is a
|
10
|
+
collection that may contain many items. Data Bag Items are indexed by
|
11
|
+
the Chef Server and can be searched via __knife-search__(1).
|
12
|
+
|
13
|
+
Data bags are available to all nodes configured by __chef-client__(8),
|
14
|
+
and are therefore a convenient mechanism to store global information,
|
15
|
+
such as lists of administrative accounts that should be configured on
|
16
|
+
all hosts.
|
17
|
+
|
18
|
+
## DATA BAG SUB-COMMANDS
|
19
|
+
|
20
|
+
## CREATE
|
21
|
+
__knife data bag create__ _bag name_ [item id] _(options)_
|
22
|
+
|
23
|
+
* `-s`, `--secret SECRET`:
|
24
|
+
A secret key used to encrypt the data bag item. See __encryption support__ below.
|
25
|
+
* `--secret-file SECRET_FILE`:
|
26
|
+
The path to a file containing the secret key to be used to encrypt
|
27
|
+
the data bag item.
|
28
|
+
|
29
|
+
If _item id_ is given, creates a new, empty data bag item and opens it for
|
30
|
+
editing in your editor. The data bag will be created if it does not
|
31
|
+
exist.
|
32
|
+
|
33
|
+
If _item id_ is not given, the data bag will be created.
|
34
|
+
|
35
|
+
## DELETE
|
36
|
+
__knife data bag delete__ _bag name_ [item id] _(options)_
|
37
|
+
|
38
|
+
Delete a data bag, or an item from a data bag.
|
39
|
+
|
40
|
+
## EDIT
|
41
|
+
__knife data bag edit__ _bag name_ _item id_ _(options)_
|
42
|
+
|
43
|
+
* `-s`, `--secret SECRET`:
|
44
|
+
A secret key used to encrypt the data bag item. See __encryption support__ below.
|
45
|
+
* `--secret-file SECRET_FILE`:
|
46
|
+
The path to a file containing the secret key to be used to encrypt
|
47
|
+
the data bag item.
|
48
|
+
|
49
|
+
Edit an item in a data bag.
|
50
|
+
|
51
|
+
## FROM FILE
|
52
|
+
__knife data bag from file__ _bag name_ _file_ _(options)_
|
53
|
+
|
54
|
+
* `-s`, `--secret SECRET`:
|
55
|
+
A secret key used to encrypt the data bag item. See __encryption support__ below.
|
56
|
+
* `--secret-file SECRET_FILE`:
|
57
|
+
The path to a file containing the secret key to be used to encrypt
|
58
|
+
the data bag item.
|
59
|
+
|
60
|
+
Load a data bag item from a JSON file. If _file_ is a relative or
|
61
|
+
absolute path to the file, that file will be used. Otherwise, the _file_
|
62
|
+
parameter is treated as the base name of a data bag file in a Chef
|
63
|
+
repository, and `knife` will search for the file in
|
64
|
+
`./data_bags/bag_name/file`. For example `knife data bag from file users
|
65
|
+
dan.json` would attempt to load the file `./data_bags/users/dan.json`.
|
66
|
+
|
67
|
+
## LIST
|
68
|
+
__knife data bag list__ _(options)_
|
69
|
+
|
70
|
+
* `-w`, `--with-uri`:
|
71
|
+
Show corresponding URIs
|
72
|
+
|
73
|
+
Lists the data bags that exist on the Chef Server.
|
74
|
+
|
75
|
+
## SHOW
|
76
|
+
__knife data bag show BAG [ITEM]__ _(options)_
|
77
|
+
|
78
|
+
* `-s`, `--secret SECRET`:
|
79
|
+
A secret key used to encrypt the data bag item. See __encryption support__ below.
|
80
|
+
* `--secret-file SECRET_FILE`:
|
81
|
+
The path to a file containing the secret key to be used to encrypt
|
82
|
+
the data bag item.
|
83
|
+
|
84
|
+
Show a specific data bag or an item in a data bag. The output will be
|
85
|
+
formatted according to the --format option.
|
86
|
+
|
87
|
+
## ENCRYPTION SUPPORT
|
88
|
+
Data Bag Items may be encrypted to keep their contents secret. This may
|
89
|
+
be desireable when storing sensitive information such as database
|
90
|
+
passwords, API keys, etc.
|
91
|
+
|
92
|
+
Data Bag Item encryption uses the AES-256 CBC symmetric key algorithm.
|
93
|
+
|
94
|
+
__CAVEATS:__ Keys are not encrypted; only values are encrypted. The "id"
|
95
|
+
of a Data Bag Item is not encrypted, since it is used by Chef Server to
|
96
|
+
store the item in its database. For example, given the following data bag item:
|
97
|
+
{"id": "important_passwords", "secret_password": "opensesame"}
|
98
|
+
The key "secret\_password" will be visible to an evesdropper, but the
|
99
|
+
value "opensesame" will be protected. Both the key "id" and its value
|
100
|
+
"important\_passwords" will be visible to an evesdropper.
|
101
|
+
|
102
|
+
Chef Server does not provide a secure mechanism for distributing
|
103
|
+
encryption keys.
|
104
|
+
|
105
|
+
## SEE ALSO
|
106
|
+
__knife-search__(1)
|
107
|
+
|
108
|
+
## AUTHOR
|
109
|
+
Chef was written by Adam Jacob <adam@opscode.com> with many contributions from the community.
|
110
|
+
|
111
|
+
## DOCUMENTATION
|
112
|
+
This manual page was written by Joshua Timberman <joshua@opscode.com>.
|
113
|
+
Permission is granted to copy, distribute and / or modify this document under the terms of the Apache 2.0 License.
|
114
|
+
|
115
|
+
## CHEF
|
116
|
+
Knife is distributed with Chef. http://wiki.opscode.com/display/chef/Home
|
117
|
+
|