Skip to content

Commit eccae42

Browse files
authored
Merge pull request #16 from andy-dufour/ad/add_readme
Add readme
2 parents f994506 + 805e883 commit eccae42

File tree

1 file changed

+138
-1
lines changed

1 file changed

+138
-1
lines changed

README.md

+138-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,140 @@
11
# chef_stack
22

3-
TODO: Enter the cookbook description here.
3+
Chef stack is a library cookbook that provides custom resources to build and manage your Chef infrastructure.
4+
5+
An accompanying project, [Chef-Services](https//github.com/stephenlauck/chef-services) exists as an example implementation of Chef Stack.
6+
7+
## Custom Resources
8+
9+
Below are the custom resources provided by this cookbook.
10+
11+
### General Properties
12+
13+
These properties exist for all resources
14+
15+
| Name | Type | Default Value | Description |
16+
|---|---|---|---|---|
17+
| name | String | N/A | A name for the resource |
18+
| channel | Symbol | stable | The channel from our package repository to install. Most of the time you want stable. |
19+
| version | [String, Symbol] | latest | The version of Automate you want to install |
20+
| config | String | N/A | The configuration that will be written to the appropriate configuration file for the product. |
21+
| accept_license | [TrueClass, FalseClass] | false | Do you accept Chef's license agreements. |
22+
| platform | String | Auto-detected | Use only if you need to over-ride the default platform. |
23+
| platform_version | String | Auto-detected | Use only if you need to over-ride the default platform. |
24+
25+
26+
### chef_automate
27+
28+
Installs Chef Automate.
29+
30+
#### Properties
31+
| Name | Type | Default Value | Description |
32+
|---|---|---|---|---|
33+
| enterprise | [String, Array] | chef | The Enterprise to create in Automate|
34+
| license | String | N/A | Your license file | we recommend using the chef_file resource |
35+
| chef_user | String | workflow | The user you will connect to the Chef server as |
36+
| chef_user_pem | String | N/A | The private key of the above Chef user |
37+
| validation_pem | String | N/A | The validator key of the Chef org we're connecting to |
38+
| builder_pem | String | N/A | The private key of the build nodes |
39+
40+
### chef_backend
41+
42+
#### Properties
43+
44+
| Name | Type | Default Value | Description |
45+
|---|---|---|---|---|
46+
| bootstrap_node | String | N/A | The node we'll bootstrap secrets with. |
47+
| publish_address | String | node['ipaddress'] | The address you want Chef-Backend to listen on. |
48+
| chef_backend_secrets | String | nil | A location where your secrets are | we recommend using the chef_file resource. |
49+
50+
### chef_org
51+
52+
#### Properties
53+
54+
55+
| Name | Type | Default Value | Description |
56+
|---|---|---|---|---|
57+
| org | String | N/A | The short name of the org. |
58+
| org_full_name | String | node['ipaddress'] | The full name of the org you want to create. |
59+
| admins | Array | N/A | An array of admins for the org. |
60+
| users | Array | [] | An array of users for the org. |
61+
| remove_users | Array | [] | An array of users to remove from the org. |
62+
| key_path | String | N/A | Where to store the validator key that is created with the org. |
63+
64+
### chef_user
65+
66+
| Name | Type | Default Value | Description |
67+
|---|---|---|---|
68+
| username | String | N/A | The username of the user. |
69+
| first_name | String | N/A | The first name of the user. |
70+
| last_name | Array | N/A | The last name of the user. |
71+
| email | Array | [] | N/A | The users e-mail. |
72+
| password | Array | [] | The users password. |
73+
| key_path | String | N/A | Where to store the users private key that is created with the user. |
74+
| serveradmin | [TrueClass, FalseClass] | F | Is the user a serveradmin? |
75+
76+
### chef_client
77+
| Name | Type | Default Value | Description |
78+
|---|---|---|---|
79+
| node_name | String | true | The name of the node. |
80+
| version | [String, Symbol] | latest | The version of chef-client to install. |
81+
| chefdk | [TrueClass, FalseClass] | false | Do you want to install chefdk? |
82+
| chef_server_url | [String, Symbol] | local | What is hte Chef server URL to connect to. |
83+
| ssl_verify | [TrueClass, FalseClass] | true | Validate ssl certificates? |
84+
| log_location | String | 'STDOUT' | Where to log. |
85+
| log_level | Symbol | auto | Log level. |
86+
| config | String | | Any configuration for client.rb. |
87+
| run_list | Array | | The clients runlist. |
88+
| environment | String | | Which Chef Environment the client belongs to. |
89+
| validation_pem | String | | The validation pem to validate with. |
90+
| validation_client_name | String | | The validation client name. |
91+
| tags | [String, Array] | '' | Any tags for the node. |
92+
| interval | Integer | 1800 | The interval to run chef-client on. |
93+
| splay | Integer | 1800 | The randomization to add to the interval. |
94+
| data_collector_token | String | '93a49a4f2482c64126f7b6015e6b0f30284287ee4054ff8807fb63d9cbd1c506' | The data collector token to talk to Visibility. |
95+
| data_collector_url | String | | The Visibility URL to send data. |
96+
97+
### chef_file
98+
99+
100+
| Name | Type | Default Value | Description |
101+
|---|---|---|---|
102+
| filename | String | | The name of the resource. |
103+
| source | String | | The source of the file. |
104+
| user | String | default 'root' | The owner of the file. |
105+
| group | String | default 'root' | The group owner of the file. |
106+
| mode | String | default '0600' | The mode for the file. |
107+
108+
### chef_server
109+
110+
| Name | Type | Default Value | Description |
111+
|---|---|---|---|
112+
| addons | Hash | | A set of addons to install with the Chef Server. |
113+
| data_collector_token | String | default '93a49a4f2482c64126f7b6015e6b0f30284287ee4054ff8807fb63d9cbd1c506' | The data collector token to authenticate with Chef Visiblity. |
114+
| data_collector_url | String | | The URL to connect to Visibility. |
115+
116+
### chef_supermarket
117+
118+
| Name | Type | Default Value | Description |
119+
|---|---|---|---|
120+
| chef_server_url | String | Chef::Config['chef_server_url'] | The Chef server's URL. |
121+
| chef_oauth2_app_id | String | | The oauth2 app id from the Chef server. |
122+
| chef_oauth2_secret | String | | The oauth2 secret from the Chef server. |
123+
| chef_oauth2_verify_ssl | [TrueClass, FalseClass] | true | Whether to validate SSL certificates. |
124+
125+
### workflow_builder
126+
127+
| Name | Type | Default Value | Description |
128+
|---|---|---|---|
129+
| pj_version | [String, Symbol] | :latest | The version of Push-Jobs to install. |
130+
| chef_user | String | 'workflow' | The Chef user to authenticate with the Chef Server. |
131+
| chef_user_pem | String | | The private key of the Chef user to authenticate with the Chef Server. |
132+
| builder_pem | String | | The builder users private key to communicate with Chef Automate. |
133+
| chef_fqdn | String | URI.parse(Chef::Config['chef_server_url']).host | The FQDN of the Chef server. |
134+
| automate_fqdn | String | | | The FQDN of the automate server. |
135+
| supermarket_fqdn | String | | The FQDN of the Supermarket server. |
136+
| job_dispatch_version | String | 'v2' | Which job dispatch version to use. V1 is push-jobs, V2 is SSH runners. |
137+
| automate_user | String | 'admin' | What is the Automate user we're connecting to Automate as. |
138+
| automate_password | String | | The password for the user above. |
139+
| automate_enterprise | String | 'chef' | The Enterprise to connect to. |
140+
| chef_config_path | String | '/etc/chef/client.rb' | The config path for chef-client. |

0 commit comments

Comments
 (0)