chef-server-populate
devoptimist/chef-server-populate/linux
Overview This module will connect to a server via ssh and run commands against a chef server. It expects that chef tools such as chef-workstation or chefdk are already installed. (you could use this module in conjuction with https://registry.terraform.io/modules/devoptimist/workshop-server/aws/0.0.2). Depending on the options passed to the module it will attempt to create roles, environments and upload cookbooks. Cookbook uploading handled via the creation of Berksfiles or Policyfiles. If specified policygroups are also created . Supported platform families: Debian RHEL * SUSE Usage ``hcl module "populate_chef_server" { source = "devoptimist/chef-server-populate/linux" version = "0.0.1" ips = "172.16.0.23" ssh_user_name = "ec2-user" ssh_user_private_key = "~/.ssh/id_rsa" } `` Inputs | Name
| Name | Type | Description | Default |
|---|---|---|---|
| ip | string | An ip addresses where we will stage pushes to the chef server (pushes include ro | required |
| user_name | string | The ssh user name used to access the ip addresses provided | required |
| windows_populate_script_name | string | The name to give the chef server populate script | "chef_server_populate.ps1" |
| windows_chef_repo_path | string | The path to the chef repo, this path is created and populated with berksfiles / | "C:\\chef_workstation\\chef-repo" |
| roles | string | A list of Maps used to populate each environments | "[]" |
| windows_tmp_path | string | The location of a temp directory to store install scripts on | "C:\\chef_workstation" |
| working_directory | string | The path to use for the working directory | "chef_server_populate" |
| workstation_user_pem | string | The content of the chef users client.pem (created at the same time as the user), | "" |
| workstation_org_pem | string | The content of the chef orgs client.pem (created at the same time as the org), c | "" |
| chef_server_ssl_verify_mode | string | The ssl verify mode to use, if using self signed certs use :verify_none | ":verify_none" |
| jq_linux_url | string | A url to a jq binary to download, used in the install process | "https://github.com/stedolan/jq/releases |
| linux_tmp_path | string | The location of a temp directory to store install scripts on | "/var/tmp" |
| linux_populate_script_name | string | The name to give the chef server populate script | "chef_server_populate.sh" |
| linux_chef_repo_path | string | The path to the chef repo, this path is created and populated with berksfiles / | "/var/tmp/chef_workstation/chef-repo" |
| workstation_org_url | string | The url to the chef users chef organisation on the chef server e.g. https://demo | "" |
| policyfiles | string | A list of Maps used to populate each policyfile | "[]" |
| populate | bool | Set to false if you only want to create the chef-repo directory (with knife.rb a | true |
| system_type | string | The system type linux or windows | "linux" |
| environments | string | A list of Maps used to populate each environments | "[]" |
| module_input | string | A string input to the module, used to enforce module ordering. make this input t | "no_dependency" |
| jq_windows_url | string | A url to a jq binary to download, used in the install process | "https://github.com/stedolan/jq/releases |
| workstation_user_name | string | The name of a chef user, used for workstation -> chef server interactions, can b | "" |
workstation_user_nameworkstation_user_pemworkstation_org_pemworkstation_org_urlworkstation_org_name