wombat-cli 0.4.1 → 0.4.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (198) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +23 -23
  3. data/.travis.yml +27 -27
  4. data/CHANGELOG.md +77 -70
  5. data/DESIGN.md +49 -49
  6. data/Gemfile +5 -5
  7. data/README.md +146 -146
  8. data/Rakefile +26 -26
  9. data/bin/wombat +24 -24
  10. data/generator_files/Vagrantfile +120 -120
  11. data/generator_files/cookbooks/automate/.gitignore +16 -16
  12. data/generator_files/cookbooks/automate/.kitchen.ec2.yml +34 -34
  13. data/generator_files/cookbooks/automate/.kitchen.yml +24 -24
  14. data/generator_files/cookbooks/automate/Berksfile +6 -6
  15. data/generator_files/cookbooks/automate/README.md +4 -4
  16. data/generator_files/cookbooks/automate/chefignore +102 -102
  17. data/generator_files/cookbooks/automate/libraries/_helper.rb +52 -52
  18. data/generator_files/cookbooks/automate/libraries/delivery_api.rb +204 -204
  19. data/generator_files/cookbooks/automate/libraries/delivery_project.rb +31 -31
  20. data/generator_files/cookbooks/automate/libraries/dsl.rb +4 -4
  21. data/generator_files/cookbooks/automate/metadata.rb +11 -11
  22. data/generator_files/cookbooks/automate/recipes/default.rb +112 -112
  23. data/generator_files/cookbooks/automate/recipes/update-users.rb +48 -48
  24. data/generator_files/cookbooks/automate/templates/delivery.erb +6 -6
  25. data/generator_files/cookbooks/automate/test/fixtures/cookbooks/mock_data/files/automate.crt +26 -26
  26. data/generator_files/cookbooks/automate/test/fixtures/cookbooks/mock_data/files/automate.key +27 -27
  27. data/generator_files/cookbooks/automate/test/fixtures/cookbooks/mock_data/files/chef.crt +25 -25
  28. data/generator_files/cookbooks/automate/test/fixtures/cookbooks/mock_data/files/chef.key +27 -27
  29. data/generator_files/cookbooks/automate/test/fixtures/cookbooks/mock_data/files/compliance.crt +26 -26
  30. data/generator_files/cookbooks/automate/test/fixtures/cookbooks/mock_data/files/compliance.key +27 -27
  31. data/generator_files/cookbooks/automate/test/fixtures/cookbooks/mock_data/files/private.pem +27 -27
  32. data/generator_files/cookbooks/automate/test/fixtures/cookbooks/mock_data/files/public.pub +1 -1
  33. data/generator_files/cookbooks/automate/test/fixtures/cookbooks/mock_data/metadata.rb +3 -3
  34. data/generator_files/cookbooks/automate/test/fixtures/cookbooks/mock_data/recipes/default.rb +27 -27
  35. data/generator_files/cookbooks/automate/test/integration/default/automate_spec.rb +56 -56
  36. data/generator_files/cookbooks/build_node/.gitignore +16 -16
  37. data/generator_files/cookbooks/build_node/.kitchen.ec2.yml +37 -37
  38. data/generator_files/cookbooks/build_node/.kitchen.yml +23 -23
  39. data/generator_files/cookbooks/build_node/Berksfile +8 -8
  40. data/generator_files/cookbooks/build_node/README.md +4 -4
  41. data/generator_files/cookbooks/build_node/chefignore +102 -102
  42. data/generator_files/cookbooks/build_node/metadata.rb +12 -12
  43. data/generator_files/cookbooks/build_node/recipes/default.rb +38 -38
  44. data/generator_files/cookbooks/build_node/templates/client.erb +2 -2
  45. data/generator_files/cookbooks/build_node/test/fixtures/cookbooks/mock_data/files/automate.crt +26 -26
  46. data/generator_files/cookbooks/build_node/test/fixtures/cookbooks/mock_data/files/automate.key +27 -27
  47. data/generator_files/cookbooks/build_node/test/fixtures/cookbooks/mock_data/files/chef.crt +25 -25
  48. data/generator_files/cookbooks/build_node/test/fixtures/cookbooks/mock_data/files/chef.key +27 -27
  49. data/generator_files/cookbooks/build_node/test/fixtures/cookbooks/mock_data/files/compliance.crt +26 -26
  50. data/generator_files/cookbooks/build_node/test/fixtures/cookbooks/mock_data/files/compliance.key +27 -27
  51. data/generator_files/cookbooks/build_node/test/fixtures/cookbooks/mock_data/files/private.pem +27 -27
  52. data/generator_files/cookbooks/build_node/test/fixtures/cookbooks/mock_data/files/public.pub +1 -1
  53. data/generator_files/cookbooks/build_node/test/fixtures/cookbooks/mock_data/metadata.rb +2 -2
  54. data/generator_files/cookbooks/build_node/test/fixtures/cookbooks/mock_data/recipes/default.rb +18 -18
  55. data/generator_files/cookbooks/build_node/test/integration/default/build-node_spec.rb +40 -40
  56. data/generator_files/cookbooks/chef_server/.gitignore +16 -16
  57. data/generator_files/cookbooks/chef_server/.kitchen.ec2.yml +34 -34
  58. data/generator_files/cookbooks/chef_server/.kitchen.yml +24 -24
  59. data/generator_files/cookbooks/chef_server/Berksfile +6 -6
  60. data/generator_files/cookbooks/chef_server/README.md +4 -4
  61. data/generator_files/cookbooks/chef_server/chefignore +102 -102
  62. data/generator_files/cookbooks/chef_server/metadata.rb +11 -11
  63. data/generator_files/cookbooks/chef_server/recipes/bootstrap_users.rb +91 -91
  64. data/generator_files/cookbooks/chef_server/recipes/default.rb +113 -113
  65. data/generator_files/cookbooks/chef_server/test/fixtures/cookbooks/mock_data/files/automate.crt +26 -26
  66. data/generator_files/cookbooks/chef_server/test/fixtures/cookbooks/mock_data/files/automate.key +27 -27
  67. data/generator_files/cookbooks/chef_server/test/fixtures/cookbooks/mock_data/files/chef.crt +25 -25
  68. data/generator_files/cookbooks/chef_server/test/fixtures/cookbooks/mock_data/files/chef.key +27 -27
  69. data/generator_files/cookbooks/chef_server/test/fixtures/cookbooks/mock_data/files/compliance.crt +26 -26
  70. data/generator_files/cookbooks/chef_server/test/fixtures/cookbooks/mock_data/files/compliance.key +27 -27
  71. data/generator_files/cookbooks/chef_server/test/fixtures/cookbooks/mock_data/files/private.pem +27 -27
  72. data/generator_files/cookbooks/chef_server/test/fixtures/cookbooks/mock_data/files/public.pub +1 -1
  73. data/generator_files/cookbooks/chef_server/test/fixtures/cookbooks/mock_data/metadata.rb +2 -2
  74. data/generator_files/cookbooks/chef_server/test/fixtures/cookbooks/mock_data/recipes/default.rb +23 -23
  75. data/generator_files/cookbooks/chef_server/test/integration/default/chef_server_spec.rb +50 -50
  76. data/generator_files/cookbooks/compliance/.gitignore +16 -16
  77. data/generator_files/cookbooks/compliance/.kitchen.ec2.yml +34 -34
  78. data/generator_files/cookbooks/compliance/.kitchen.yml +24 -24
  79. data/generator_files/cookbooks/compliance/Berksfile +7 -7
  80. data/generator_files/cookbooks/compliance/README.md +4 -4
  81. data/generator_files/cookbooks/compliance/chefignore +102 -102
  82. data/generator_files/cookbooks/compliance/metadata.rb +11 -11
  83. data/generator_files/cookbooks/compliance/recipes/default.rb +57 -57
  84. data/generator_files/cookbooks/compliance/spec/spec_helper.rb +2 -2
  85. data/generator_files/cookbooks/compliance/spec/unit/recipes/default_spec.rb +20 -20
  86. data/generator_files/cookbooks/compliance/test/fixtures/cookbooks/mock_data/files/automate.crt +26 -26
  87. data/generator_files/cookbooks/compliance/test/fixtures/cookbooks/mock_data/files/automate.key +27 -27
  88. data/generator_files/cookbooks/compliance/test/fixtures/cookbooks/mock_data/files/chef.crt +25 -25
  89. data/generator_files/cookbooks/compliance/test/fixtures/cookbooks/mock_data/files/chef.key +27 -27
  90. data/generator_files/cookbooks/compliance/test/fixtures/cookbooks/mock_data/files/compliance.crt +26 -26
  91. data/generator_files/cookbooks/compliance/test/fixtures/cookbooks/mock_data/files/compliance.key +27 -27
  92. data/generator_files/cookbooks/compliance/test/fixtures/cookbooks/mock_data/files/private.pem +27 -27
  93. data/generator_files/cookbooks/compliance/test/fixtures/cookbooks/mock_data/files/public.pub +1 -1
  94. data/generator_files/cookbooks/compliance/test/fixtures/cookbooks/mock_data/metadata.rb +4 -4
  95. data/generator_files/cookbooks/compliance/test/fixtures/cookbooks/mock_data/recipes/default.rb +21 -21
  96. data/generator_files/cookbooks/compliance/test/integration/default/compliance.rb +28 -28
  97. data/generator_files/cookbooks/infranodes/.gitignore +16 -16
  98. data/generator_files/cookbooks/infranodes/.kitchen.ec2.yml +48 -48
  99. data/generator_files/cookbooks/infranodes/.kitchen.yml +21 -21
  100. data/generator_files/cookbooks/infranodes/Berksfile +6 -6
  101. data/generator_files/cookbooks/infranodes/README.md +4 -4
  102. data/generator_files/cookbooks/infranodes/attributes/default.rb +2 -2
  103. data/generator_files/cookbooks/infranodes/chefignore +102 -102
  104. data/generator_files/cookbooks/infranodes/metadata.rb +13 -13
  105. data/generator_files/cookbooks/infranodes/recipes/default.rb +57 -57
  106. data/generator_files/cookbooks/infranodes/spec/spec_helper.rb +2 -2
  107. data/generator_files/cookbooks/infranodes/spec/unit/recipes/default_spec.rb +20 -20
  108. data/generator_files/cookbooks/infranodes/templates/default/client.rb.erb +5 -5
  109. data/generator_files/cookbooks/infranodes/test/fixtures/cookbooks/mock_data/files/automate.crt +26 -26
  110. data/generator_files/cookbooks/infranodes/test/fixtures/cookbooks/mock_data/files/automate.key +27 -27
  111. data/generator_files/cookbooks/infranodes/test/fixtures/cookbooks/mock_data/files/chef.crt +25 -25
  112. data/generator_files/cookbooks/infranodes/test/fixtures/cookbooks/mock_data/files/chef.key +27 -27
  113. data/generator_files/cookbooks/infranodes/test/fixtures/cookbooks/mock_data/files/compliance.crt +26 -26
  114. data/generator_files/cookbooks/infranodes/test/fixtures/cookbooks/mock_data/files/compliance.key +27 -27
  115. data/generator_files/cookbooks/infranodes/test/fixtures/cookbooks/mock_data/files/private.pem +27 -27
  116. data/generator_files/cookbooks/infranodes/test/fixtures/cookbooks/mock_data/files/public.pub +1 -1
  117. data/generator_files/cookbooks/infranodes/test/fixtures/cookbooks/mock_data/metadata.rb +3 -3
  118. data/generator_files/cookbooks/infranodes/test/fixtures/cookbooks/mock_data/recipes/default.rb +27 -27
  119. data/generator_files/cookbooks/infranodes/test/integration/default/infranodes_spec.rb +22 -22
  120. data/generator_files/cookbooks/infranodes/test/integration/helpers/serverspec/spec_helper.rb +8 -8
  121. data/generator_files/cookbooks/wombat/.gitignore +16 -16
  122. data/generator_files/cookbooks/wombat/.kitchen.yml +43 -43
  123. data/generator_files/cookbooks/wombat/Berksfile +5 -5
  124. data/generator_files/cookbooks/wombat/README.md +4 -4
  125. data/generator_files/cookbooks/wombat/attributes/default.rb +74 -74
  126. data/generator_files/cookbooks/wombat/attributes/packer.rb +18 -18
  127. data/generator_files/cookbooks/wombat/chefignore +102 -102
  128. data/generator_files/cookbooks/wombat/metadata.rb +13 -13
  129. data/generator_files/cookbooks/wombat/recipes/authorized-keys.rb +20 -20
  130. data/generator_files/cookbooks/wombat/recipes/default.rb +111 -111
  131. data/generator_files/cookbooks/wombat/recipes/etc-hosts.rb +51 -51
  132. data/generator_files/cookbooks/workstation/.gitignore +16 -16
  133. data/generator_files/cookbooks/workstation/.kitchen.ec2.yml +30 -30
  134. data/generator_files/cookbooks/workstation/.kitchen.yml +22 -22
  135. data/generator_files/cookbooks/workstation/Berksfile +7 -7
  136. data/generator_files/cookbooks/workstation/README.md +3 -3
  137. data/generator_files/cookbooks/workstation/chefignore +102 -102
  138. data/generator_files/cookbooks/workstation/files/atom.apm.list +7 -7
  139. data/generator_files/cookbooks/workstation/files/atom.config.cson +3 -3
  140. data/generator_files/cookbooks/workstation/metadata.rb +14 -14
  141. data/generator_files/cookbooks/workstation/recipes/browser.rb +59 -59
  142. data/generator_files/cookbooks/workstation/recipes/certs-keys.rb +45 -45
  143. data/generator_files/cookbooks/workstation/recipes/chef.rb +29 -29
  144. data/generator_files/cookbooks/workstation/recipes/default.rb +20 -20
  145. data/generator_files/cookbooks/workstation/recipes/dotnet.rb +17 -17
  146. data/generator_files/cookbooks/workstation/recipes/editor.rb +19 -19
  147. data/generator_files/cookbooks/workstation/recipes/profile.rb +42 -42
  148. data/generator_files/cookbooks/workstation/recipes/terminal.rb +13 -13
  149. data/generator_files/cookbooks/workstation/templates/default/bookmarks.html.erb +23 -23
  150. data/generator_files/cookbooks/workstation/templates/default/data_collector.rb.erb +2 -2
  151. data/generator_files/cookbooks/workstation/templates/default/ise_profile.ps1.erb +11 -11
  152. data/generator_files/cookbooks/workstation/templates/default/knife.rb.erb +10 -10
  153. data/generator_files/cookbooks/workstation/templates/default/master_preferences.json.erb +28 -28
  154. data/generator_files/cookbooks/workstation/templates/default/ssh_config.erb +16 -16
  155. data/generator_files/cookbooks/workstation/test/fixtures/cookbooks/mock_data/files/automate.crt +26 -26
  156. data/generator_files/cookbooks/workstation/test/fixtures/cookbooks/mock_data/files/automate.key +27 -27
  157. data/generator_files/cookbooks/workstation/test/fixtures/cookbooks/mock_data/files/chef.crt +26 -26
  158. data/generator_files/cookbooks/workstation/test/fixtures/cookbooks/mock_data/files/chef.key +27 -27
  159. data/generator_files/cookbooks/workstation/test/fixtures/cookbooks/mock_data/files/compliance.crt +26 -26
  160. data/generator_files/cookbooks/workstation/test/fixtures/cookbooks/mock_data/files/compliance.key +27 -27
  161. data/generator_files/cookbooks/workstation/test/fixtures/cookbooks/mock_data/files/private.pem +27 -27
  162. data/generator_files/cookbooks/workstation/test/fixtures/cookbooks/mock_data/files/public.pub +1 -1
  163. data/generator_files/cookbooks/workstation/test/fixtures/cookbooks/mock_data/metadata.rb +2 -2
  164. data/generator_files/cookbooks/workstation/test/fixtures/cookbooks/mock_data/recipes/default.rb +21 -21
  165. data/generator_files/cookbooks/workstation/test/integration/default/workstation_spec.rb +37 -37
  166. data/generator_files/packer/automate.json +131 -131
  167. data/generator_files/packer/build-node.json +137 -137
  168. data/generator_files/packer/chef-server.json +132 -132
  169. data/generator_files/packer/compliance.json +128 -128
  170. data/generator_files/packer/infranodes-windows.json +138 -138
  171. data/generator_files/packer/infranodes.json +129 -129
  172. data/generator_files/packer/workstation.json +136 -136
  173. data/generator_files/templates/arm.json.erb +575 -575
  174. data/generator_files/templates/arm.tidy.json.erb +31 -31
  175. data/generator_files/templates/bootstrap-aws.erb +36 -36
  176. data/generator_files/templates/cfn.json.erb +674 -674
  177. data/generator_files/wombat.yml +71 -71
  178. data/lib/wombat/aws.rb +67 -67
  179. data/lib/wombat/build.rb +338 -338
  180. data/lib/wombat/cli.rb +238 -238
  181. data/lib/wombat/common.rb +347 -347
  182. data/lib/wombat/crypto.rb +64 -64
  183. data/lib/wombat/delete.rb +94 -94
  184. data/lib/wombat/deploy.rb +101 -101
  185. data/lib/wombat/init.rb +32 -32
  186. data/lib/wombat/latest.rb +27 -27
  187. data/lib/wombat/output.rb +86 -86
  188. data/lib/wombat/update.rb +20 -20
  189. data/lib/wombat/version.rb +3 -3
  190. data/lib/wombat.rb +8 -8
  191. data/spec/functional/common_spec.rb +26 -26
  192. data/spec/spec_helper.rb +103 -103
  193. data/spec/unit/common_spec.rb +116 -116
  194. data/terraform/README.md +13 -13
  195. data/terraform/templates/terraform.tfvars.erb +12 -12
  196. data/terraform/wombat.tf +328 -328
  197. data/wombat-cli.gemspec +34 -34
  198. metadata +2 -2
@@ -1,30 +1,30 @@
1
-
2
- ---
3
- driver:
4
- name: ec2
5
- aws_ssh_key_id: <%= ENV["EC2_SSH_KEY_NAME"] %>
6
- security_group_ids: ["sg-401e0e25"]
7
- region: us-west-2
8
- availability_zone: b
9
- instance_type: m3.large
10
-
11
- provisioner:
12
- name: chef_zero
13
- chef_omnibus_install_options: -P chefdk
14
- chef_omnibus_root: c:/opscode/chefdk
15
-
16
- platforms:
17
- - name: windows-2012r2
18
- driver:
19
- image_id: ami-1c7ad77c
20
- transport:
21
- ssh_key: <%= ENV["EC2_SSH_KEY_PATH"] %>
22
-
23
- suites:
24
- - name: default
25
- run_list:
26
- - recipe[mock_data]
27
- - recipe[workstation]
28
-
29
- verifier:
30
- name: inspec
1
+
2
+ ---
3
+ driver:
4
+ name: ec2
5
+ aws_ssh_key_id: <%= ENV["EC2_SSH_KEY_NAME"] %>
6
+ security_group_ids: ["sg-401e0e25"]
7
+ region: us-west-2
8
+ availability_zone: b
9
+ instance_type: m3.large
10
+
11
+ provisioner:
12
+ name: chef_zero
13
+ chef_omnibus_install_options: -P chefdk
14
+ chef_omnibus_root: c:/opscode/chefdk
15
+
16
+ platforms:
17
+ - name: windows-2012r2
18
+ driver:
19
+ image_id: ami-1c7ad77c
20
+ transport:
21
+ ssh_key: <%= ENV["EC2_SSH_KEY_PATH"] %>
22
+
23
+ suites:
24
+ - name: default
25
+ run_list:
26
+ - recipe[mock_data]
27
+ - recipe[workstation]
28
+
29
+ verifier:
30
+ name: inspec
@@ -1,22 +1,22 @@
1
- driver:
2
- name: vagrant
3
- provider: virtualbox
4
-
5
- provisioner:
6
- name: chef_zero
7
- # chef_omnibus_install_options: -P chefdk
8
- # chef_omnibus_root: c:/opscode/chefdk
9
-
10
- verifier:
11
- name: inspec
12
-
13
- platforms:
14
- - name: windows-2012r2
15
- driver_config:
16
- box: mwrock/Windows2012R2
17
-
18
- suites:
19
- - name: default
20
- run_list:
21
- - recipe[mock_data]
22
- - recipe[workstation]
1
+ driver:
2
+ name: vagrant
3
+ provider: virtualbox
4
+
5
+ provisioner:
6
+ name: chef_zero
7
+ # chef_omnibus_install_options: -P chefdk
8
+ # chef_omnibus_root: c:/opscode/chefdk
9
+
10
+ verifier:
11
+ name: inspec
12
+
13
+ platforms:
14
+ - name: windows-2012r2
15
+ driver_config:
16
+ box: mwrock/Windows2012R2
17
+
18
+ suites:
19
+ - name: default
20
+ run_list:
21
+ - recipe[mock_data]
22
+ - recipe[workstation]
@@ -1,7 +1,7 @@
1
- source 'https://supermarket.chef.io'
2
-
3
- metadata
4
-
5
- cookbook 'wombat', path: '../wombat'
6
- cookbook 'mock_data', path: 'test/fixtures/cookbooks/mock_data'
7
-
1
+ source 'https://supermarket.chef.io'
2
+
3
+ metadata
4
+
5
+ cookbook 'wombat', path: '../wombat'
6
+ cookbook 'mock_data', path: 'test/fixtures/cookbooks/mock_data'
7
+
@@ -1,3 +1,3 @@
1
- # workstation
2
-
3
- Configures a Windows workstation for use in a demo
1
+ # workstation
2
+
3
+ Configures a Windows workstation for use in a demo
@@ -1,102 +1,102 @@
1
- # Put files/directories that should be ignored in this file when uploading
2
- # to a chef-server or supermarket.
3
- # Lines that start with '# ' are comments.
4
-
5
- # OS generated files #
6
- ######################
7
- .DS_Store
8
- Icon?
9
- nohup.out
10
- ehthumbs.db
11
- Thumbs.db
12
-
13
- # SASS #
14
- ########
15
- .sass-cache
16
-
17
- # EDITORS #
18
- ###########
19
- \#*
20
- .#*
21
- *~
22
- *.sw[a-z]
23
- *.bak
24
- REVISION
25
- TAGS*
26
- tmtags
27
- *_flymake.*
28
- *_flymake
29
- *.tmproj
30
- .project
31
- .settings
32
- mkmf.log
33
-
34
- ## COMPILED ##
35
- ##############
36
- a.out
37
- *.o
38
- *.pyc
39
- *.so
40
- *.com
41
- *.class
42
- *.dll
43
- *.exe
44
- */rdoc/
45
-
46
- # Testing #
47
- ###########
48
- .watchr
49
- .rspec
50
- spec/*
51
- spec/fixtures/*
52
- test/*
53
- features/*
54
- examples/*
55
- Guardfile
56
- Procfile
57
- .kitchen*
58
- .rubocop.yml
59
- spec/*
60
- Rakefile
61
- .travis.yml
62
- .foodcritic
63
- .codeclimate.yml
64
-
65
- # SCM #
66
- #######
67
- .git
68
- */.git
69
- .gitignore
70
- .gitmodules
71
- .gitconfig
72
- .gitattributes
73
- .svn
74
- */.bzr/*
75
- */.hg/*
76
- */.svn/*
77
-
78
- # Berkshelf #
79
- #############
80
- Berksfile
81
- Berksfile.lock
82
- cookbooks/*
83
- tmp
84
-
85
- # Cookbooks #
86
- #############
87
- CONTRIBUTING*
88
- CHANGELOG*
89
- TESTING*
90
- MAINTAINERS.toml
91
-
92
- # Strainer #
93
- ############
94
- Colanderfile
95
- Strainerfile
96
- .colander
97
- .strainer
98
-
99
- # Vagrant #
100
- ###########
101
- .vagrant
102
- Vagrantfile
1
+ # Put files/directories that should be ignored in this file when uploading
2
+ # to a chef-server or supermarket.
3
+ # Lines that start with '# ' are comments.
4
+
5
+ # OS generated files #
6
+ ######################
7
+ .DS_Store
8
+ Icon?
9
+ nohup.out
10
+ ehthumbs.db
11
+ Thumbs.db
12
+
13
+ # SASS #
14
+ ########
15
+ .sass-cache
16
+
17
+ # EDITORS #
18
+ ###########
19
+ \#*
20
+ .#*
21
+ *~
22
+ *.sw[a-z]
23
+ *.bak
24
+ REVISION
25
+ TAGS*
26
+ tmtags
27
+ *_flymake.*
28
+ *_flymake
29
+ *.tmproj
30
+ .project
31
+ .settings
32
+ mkmf.log
33
+
34
+ ## COMPILED ##
35
+ ##############
36
+ a.out
37
+ *.o
38
+ *.pyc
39
+ *.so
40
+ *.com
41
+ *.class
42
+ *.dll
43
+ *.exe
44
+ */rdoc/
45
+
46
+ # Testing #
47
+ ###########
48
+ .watchr
49
+ .rspec
50
+ spec/*
51
+ spec/fixtures/*
52
+ test/*
53
+ features/*
54
+ examples/*
55
+ Guardfile
56
+ Procfile
57
+ .kitchen*
58
+ .rubocop.yml
59
+ spec/*
60
+ Rakefile
61
+ .travis.yml
62
+ .foodcritic
63
+ .codeclimate.yml
64
+
65
+ # SCM #
66
+ #######
67
+ .git
68
+ */.git
69
+ .gitignore
70
+ .gitmodules
71
+ .gitconfig
72
+ .gitattributes
73
+ .svn
74
+ */.bzr/*
75
+ */.hg/*
76
+ */.svn/*
77
+
78
+ # Berkshelf #
79
+ #############
80
+ Berksfile
81
+ Berksfile.lock
82
+ cookbooks/*
83
+ tmp
84
+
85
+ # Cookbooks #
86
+ #############
87
+ CONTRIBUTING*
88
+ CHANGELOG*
89
+ TESTING*
90
+ MAINTAINERS.toml
91
+
92
+ # Strainer #
93
+ ############
94
+ Colanderfile
95
+ Strainerfile
96
+ .colander
97
+ .strainer
98
+
99
+ # Vagrant #
100
+ ###########
101
+ .vagrant
102
+ Vagrantfile
@@ -1,7 +1,7 @@
1
- base16-syntax
2
- git-difftool
3
- language-chef
4
- linter
5
- linter-erb
6
- linter-foodcritic
7
- linter-js-yaml
1
+ base16-syntax
2
+ git-difftool
3
+ language-chef
4
+ linter
5
+ linter-erb
6
+ linter-foodcritic
7
+ linter-js-yaml
@@ -1,3 +1,3 @@
1
- "*":
2
- welcome:
3
- showOnStartup: false
1
+ "*":
2
+ welcome:
3
+ showOnStartup: false
@@ -1,14 +1,14 @@
1
- name 'workstation'
2
- maintainer 'Team Wombat'
3
- maintainer_email 'cheeseplus@chef.io'
4
- license 'Apache 2.0'
5
- description 'Configures a Windows workstation'
6
- long_description 'Configures a Windows workstation'
7
- version '0.2.6'
8
- supports 'windows'
9
-
10
- depends 'chocolatey'
11
- depends 'windows'
12
- depends 'hostsfile'
13
- depends 'chef-ingredient'
14
- depends 'wombat'
1
+ name 'workstation'
2
+ maintainer 'Team Wombat'
3
+ maintainer_email 'cheeseplus@chef.io'
4
+ license 'Apache 2.0'
5
+ description 'Configures a Windows workstation'
6
+ long_description 'Configures a Windows workstation'
7
+ version '0.2.6'
8
+ supports 'windows'
9
+
10
+ depends 'chocolatey'
11
+ depends 'windows'
12
+ depends 'hostsfile'
13
+ depends 'chef-ingredient'
14
+ depends 'wombat'
@@ -1,59 +1,59 @@
1
- home = Dir.home
2
- chef_server_url = "https://#{node['demo']['domain_prefix']}chef.#{node['demo']['domain']}/organizations/#{node['demo']['org']}"
3
- automate_url = "https://#{node['demo']['domain_prefix']}automate.#{node['demo']['domain']}/e/#{node['demo']['enterprise']}"
4
- compliance_url = "https://#{node['demo']['domain_prefix']}compliance.#{node['demo']['domain']}"
5
-
6
- template "#{home}/bookmarks.html" do
7
- source 'bookmarks.html.erb'
8
- action :create
9
- variables(
10
- automate_url: "#{automate_url}/#/dashboard",
11
- viz_url: "https://#{node['demo']['domain_prefix']}automate.#{node['demo']['domain']}/viz",
12
- chef_server_url: "#{chef_server_url}/nodes",
13
- compliance_url: "#{compliance_url}/",
14
- tutorial_url: node['demo']['tutorial_url']
15
- )
16
- end
17
-
18
- prefs = 'C:\Program Files (x86)\Google\Chrome\Application\master_preferences'
19
-
20
- template prefs do
21
- source 'master_preferences.json.erb'
22
- variables(
23
- homepage: 'https://chef.io/',
24
- import_bookmarks_from_file: "#{home}/bookmarks.html"
25
- )
26
- action :create
27
- end
28
-
29
- registry_key 'Set Chrome as default HTTP protocol association' do
30
- action :create
31
- key 'HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice'
32
- values [
33
- {:name => 'Hash', :type => :string, :data => 'TW2AqyYVQlM='},
34
- {:name => 'ProgId', :type => :string, :data => 'ChromeHTML'}
35
- ]
36
- end
37
-
38
- registry_key 'Set Chrome as default HTTPS protocol association' do
39
- action :create
40
- key 'HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\https\UserChoice'
41
- values [
42
- {:name => 'Hash', :type => :string, :data => '4N1og3kLvcE='},
43
- {:name => 'ProgId', :type => :string, :data => 'ChromeHTML'}
44
- ]
45
- end
46
-
47
- # Enable ClearType for Chrome 52+
48
- registry_key "HKEY_CURRENT_USER\\Control Panel\\Desktop" do
49
- values [{
50
- :name => "FontSmoothing",
51
- :type => :string,
52
- :data => 2
53
- },{
54
- :name => "FontSmoothingType",
55
- :type => :dword,
56
- :data => 2
57
- }]
58
- action :create
59
- end
1
+ home = Dir.home
2
+ chef_server_url = "https://#{node['demo']['domain_prefix']}chef.#{node['demo']['domain']}/organizations/#{node['demo']['org']}"
3
+ automate_url = "https://#{node['demo']['domain_prefix']}automate.#{node['demo']['domain']}/e/#{node['demo']['enterprise']}"
4
+ compliance_url = "https://#{node['demo']['domain_prefix']}compliance.#{node['demo']['domain']}"
5
+
6
+ template "#{home}/bookmarks.html" do
7
+ source 'bookmarks.html.erb'
8
+ action :create
9
+ variables(
10
+ automate_url: "#{automate_url}/#/dashboard",
11
+ viz_url: "https://#{node['demo']['domain_prefix']}automate.#{node['demo']['domain']}/viz",
12
+ chef_server_url: "#{chef_server_url}/nodes",
13
+ compliance_url: "#{compliance_url}/",
14
+ tutorial_url: node['demo']['tutorial_url']
15
+ )
16
+ end
17
+
18
+ prefs = 'C:\Program Files (x86)\Google\Chrome\Application\master_preferences'
19
+
20
+ template prefs do
21
+ source 'master_preferences.json.erb'
22
+ variables(
23
+ homepage: 'https://chef.io/',
24
+ import_bookmarks_from_file: "#{home}/bookmarks.html"
25
+ )
26
+ action :create
27
+ end
28
+
29
+ registry_key 'Set Chrome as default HTTP protocol association' do
30
+ action :create
31
+ key 'HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice'
32
+ values [
33
+ {:name => 'Hash', :type => :string, :data => 'TW2AqyYVQlM='},
34
+ {:name => 'ProgId', :type => :string, :data => 'ChromeHTML'}
35
+ ]
36
+ end
37
+
38
+ registry_key 'Set Chrome as default HTTPS protocol association' do
39
+ action :create
40
+ key 'HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\https\UserChoice'
41
+ values [
42
+ {:name => 'Hash', :type => :string, :data => '4N1og3kLvcE='},
43
+ {:name => 'ProgId', :type => :string, :data => 'ChromeHTML'}
44
+ ]
45
+ end
46
+
47
+ # Enable ClearType for Chrome 52+
48
+ registry_key "HKEY_CURRENT_USER\\Control Panel\\Desktop" do
49
+ values [{
50
+ :name => "FontSmoothing",
51
+ :type => :string,
52
+ :data => 2
53
+ },{
54
+ :name => "FontSmoothingType",
55
+ :type => :dword,
56
+ :data => 2
57
+ }]
58
+ action :create
59
+ end
@@ -1,45 +1,45 @@
1
- home = Dir.home
2
-
3
- %W(
4
- #{home}/.chef
5
- #{home}/.chef/trusted_certs
6
- #{home}/.ssh
7
- ).each do |directory|
8
- directory directory
9
- end
10
-
11
- template "#{home}/.ssh/config" do
12
- source 'ssh_config.erb'
13
- variables(
14
- home: home,
15
- server: "#{node['demo']['domain_prefix']}automate.#{node['demo']['domain']}",
16
- ent: node['demo']['enterprise'],
17
- automate_user: "workstation-#{node['demo']['workstation-number']}",
18
- ssh_user: node['demo']['admin-user']
19
- )
20
- end
21
-
22
- %w(chef automate compliance).each do |f|
23
- file "#{home}/.chef/trusted_certs/#{node['demo']['domain_prefix']}#{f}_#{node['demo']['domain'].tr('.','_')}.crt" do
24
- content lazy { IO.read("C:/Windows/Temp/#{f}.crt") }
25
- action :create
26
- end
27
-
28
- powershell_script 'Install certs to Root CA' do
29
- code <<-EOH
30
- Import-Certificate -FilePath C:/Windows/Temp/#{f}.crt -CertStoreLocation Cert:/LocalMachine/Root
31
- EOH
32
- end
33
- end
34
-
35
- file "#{home}/.ssh/id_rsa.pub" do
36
- content lazy { IO.read("C:/Windows/Temp/public.pub") }
37
- action :create
38
- end
39
-
40
- %W(#{home}/.chef/private.pem #{home}/.ssh/id_rsa).each do |path|
41
- file path do
42
- content lazy { IO.read("C:/Windows/Temp/private.pem") }
43
- action :create
44
- end
45
- end
1
+ home = Dir.home
2
+
3
+ %W(
4
+ #{home}/.chef
5
+ #{home}/.chef/trusted_certs
6
+ #{home}/.ssh
7
+ ).each do |directory|
8
+ directory directory
9
+ end
10
+
11
+ template "#{home}/.ssh/config" do
12
+ source 'ssh_config.erb'
13
+ variables(
14
+ home: home,
15
+ server: "#{node['demo']['domain_prefix']}automate.#{node['demo']['domain']}",
16
+ ent: node['demo']['enterprise'],
17
+ automate_user: "workstation-#{node['demo']['workstation-number']}",
18
+ ssh_user: node['demo']['admin-user']
19
+ )
20
+ end
21
+
22
+ %w(chef automate compliance).each do |f|
23
+ file "#{home}/.chef/trusted_certs/#{node['demo']['domain_prefix']}#{f}_#{node['demo']['domain'].tr('.','_')}.crt" do
24
+ content lazy { IO.read("C:/Windows/Temp/#{f}.crt") }
25
+ action :create
26
+ end
27
+
28
+ powershell_script 'Install certs to Root CA' do
29
+ code <<-EOH
30
+ Import-Certificate -FilePath C:/Windows/Temp/#{f}.crt -CertStoreLocation Cert:/LocalMachine/Root
31
+ EOH
32
+ end
33
+ end
34
+
35
+ file "#{home}/.ssh/id_rsa.pub" do
36
+ content lazy { IO.read("C:/Windows/Temp/public.pub") }
37
+ action :create
38
+ end
39
+
40
+ %W(#{home}/.chef/private.pem #{home}/.ssh/id_rsa).each do |path|
41
+ file path do
42
+ content lazy { IO.read("C:/Windows/Temp/private.pem") }
43
+ action :create
44
+ end
45
+ end
@@ -1,29 +1,29 @@
1
- home = Dir.home
2
- chef_server_url = "https://#{node['demo']['domain_prefix']}chef.#{node['demo']['domain']}/organizations/#{node['demo']['org']}"
3
- conf_d_dir = File.join(home, '.chef', 'config.d')
4
-
5
- chef_ingredient 'chefdk' do
6
- channel node['demo']['versions']['chefdk'].split('-')[0].to_sym
7
- version node['demo']['versions']['chefdk'].split('-')[1]
8
- action :install
9
- end
10
-
11
- template "#{home}/.chef/knife.rb" do
12
- source 'knife.rb.erb'
13
- variables(
14
- home: home,
15
- node_name: "workstation-#{node['demo']['workstation-number']}",
16
- chef_server_url: chef_server_url,
17
- data_collector_url: "https://#{node['demo']['domain_prefix']}automate.#{node['demo']['domain']}",
18
- conf_d_dir: conf_d_dir
19
- )
20
- end
21
-
22
- directory conf_d_dir
23
-
24
- template File.join(conf_d_dir, 'data_collector.rb') do
25
- source 'data_collector.rb.erb'
26
- variables(
27
- data_collector_url: "https://#{node['demo']['domain_prefix']}automate.#{node['demo']['domain']}"
28
- )
29
- end
1
+ home = Dir.home
2
+ chef_server_url = "https://#{node['demo']['domain_prefix']}chef.#{node['demo']['domain']}/organizations/#{node['demo']['org']}"
3
+ conf_d_dir = File.join(home, '.chef', 'config.d')
4
+
5
+ chef_ingredient 'chefdk' do
6
+ channel node['demo']['versions']['chefdk'].split('-')[0].to_sym
7
+ version node['demo']['versions']['chefdk'].split('-')[1]
8
+ action :install
9
+ end
10
+
11
+ template "#{home}/.chef/knife.rb" do
12
+ source 'knife.rb.erb'
13
+ variables(
14
+ home: home,
15
+ node_name: "workstation-#{node['demo']['workstation-number']}",
16
+ chef_server_url: chef_server_url,
17
+ data_collector_url: "https://#{node['demo']['domain_prefix']}automate.#{node['demo']['domain']}",
18
+ conf_d_dir: conf_d_dir
19
+ )
20
+ end
21
+
22
+ directory conf_d_dir
23
+
24
+ template File.join(conf_d_dir, 'data_collector.rb') do
25
+ source 'data_collector.rb.erb'
26
+ variables(
27
+ data_collector_url: "https://#{node['demo']['domain_prefix']}automate.#{node['demo']['domain']}"
28
+ )
29
+ end