github.com/erriapo/terraform@v0.6.12-0.20160203182612-0340ea72354f/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.opscode.com/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``.