github.com/nathanielks/terraform@v0.6.1-0.20170509030759-13e1a62319dc/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  ```hcl
    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    key_material = "${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  
    38    run_list = [
    39      "recipe[terraform]",
    40    ]
    41  }
    42  ```
    43  
    44  ## Argument Reference
    45  
    46  The following arguments are supported:
    47  
    48  * `server_url` - (Required) The HTTP(S) API URL of the Chef server to use. If
    49    the target Chef server supports organizations, use the full URL of the
    50    organization you wish to configure. May be provided instead via the
    51    ``CHEF_SERVER_URL`` environment variable.
    52  * `client_name` - (Required) The name of the client account to use when making
    53    requests. This must have been already configured on the Chef server.
    54    May be provided instead via the ``CHEF_CLIENT_NAME`` environment variable.
    55  * `key_material` - (Required) The PEM-formatted private key contents belonging to
    56    the configured client. This is issued by the server when a new client object
    57    is created. May be provided via the
    58    ``CHEF_PRIVATE_KEY_FILE`` environment variable.
    59  * `allow_unverified_ssl` - (Optional) Boolean indicating whether to make
    60    requests to a Chef server whose SSL certicate cannot be verified. Defaults
    61    to ``false``.