wombat-cli 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/DESIGN.md +2 -1
  4. data/README.md +10 -32
  5. data/Rakefile +1 -52
  6. data/cookbooks/automate/.kitchen.ec2.yml +8 -1
  7. data/cookbooks/automate/.kitchen.yml +0 -1
  8. data/cookbooks/automate/metadata.rb +0 -2
  9. data/cookbooks/automate/recipes/default.rb +4 -3
  10. data/cookbooks/automate/test/integration/default/automate_spec.rb +3 -2
  11. data/cookbooks/build_node/.kitchen.ec2.yml +8 -1
  12. data/cookbooks/build_node/metadata.rb +0 -3
  13. data/cookbooks/build_node/recipes/default.rb +5 -2
  14. data/cookbooks/build_node/test/integration/default/build-node_spec.rb +3 -2
  15. data/cookbooks/chef_server/.kitchen.ec2.yml +8 -0
  16. data/cookbooks/chef_server/.kitchen.yml +0 -1
  17. data/cookbooks/chef_server/metadata.rb +0 -2
  18. data/cookbooks/chef_server/recipes/{cheffish.rb → bootstrap_users.rb} +1 -1
  19. data/cookbooks/chef_server/recipes/default.rb +30 -14
  20. data/cookbooks/chef_server/test/integration/default/chef_server_spec.rb +7 -4
  21. data/cookbooks/compliance/.kitchen.ec2.yml +8 -0
  22. data/cookbooks/compliance/metadata.rb +0 -1
  23. data/cookbooks/compliance/recipes/default.rb +5 -7
  24. data/cookbooks/compliance/test/integration/default/compliance.rb +3 -2
  25. data/cookbooks/infranodes/.kitchen.ec2.yml +23 -2
  26. data/cookbooks/infranodes/recipes/default.rb +25 -9
  27. data/cookbooks/infranodes/test/fixtures/cookbooks/mock_data/recipes/default.rb +9 -3
  28. data/cookbooks/infranodes/test/integration/default/infranodes_spec.rb +11 -9
  29. data/cookbooks/wombat/attributes/default.rb +2 -0
  30. data/cookbooks/wombat/metadata.rb +2 -0
  31. data/cookbooks/wombat/recipes/authorized-keys.rb +10 -0
  32. data/cookbooks/workstation/recipes/certs-keys.rb +2 -1
  33. data/cookbooks/workstation/templates/default/ssh_config.erb +2 -2
  34. data/lib/wombat/build.rb +138 -120
  35. data/lib/wombat/cli.rb +8 -0
  36. data/lib/wombat/common.rb +27 -12
  37. data/lib/wombat/deploy.rb +33 -26
  38. data/lib/wombat/version.rb +1 -1
  39. data/packer/automate.json +7 -5
  40. data/packer/build-node.json +6 -4
  41. data/packer/chef-server.json +11 -6
  42. data/packer/compliance.json +6 -5
  43. data/packer/infranodes-windows.json +100 -0
  44. data/packer/infranodes.json +6 -5
  45. data/packer/workstation.json +5 -4
  46. data/stacks/.gitkeep +0 -0
  47. data/templates/bootstrap-aws.erb +2 -2
  48. data/templates/cfn.json.erb +16 -15
  49. data/wombat.example.yml +45 -35
  50. metadata +5 -15
  51. data/packer/mock-data/.gitignore +0 -16
  52. data/packer/mock-data/.kitchen.yml +0 -21
  53. data/packer/mock-data/Berksfile +0 -3
  54. data/packer/mock-data/README.md +0 -4
  55. data/packer/mock-data/chefignore +0 -102
  56. data/packer/mock-data/metadata.rb +0 -7
  57. data/packer/mock-data/recipes/default.rb +0 -69
  58. data/packer/mock-data/spec/spec_helper.rb +0 -2
  59. data/packer/mock-data/spec/unit/recipes/default_spec.rb +0 -20
  60. data/packer/mock-data/test/integration/default/serverspec/default_spec.rb +0 -9
  61. data/packer/mock-data/test/integration/helpers/serverspec/spec_helper.rb +0 -8
@@ -24,6 +24,7 @@
24
24
  "enterprise": "mammals",
25
25
  "node-number": "1",
26
26
  "org": "marsupials",
27
+ "ssh_username": "ubuntu",
27
28
  "workstations": "1"
28
29
  },
29
30
 
@@ -33,11 +34,11 @@
33
34
  "secret_key": "{{user `aws_secret_key`}}",
34
35
  "region": "{{user `aws_region`}}",
35
36
  "source_ami": "{{user `aws_source_ami`}}",
36
- "instance_type": "c3.xlarge",
37
+ "instance_type": "t2.micro",
37
38
  "communicator": "ssh",
38
39
  "associate_public_ip_address": true,
39
40
  "ssh_private_ip": false,
40
- "ssh_username": "ubuntu",
41
+ "ssh_username": "{{user `ssh_username`}}",
41
42
  "ssh_pty" : true,
42
43
  "ami_name": "build-node-{{user `node-number`}}-{{timestamp}}"
43
44
  },
@@ -68,7 +69,7 @@
68
69
  "disk_size": "80",
69
70
  "image_name": "build-node-{{user `node-number`}}-{{timestamp}}",
70
71
  "machine_type": "n1-standard-2",
71
- "ssh_username": "ubuntu",
72
+ "ssh_username": "{{user `ssh_username`}}",
72
73
  "ssh_pty" : true
73
74
  }
74
75
  ],
@@ -88,9 +89,10 @@
88
89
  "type": "chef-solo",
89
90
  "install_command": "{{user `chef_install_url`}} | sudo bash -s -- -c {{user `chef_channel`}} -v {{user `chef_ver`}}",
90
91
  "cookbook_paths": [ "{{pwd}}/vendored-cookbooks/build_node" ],
91
- "run_list": [ "apt", "build_node" ],
92
+ "run_list": [ "build_node", "wombat::authorized-keys", "wombat::etc-hosts" ],
92
93
  "json": {
93
94
  "demo": {
95
+ "admin-user": "{{user `ssh_username`}}",
94
96
  "domain_prefix": "{{user `domain_prefix`}}",
95
97
  "domain": "{{user `domain`}}",
96
98
  "enterprise": "{{user `enterprise`}}",
@@ -22,7 +22,10 @@
22
22
  "domain": "animals.biz",
23
23
  "domain_prefix": "",
24
24
  "enterprise": "mammals",
25
+ "manage": "stable-latest",
25
26
  "org": "marsupials",
27
+ "push-jobs-server": "stable-latest",
28
+ "ssh_username": "ubuntu",
26
29
  "workstations": "1"
27
30
  },
28
31
 
@@ -32,11 +35,10 @@
32
35
  "secret_key": "{{user `aws_secret_key`}}",
33
36
  "region": "{{user `aws_region`}}",
34
37
  "source_ami": "{{user `aws_source_ami`}}",
35
- "instance_type": "c3.xlarge",
38
+ "instance_type": "m4.large",
36
39
  "communicator": "ssh",
37
40
  "associate_public_ip_address": true,
38
- "ssh_private_ip": false,
39
- "ssh_username": "ubuntu",
41
+ "ssh_username": "{{user `ssh_username`}}",
40
42
  "ssh_pty" : true,
41
43
  "ami_name": "chef-{{timestamp}}"
42
44
  },
@@ -67,7 +69,7 @@
67
69
  "disk_size": "80",
68
70
  "image_name": "chef-{{timestamp}}",
69
71
  "machine_type": "n1-standard-2",
70
- "ssh_username": "ubuntu",
72
+ "ssh_username": "{{user `ssh_username`}}",
71
73
  "ssh_pty" : true
72
74
  }
73
75
  ],
@@ -87,9 +89,10 @@
87
89
  "type": "chef-solo",
88
90
  "install_command": "{{user `chef_install_url`}} | sudo bash -s -- -c {{user `chef_channel`}} -v {{user `chef_ver`}}",
89
91
  "cookbook_paths": [ "{{pwd}}/vendored-cookbooks/chef_server" ],
90
- "run_list": [ "apt", "chef_server" ],
92
+ "run_list": [ "chef_server", "wombat::authorized-keys", "wombat::etc-hosts" ],
91
93
  "json": {
92
94
  "demo": {
95
+ "admin-user": "{{user `ssh_username`}}",
93
96
  "domain_prefix": "{{user `domain_prefix`}}",
94
97
  "domain": "{{user `domain`}}",
95
98
  "enterprise": "{{user `enterprise`}}",
@@ -97,7 +100,9 @@
97
100
  "build-nodes": "{{user `build-nodes`}}",
98
101
  "workstations": "{{user `workstations`}}",
99
102
  "versions": {
100
- "chef-server": "{{user `chef-server`}}"
103
+ "chef-server": "{{user `chef-server`}}",
104
+ "push-jobs-server": "{{user `push-jobs-server`}}",
105
+ "manage": "{{user `manage`}}"
101
106
  }
102
107
  }
103
108
  }
@@ -23,6 +23,7 @@
23
23
  "domain_prefix": "",
24
24
  "enterprise": "mammals",
25
25
  "org": "marsupials",
26
+ "ssh_username": "ubuntu",
26
27
  "workstations": "1"
27
28
  },
28
29
 
@@ -32,11 +33,10 @@
32
33
  "secret_key": "{{user `aws_secret_key`}}",
33
34
  "region": "{{user `aws_region`}}",
34
35
  "source_ami": "{{user `aws_source_ami`}}",
35
- "instance_type": "c3.xlarge",
36
+ "instance_type": "t2.medium",
36
37
  "communicator": "ssh",
37
38
  "associate_public_ip_address": true,
38
- "ssh_private_ip": false,
39
- "ssh_username": "ubuntu",
39
+ "ssh_username": "{{user `ssh_username`}}",
40
40
  "ssh_pty" : true,
41
41
  "ami_name": "compliance-{{timestamp}}"
42
42
  },
@@ -67,7 +67,7 @@
67
67
  "disk_size": "80",
68
68
  "image_name": "compliance-{{timestamp}}",
69
69
  "machine_type": "n1-standard-2",
70
- "ssh_username": "ubuntu",
70
+ "ssh_username": "{{user `ssh_username`}}",
71
71
  "ssh_pty" : true
72
72
  }
73
73
  ],
@@ -87,9 +87,10 @@
87
87
  "type": "chef-solo",
88
88
  "install_command": "{{user `chef_install_url`}} | sudo bash -s -- -c {{user `chef_channel`}} -v {{user `chef_ver`}}",
89
89
  "cookbook_paths": [ "{{pwd}}/vendored-cookbooks/compliance" ],
90
- "run_list": [ "apt", "compliance" ],
90
+ "run_list": [ "compliance", "wombat::authorized-keys", "wombat::etc-hosts" ],
91
91
  "json": {
92
92
  "demo": {
93
+ "admin-user": "{{user `ssh_username`}}",
93
94
  "domain_prefix": "{{user `domain_prefix`}}",
94
95
  "domain": "{{user `domain`}}",
95
96
  "enterprise": "{{user `enterprise`}}",
@@ -0,0 +1,100 @@
1
+ {
2
+ "variables": {
3
+ "aws_access_key": "{{env `AWS_ACCESS_KEY_ID`}}",
4
+ "aws_secret_key": "{{env `AWS_SECRET_ACCESS_KEY`}}",
5
+ "aws_region": "{{env `AWS_REGION`}}",
6
+ "aws_source_ami": "ami-87c037e7",
7
+ "azure_client_id": "{{env `AZURE_CLIENT_ID`}}",
8
+ "azure_tenant_id": "{{env `AZURE_TENANT_ID`}}",
9
+ "azure_client_secret": "{{env `AZURE_CLIENT_SECRET`}}",
10
+ "azure_subscription_id": "{{env `AZURE_SUBSCRIPTION_ID`}}",
11
+ "azure_storage_account": "{{env `AZURE_STORAGE_ACCOUNT`}}",
12
+ "azure_resource_group": "{{env `AZURE_RESOURCE_GROUP`}}",
13
+ "gce_account_file": "{{env `GCE_ACCOUNT_FILE`}}",
14
+ "gce_project_id": "{{env `GCE_PROJECT_ID`}}",
15
+ "gce_zone": "{{env `GCE_ZONE`}}",
16
+ "gce_source_image": "windows-server-2012-r2-dc-v20160809",
17
+ "build-nodes": "1",
18
+ "chef_channel": "stable",
19
+ "chef_install_url": "curl -L https://omnitruck.chef.io/install.sh",
20
+ "chef_ver": "latest",
21
+ "domain": "animals.biz",
22
+ "domain_prefix": "",
23
+ "enterprise": "mammals",
24
+ "node-name": "acceptance",
25
+ "org": "marsupials",
26
+ "ssh_username": "ubuntu",
27
+ "winrm_password": "RL9@T40BTmXh",
28
+ "winrm_username": "Administrator",
29
+ "workstations": "1"
30
+ },
31
+
32
+ "builders": [
33
+ { "type": "amazon-ebs",
34
+ "access_key": "{{user `aws_access_key`}}",
35
+ "secret_key": "{{user `aws_secret_key`}}",
36
+ "region": "{{user `aws_region`}}",
37
+ "source_ami": "{{user `aws_source_ami`}}",
38
+ "instance_type": "m4.large",
39
+ "communicator": "winrm",
40
+ "associate_public_ip_address": true,
41
+ "winrm_port": 5985,
42
+ "winrm_username": "{{user `winrm_username`}}",
43
+ "winrm_password": "{{user `winrm_password`}}",
44
+ "user_data_file": "{{template_dir}}/scripts/bootstrap-aws.txt",
45
+ "ami_name": "automate-infranode-{{user `node-name`}}-{{timestamp}}"
46
+ },
47
+ {
48
+ "type": "googlecompute",
49
+ "account_file": "{{user `gce_account_file`}}",
50
+ "project_id": "{{user `gce_project_id`}}",
51
+ "source_image": "{{user `gce_source_image`}}",
52
+ "zone": "{{user `gce_zone`}}",
53
+ "disk_type": "pd-ssd",
54
+ "disk_size": "80",
55
+ "machine_type": "n1-highcpu-8",
56
+ "image_name": "automate-infranode-{{user `node-name`}}-{{timestamp}}",
57
+ "communicator": "winrm",
58
+ "winrm_port": 5985,
59
+ "winrm_username": "{{user `winrm_username`}}",
60
+ "winrm_password": "{{user `winrm_password`}}",
61
+ "metadata": {
62
+ "windows-startup-script-url": "gs://wombat-bootstrap/win-bootstrap.ps1"
63
+ }
64
+ }
65
+ ],
66
+
67
+ "provisioners" : [
68
+ {
69
+ "type": "file",
70
+ "source": "{{pwd}}/keys/",
71
+ "destination": "C:\\Windows\\Temp"
72
+ },
73
+ {
74
+ "type": "file",
75
+ "source": "{{template_dir}}/files/",
76
+ "destination": "C:\\Windows\\Temp"
77
+ },
78
+ {
79
+ "type": "chef-solo",
80
+ "install_command": "powershell.exe -Command \". { iwr -useb https://omnitruck.chef.io/install.ps1 } | iex; install -channel {{user `chef_channel`}} -version {{user `chef_ver`}}\"",
81
+ "guest_os_type": "windows",
82
+ "cookbook_paths": [ "{{pwd}}/vendored-cookbooks/infranodes" ],
83
+ "run_list": [ "infranodes", "wombat::etc-hosts" ],
84
+ "json": {
85
+ "demo": {
86
+ "admin-user": "{{user `ssh_username`}}",
87
+ "build-nodes": "{{user `build-nodes`}}",
88
+ "domain_prefix": "{{user `domain_prefix`}}",
89
+ "domain": "{{user `domain`}}",
90
+ "enterprise": "{{user `enterprise`}}",
91
+ "node-name": "{{user `node-name`}}",
92
+ "org": "{{user `org`}}",
93
+ "versions": {
94
+ "chef": "{{user `chef_channel`}}-{{user `chef_ver`}}"
95
+ }
96
+ }
97
+ }
98
+ }
99
+ ]
100
+ }
@@ -23,6 +23,7 @@
23
23
  "enterprise": "mammals",
24
24
  "node-name": "acceptance",
25
25
  "org": "marsupials",
26
+ "ssh_username": "ubuntu",
26
27
  "workstations": "1"
27
28
  },
28
29
 
@@ -32,11 +33,10 @@
32
33
  "secret_key": "{{user `aws_secret_key`}}",
33
34
  "region": "{{user `aws_region`}}",
34
35
  "source_ami": "{{user `aws_source_ami`}}",
35
- "instance_type": "c3.xlarge",
36
+ "instance_type": "t2.medium",
36
37
  "communicator": "ssh",
37
38
  "associate_public_ip_address": true,
38
- "ssh_private_ip": false,
39
- "ssh_username": "ubuntu",
39
+ "ssh_username": "{{user `ssh_username`}}",
40
40
  "ssh_pty" : true,
41
41
  "ami_name": "automate-infranode-{{user `node-name`}}-{{timestamp}}"
42
42
  },
@@ -68,7 +68,7 @@
68
68
  "image_name": "automate-infranode-{{user `node-name`}}-{{timestamp}}",
69
69
  "machine_type": "n1-standard-2",
70
70
  "image_name": "chef-{{timestamp}}",
71
- "ssh_username": "ubuntu",
71
+ "ssh_username": "{{user `ssh_username`}}",
72
72
  "ssh_pty" : true
73
73
  }
74
74
  ],
@@ -88,9 +88,10 @@
88
88
  "type": "chef-solo",
89
89
  "install_command": "{{user `chef_install_url`}} | sudo bash -s -- -c {{user `chef_channel`}} -v {{user `chef_ver`}}",
90
90
  "cookbook_paths": [ "{{pwd}}/vendored-cookbooks/infranodes" ],
91
- "run_list": [ "infranodes" ],
91
+ "run_list": [ "infranodes", "wombat::authorized-keys", "wombat::etc-hosts" ],
92
92
  "json": {
93
93
  "demo": {
94
+ "admin-user": "{{user `ssh_username`}}",
94
95
  "domain_prefix": "{{user `domain_prefix`}}",
95
96
  "domain": "{{user `domain`}}",
96
97
  "enterprise": "{{user `enterprise`}}",
@@ -20,6 +20,7 @@
20
20
  "domain": "animals.biz",
21
21
  "enterprise": "mammals",
22
22
  "org": "marsupials",
23
+ "ssh_username": "ubuntu",
23
24
  "winrm_password": "RL9@T40BTmXh",
24
25
  "winrm_username": "Administrator",
25
26
  "workstation-number": "1",
@@ -32,10 +33,9 @@
32
33
  "secret_key": "{{user `aws_secret_key`}}",
33
34
  "region": "{{user `aws_region`}}",
34
35
  "source_ami": "{{user `aws_source_ami`}}",
35
- "instance_type": "m3.large",
36
+ "instance_type": "m4.large",
36
37
  "communicator": "winrm",
37
38
  "associate_public_ip_address": true,
38
- "ssh_private_ip": false,
39
39
  "winrm_port": 5985,
40
40
  "winrm_username": "{{user `winrm_username`}}",
41
41
  "winrm_password": "{{user `winrm_password`}}",
@@ -57,7 +57,7 @@
57
57
  "winrm_username": "{{user `winrm_username`}}",
58
58
  "winrm_password": "{{user `winrm_password`}}",
59
59
  "metadata": {
60
- "windows-startup-script-ps1": "gs://wombat-bootstrap/win-bootstrap.ps1"
60
+ "windows-startup-script-url": "gs://wombat-bootstrap/win-bootstrap.ps1"
61
61
  }
62
62
  }
63
63
  ],
@@ -78,9 +78,10 @@
78
78
  "install_command": "powershell.exe -Command \". { iwr -useb https://omnitruck.chef.io/install.ps1 } | iex; install -channel {{user `chef_channel`}} -version {{user `chef_ver`}}\"",
79
79
  "guest_os_type": "windows",
80
80
  "cookbook_paths": [ "{{pwd}}/vendored-cookbooks/workstation" ],
81
- "run_list": [ "workstation" ],
81
+ "run_list": [ "workstation", "wombat::etc-hosts" ],
82
82
  "json": {
83
83
  "demo": {
84
+ "admin-user": "{{user `ssh_username`}}",
84
85
  "domain_prefix": "{{user `domain_prefix`}}",
85
86
  "domain": "{{user `domain`}}",
86
87
  "enterprise": "{{user `enterprise`}}",
data/stacks/.gitkeep ADDED
File without changes
@@ -17,7 +17,7 @@ write-host "(host) setting up WinRM"
17
17
  cmd.exe /c winrm quickconfig -q
18
18
  cmd.exe /c winrm quickconfig '-transport:http'
19
19
  cmd.exe /c winrm set "winrm/config" '@{MaxTimeoutms="1800000"}'
20
- cmd.exe /c winrm set "winrm/config/winrs" '@{MaxMemoryPerShellMB="512"}'
20
+ cmd.exe /c winrm set "winrm/config/winrs" '@{MaxMemoryPerShellMB="3072"}'
21
21
  cmd.exe /c winrm set "winrm/config/service" '@{AllowUnencrypted="true"}'
22
22
  cmd.exe /c winrm set "winrm/config/client" '@{AllowUnencrypted="true"}'
23
23
  cmd.exe /c winrm set "winrm/config/service/auth" '@{Basic="true"}'
@@ -31,6 +31,6 @@ cmd.exe /c sc config winrm start= auto
31
31
  cmd.exe /c net start winrm
32
32
  cmd.exe /c wmic useraccount where "name='Administrator'" set PasswordExpires=FALSE
33
33
 
34
- Set-ExecutionPolicy Unrestricted
34
+ set-executionpolicy -executionpolicy bypass -force
35
35
 
36
36
  </powershell>
@@ -44,11 +44,6 @@
44
44
  "Default": "<%= @chef_server_ami %>",
45
45
  "Description": "AMI ID for the Chef Server"
46
46
  },
47
- "AutomateAMI": {
48
- "Type": "String",
49
- "Default": "<%= @automate_ami %>",
50
- "Description": "AMI ID for the Automate Server"
51
- },
52
47
  "ComplianceAMI": {
53
48
  "Type": "String",
54
49
  "Default": "<%= @compliance_ami %>",
@@ -73,8 +68,13 @@
73
68
  "Type": "String",
74
69
  "Default": "<%= @workstation_ami[i] %>",
75
70
  "Description": "AMI ID for the Windows Workstation"
76
- }
71
+ },
77
72
  <% end -%>
73
+ "AutomateAMI": {
74
+ "Type": "String",
75
+ "Default": "<%= @automate_ami %>",
76
+ "Description": "AMI ID for the Automate Server"
77
+ }
78
78
  },
79
79
  "Resources": {
80
80
  "VPC": {
@@ -645,17 +645,18 @@
645
645
  }
646
646
  }
647
647
  },
648
- "Outputs": {
649
- <% 1.upto(@workstations) do |i| -%>
650
- "WindowsWorkstation<%= i.to_s %>PubDNS": {
651
- "Description": "Public IP address of the Windows Workstation",
652
- "Value": {
653
- "Fn::GetAtt": [
654
- "WindowsWorkstation<%= i.to_s %>",
648
+ "Outputs":
649
+ <% workstations_hash = {} -%>
650
+ <% 1.upto(@workstations) do |i|
651
+ workstations_hash["WindowsWorkstation#{i.to_s}PubDNS"] = {
652
+ "Description" => "Public IP address of the Windows Workstation",
653
+ "Value" => {
654
+ "Fn::GetAtt" => [
655
+ "WindowsWorkstation#{i.to_s}",
655
656
  "PublicIp"
656
657
  ]
657
658
  }
658
659
  }
659
- <% end -%>
660
- }
660
+ end -%>
661
+ <%= workstations_hash.to_json %>
661
662
  }
data/wombat.example.yml CHANGED
@@ -3,48 +3,58 @@ name: wombat
3
3
  # Uncomment domain_prefix if you wish to prepend your generated domain.
4
4
  # Ex: The below example would create foo-chef.animals.biz.
5
5
  # domain_prefix: foo-
6
- certs: ['automate', 'chef', 'compliance']
7
6
  domain: animals.biz
8
7
  enterprise: mammals
9
8
  org: marsupials
10
- build-nodes: '1'
11
- workstations: '1'
12
- workstation-passwd: 'RL9@T40BTmXh'
13
- infranodes:
14
- # Add a list of infrastructure nodes here with their associated run list to have these nodes precreated on the Chef Server
15
- # Note: the cookbook content won't be automatically uploaded, only the node object will be created with the run list added,
16
- # if the content doesn't exist at the first checkin the chef-client run will fail.
17
- # acceptance:
18
- # environment: web-acceptance
19
- # run_list:
20
- # - recipe[bacon::chewy]
21
- # delivered:
22
- # environment: web-delivered
23
- # run_list:
24
- # - recipe[bacon::crispy]
25
- version: 0.1.0
9
+ certs: ['automate', 'chef', 'compliance']
26
10
  ttl: 6
27
- # Uncomment conf and subkeys to override the listed defaults.
28
- # These paths are relative to the directory of this file.
29
- # conf:
30
- # key_dir: 'keys'
31
- # cookbook_dir: 'cookbooks'
32
- # packer_dir: 'packer'
33
- # templates_dir: 'templates'
34
- # log_dir: 'logs'
11
+ linux: ubuntu
12
+ # Must meet the minimum Microsoft Complexity Requirements
13
+ # https://technet.microsoft.com/en-us/library/hh994562(v=ws.11).aspx)
14
+ version: 0.2.1
35
15
  products:
36
- chef: stable-12.13.37
37
- chef-server: stable-12.8.0
38
- chefdk: stable-0.17.17
39
- compliance: stable-1.3.1
40
- automate: stable-0.5.125
16
+ chef: stable-latest
17
+ chef-server: stable-latest
18
+ chefdk: stable-latest
19
+ compliance: stable-latest
20
+ automate: stable-latest
21
+ push-jobs-server: stable-latest
22
+ manage: stable-latest
23
+ build-nodes:
24
+ count: 3
25
+ workstations:
26
+ platform: windows
27
+ password: 'ZL9@T40BTmXhZ'
28
+ count: 1
29
+ infranodes:
30
+ # Add a list of infrastructure nodes here with their associated run list to have these nodes precreated on the Chef Server
31
+ # Note: the cookbook content won't be automatically uploaded, only the node object will be created with the run list added,
32
+ # if the content doesn't exist at the first checkin the chef-client run will fail.
33
+ # acceptance:
34
+ # platform: windows
35
+ # environment: web-acceptance
36
+ # run_list:
37
+ # - recipe[bacon::chewy]
38
+ # delivered:
39
+ # environment: web-delivered
40
+ # run_list:
41
+ # - recipe[bacon::crispy]
42
+ conf:
43
+ key_dir: 'keys'
44
+ cookbook_dir: 'cookbooks'
45
+ packer_dir: 'packer'
46
+ templates_dir: 'templates'
47
+ log_dir: 'logs'
48
+ stack_dir: 'stacks'
49
+ audio: false
41
50
  aws:
42
- region: ap-southeast-2
43
- az: ap-southeast-2c
44
- keypair: keypair-ap-southeast-2
51
+ az: us-east-1e
52
+ keypair: keypair-us-east
53
+ region: us-east-1
45
54
  source_ami:
46
- ubuntu: ami-8c4cb0ec
47
- windows: ami-87c037e7
55
+ ubuntu: ami-8e0b9499
56
+ windows: ami-bd3ba0aa
57
+ centos: ami-6d1c2007
48
58
  gce:
49
59
  zone: us-east1-b
50
60
  source_image:
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wombat-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andre Elizondo
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2016-09-08 00:00:00.000000000 Z
12
+ date: 2016-10-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake
@@ -163,7 +163,7 @@ files:
163
163
  - cookbooks/chef_server/README.md
164
164
  - cookbooks/chef_server/chefignore
165
165
  - cookbooks/chef_server/metadata.rb
166
- - cookbooks/chef_server/recipes/cheffish.rb
166
+ - cookbooks/chef_server/recipes/bootstrap_users.rb
167
167
  - cookbooks/chef_server/recipes/default.rb
168
168
  - cookbooks/chef_server/test/fixtures/cookbooks/mock_data/files/automate.crt
169
169
  - cookbooks/chef_server/test/fixtures/cookbooks/mock_data/files/automate.key
@@ -283,19 +283,10 @@ files:
283
283
  - packer/chef-server.json
284
284
  - packer/compliance.json
285
285
  - packer/files/.gitkeep
286
+ - packer/infranodes-windows.json
286
287
  - packer/infranodes.json
287
- - packer/mock-data/.gitignore
288
- - packer/mock-data/.kitchen.yml
289
- - packer/mock-data/Berksfile
290
- - packer/mock-data/README.md
291
- - packer/mock-data/chefignore
292
- - packer/mock-data/metadata.rb
293
- - packer/mock-data/recipes/default.rb
294
- - packer/mock-data/spec/spec_helper.rb
295
- - packer/mock-data/spec/unit/recipes/default_spec.rb
296
- - packer/mock-data/test/integration/default/serverspec/default_spec.rb
297
- - packer/mock-data/test/integration/helpers/serverspec/spec_helper.rb
298
288
  - packer/workstation.json
289
+ - stacks/.gitkeep
299
290
  - templates/bootstrap-aws.erb
300
291
  - templates/cfn.json.erb
301
292
  - terraform/README.md
@@ -328,4 +319,3 @@ signing_key:
328
319
  specification_version: 4
329
320
  summary: Make Chef demos delightful with Wombat
330
321
  test_files: []
331
- has_rdoc:
@@ -1,16 +0,0 @@
1
- .vagrant
2
- Berksfile.lock
3
- *~
4
- *#
5
- .#*
6
- \#*#
7
- .*.sw[a-z]
8
- *.un~
9
-
10
- # Bundler
11
- Gemfile.lock
12
- bin/*
13
- .bundle/*
14
-
15
- .kitchen/
16
- .kitchen.local.yml
@@ -1,21 +0,0 @@
1
- ---
2
- driver:
3
- name: vagrant
4
-
5
- provisioner:
6
- name: chef_zero
7
-
8
- # Uncomment the following verifier to leverage Inspec instead of Busser (the
9
- # default verifier)
10
- # verifier:
11
- # name: inspec
12
-
13
- platforms:
14
- - name: ubuntu-14.04
15
- - name: centos-7.1
16
-
17
- suites:
18
- - name: default
19
- run_list:
20
- - recipe[mock-data::default]
21
- attributes:
@@ -1,3 +0,0 @@
1
- source 'https://supermarket.chef.io'
2
-
3
- metadata
@@ -1,4 +0,0 @@
1
- # mock-data
2
-
3
- TODO: Enter the cookbook description here.
4
-