github.com/minamijoyo/terraform@v0.7.8-0.20161029001309-18b3736ba44b/website/source/docs/providers/chef/index.html.markdown (about) 1 --- 2 layout: "chef" 3 page_title: "Provider: Chef" 4 sidebar_current: "docs-chef-index" 5 description: |- 6 Chef is a systems and cloud infrastructure automation framework. 7 --- 8 9 # Chef Provider 10 11 [Chef](https://www.chef.io/) is a systems and cloud infrastructure automation 12 framework. The Chef provider allows Terraform to manage various resources 13 that exist within [Chef Server](http://docs.chef.io/chef_server.html). 14 15 Use the navigation to the left to read about the available resources. 16 17 ## Example Usage 18 19 ``` 20 # Configure the Chef provider 21 provider "chef" { 22 server_url = "https://api.chef.io/organizations/example/" 23 24 // You can set up a "Client" within the Chef Server management console. 25 client_name = "terraform" 26 private_key_pem = "${file(\"chef-terraform.pem\")}" 27 } 28 29 # Create a Chef Environment 30 resource "chef_environment" "production" { 31 name = "production" 32 } 33 34 # Create a Chef Role 35 resource "chef_role" "app_server" { 36 name = "app_server" 37 run_list = [ 38 "recipe[terraform]" 39 ] 40 } 41 ``` 42 43 ## Argument Reference 44 45 The following arguments are supported: 46 47 * `server_url` - (Required) The HTTP(S) API URL of the Chef server to use. If 48 the target Chef server supports organizations, use the full URL of the 49 organization you wish to configure. May be provided instead via the 50 ``CHEF_SERVER_URL`` environment variable. 51 * `client_name` - (Required) The name of the client account to use when making 52 requests. This must have been already configured on the Chef server. 53 May be provided instead via the ``CHEF_CLIENT_NAME`` environment variable. 54 * `private_key_pem` - (Required) The PEM-formatted private key belonging to 55 the configured client. This is issued by the server when a new client object 56 is created. May be provided instead in a file whose path is in the 57 ``CHEF_PRIVATE_KEY_FILE`` environment variable. 58 * `allow_unverified_ssl` - (Optional) Boolean indicating whether to make 59 requests to a Chef server whose SSL certicate cannot be verified. Defaults 60 to ``false``.