madscience 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (151) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +17 -0
  3. data/.madscience_gem_location +0 -0
  4. data/Cheffile +9 -0
  5. data/Cheffile.lock +34 -0
  6. data/Gemfile +4 -0
  7. data/LICENSE.txt +9 -0
  8. data/README.md +126 -0
  9. data/Rakefile +1 -0
  10. data/TODO +17 -0
  11. data/bin/madscience +90 -0
  12. data/cookbooks/apt/CHANGELOG.md +183 -0
  13. data/cookbooks/apt/README.md +255 -0
  14. data/cookbooks/apt/attributes/default.rb +29 -0
  15. data/cookbooks/apt/files/default/apt-proxy-v2.conf +50 -0
  16. data/cookbooks/apt/libraries/helpers.rb +49 -0
  17. data/cookbooks/apt/libraries/matchers.rb +17 -0
  18. data/cookbooks/apt/libraries/network.rb +31 -0
  19. data/cookbooks/apt/metadata.json +54 -0
  20. data/cookbooks/apt/metadata.rb +34 -0
  21. data/cookbooks/apt/providers/preference.rb +63 -0
  22. data/cookbooks/apt/providers/repository.rb +150 -0
  23. data/cookbooks/apt/recipes/cacher-client.rb +81 -0
  24. data/cookbooks/apt/recipes/cacher-ng.rb +43 -0
  25. data/cookbooks/apt/recipes/default.rb +91 -0
  26. data/cookbooks/apt/resources/preference.rb +32 -0
  27. data/cookbooks/apt/resources/repository.rb +43 -0
  28. data/cookbooks/apt/templates/debian-6.0/acng.conf.erb +173 -0
  29. data/cookbooks/apt/templates/default/01proxy.erb +5 -0
  30. data/cookbooks/apt/templates/default/acng.conf.erb +275 -0
  31. data/cookbooks/apt/templates/ubuntu-10.04/acng.conf.erb +269 -0
  32. data/cookbooks/chef_handler/CHANGELOG.md +44 -0
  33. data/cookbooks/chef_handler/README.md +103 -0
  34. data/cookbooks/chef_handler/attributes/default.rb +30 -0
  35. data/cookbooks/chef_handler/files/default/handlers/README +1 -0
  36. data/cookbooks/chef_handler/libraries/matchers.rb +29 -0
  37. data/cookbooks/chef_handler/metadata.json +29 -0
  38. data/cookbooks/chef_handler/metadata.rb +7 -0
  39. data/cookbooks/chef_handler/providers/default.rb +97 -0
  40. data/cookbooks/chef_handler/recipes/default.rb +33 -0
  41. data/cookbooks/chef_handler/recipes/json_file.rb +28 -0
  42. data/cookbooks/chef_handler/resources/default.rb +34 -0
  43. data/cookbooks/dmg/CHANGELOG.md +75 -0
  44. data/cookbooks/dmg/README.md +143 -0
  45. data/cookbooks/dmg/attributes/default.rb +20 -0
  46. data/cookbooks/dmg/metadata.json +30 -0
  47. data/cookbooks/dmg/metadata.rb +9 -0
  48. data/cookbooks/dmg/providers/package.rb +91 -0
  49. data/cookbooks/dmg/recipes/default.rb +18 -0
  50. data/cookbooks/dmg/resources/package.rb +37 -0
  51. data/cookbooks/vagrant/Berksfile +2 -0
  52. data/cookbooks/vagrant/CHANGELOG.md +7 -0
  53. data/cookbooks/vagrant/README.md +146 -0
  54. data/cookbooks/vagrant/TESTING.md +25 -0
  55. data/cookbooks/vagrant/attributes/default.rb +22 -0
  56. data/cookbooks/vagrant/metadata.rb +14 -0
  57. data/cookbooks/vagrant/providers/plugin.rb +50 -0
  58. data/cookbooks/vagrant/recipes/debian.rb +9 -0
  59. data/cookbooks/vagrant/recipes/default.rb +34 -0
  60. data/cookbooks/vagrant/recipes/fedora.rb +1 -0
  61. data/cookbooks/vagrant/recipes/mac_os_x.rb +7 -0
  62. data/cookbooks/vagrant/recipes/rhel.rb +9 -0
  63. data/cookbooks/vagrant/recipes/uninstall_gem.rb +7 -0
  64. data/cookbooks/vagrant/recipes/windows.rb +5 -0
  65. data/cookbooks/vagrant/resources/plugin.rb +8 -0
  66. data/cookbooks/virtualbox/README.md +167 -0
  67. data/cookbooks/virtualbox/attributes/default.rb +32 -0
  68. data/cookbooks/virtualbox/attributes/user.rb +22 -0
  69. data/cookbooks/virtualbox/attributes/webportal.rb +22 -0
  70. data/cookbooks/virtualbox/attributes/webservice.rb +24 -0
  71. data/cookbooks/virtualbox/files/ubuntu/machines_enabled +1 -0
  72. data/cookbooks/virtualbox/files/ubuntu/vboxcontrol +104 -0
  73. data/cookbooks/virtualbox/libraries/helpers.rb +30 -0
  74. data/cookbooks/virtualbox/metadata.rb +16 -0
  75. data/cookbooks/virtualbox/recipes/default.rb +70 -0
  76. data/cookbooks/virtualbox/recipes/systemservice.rb +56 -0
  77. data/cookbooks/virtualbox/recipes/user.rb +39 -0
  78. data/cookbooks/virtualbox/recipes/webportal.rb +58 -0
  79. data/cookbooks/virtualbox/recipes/webservice.rb +44 -0
  80. data/cookbooks/virtualbox/templates/ubuntu/config.erb +3 -0
  81. data/cookbooks/virtualbox/templates/ubuntu/config.php.erb +183 -0
  82. data/cookbooks/virtualbox/templates/ubuntu/vbox.cfg.erb +51 -0
  83. data/cookbooks/windows/CHANGELOG.md +268 -0
  84. data/cookbooks/windows/README.md +665 -0
  85. data/cookbooks/windows/attributes/default.rb +23 -0
  86. data/cookbooks/windows/files/default/handlers/windows_reboot_handler.rb +76 -0
  87. data/cookbooks/windows/libraries/feature_base.rb +59 -0
  88. data/cookbooks/windows/libraries/matchers.rb +450 -0
  89. data/cookbooks/windows/libraries/powershell_helper.rb +59 -0
  90. data/cookbooks/windows/libraries/powershell_out.rb +79 -0
  91. data/cookbooks/windows/libraries/registry_helper.rb +357 -0
  92. data/cookbooks/windows/libraries/version.rb +206 -0
  93. data/cookbooks/windows/libraries/windows_architecture_helper.rb +86 -0
  94. data/cookbooks/windows/libraries/windows_helper.rb +88 -0
  95. data/cookbooks/windows/libraries/windows_privileged.rb +94 -0
  96. data/cookbooks/windows/metadata.json +31 -0
  97. data/cookbooks/windows/metadata.rb +9 -0
  98. data/cookbooks/windows/providers/auto_run.rb +32 -0
  99. data/cookbooks/windows/providers/batch.rb +62 -0
  100. data/cookbooks/windows/providers/feature_dism.rb +64 -0
  101. data/cookbooks/windows/providers/feature_powershell.rb +38 -0
  102. data/cookbooks/windows/providers/feature_servermanagercmd.rb +47 -0
  103. data/cookbooks/windows/providers/package.rb +252 -0
  104. data/cookbooks/windows/providers/pagefile.rb +153 -0
  105. data/cookbooks/windows/providers/path.rb +35 -0
  106. data/cookbooks/windows/providers/printer.rb +100 -0
  107. data/cookbooks/windows/providers/printer_port.rb +102 -0
  108. data/cookbooks/windows/providers/reboot.rb +31 -0
  109. data/cookbooks/windows/providers/registry.rb +72 -0
  110. data/cookbooks/windows/providers/shortcut.rb +56 -0
  111. data/cookbooks/windows/providers/task.rb +128 -0
  112. data/cookbooks/windows/providers/zipfile.rb +91 -0
  113. data/cookbooks/windows/recipes/default.rb +34 -0
  114. data/cookbooks/windows/recipes/reboot_handler.rb +32 -0
  115. data/cookbooks/windows/resources/auto_run.rb +30 -0
  116. data/cookbooks/windows/resources/batch.rb +36 -0
  117. data/cookbooks/windows/resources/feature.rb +44 -0
  118. data/cookbooks/windows/resources/package.rb +46 -0
  119. data/cookbooks/windows/resources/pagefile.rb +29 -0
  120. data/cookbooks/windows/resources/path.rb +28 -0
  121. data/cookbooks/windows/resources/printer.rb +41 -0
  122. data/cookbooks/windows/resources/printer_port.rb +40 -0
  123. data/cookbooks/windows/resources/reboot.rb +29 -0
  124. data/cookbooks/windows/resources/registry.rb +34 -0
  125. data/cookbooks/windows/resources/shortcut.rb +35 -0
  126. data/cookbooks/windows/resources/task.rb +50 -0
  127. data/cookbooks/windows/resources/zipfile.rb +33 -0
  128. data/cookbooks/yum/CHANGELOG.md +212 -0
  129. data/cookbooks/yum/README.md +268 -0
  130. data/cookbooks/yum/attributes/main.rb +97 -0
  131. data/cookbooks/yum/libraries/matchers.rb +27 -0
  132. data/cookbooks/yum/metadata.json +34 -0
  133. data/cookbooks/yum/metadata.rb +13 -0
  134. data/cookbooks/yum/providers/globalconfig.rb +37 -0
  135. data/cookbooks/yum/providers/repository.rb +85 -0
  136. data/cookbooks/yum/recipes/default.rb +34 -0
  137. data/cookbooks/yum/resources/globalconfig.rb +105 -0
  138. data/cookbooks/yum/resources/repository.rb +63 -0
  139. data/cookbooks/yum/templates/default/main.erb +251 -0
  140. data/cookbooks/yum/templates/default/repo.erb +109 -0
  141. data/lib/madscience/version.rb +3 -0
  142. data/lib/madscience.rb +5 -0
  143. data/madscience.gemspec +44 -0
  144. data/new_gem_version.rb +6 -0
  145. data/node-data.json +3 -0
  146. data/site-cookbooks/madscience-vagrant-cookbook/CHANGELOG.md +13 -0
  147. data/site-cookbooks/madscience-vagrant-cookbook/README.md +53 -0
  148. data/site-cookbooks/madscience-vagrant-cookbook/metadata.rb +17 -0
  149. data/site-cookbooks/madscience-vagrant-cookbook/recipes/default.rb +87 -0
  150. data/solo.rb +6 -0
  151. metadata +337 -0
@@ -0,0 +1,105 @@
1
+ #
2
+ # Cookbook Name:: yum
3
+ # Resource:: repository
4
+ #
5
+ # Author:: Sean OMeara <someara@getchef.com>
6
+ # Copyright 2013, Chef
7
+ #
8
+ # Licensed under the Apache License, Version 2.0 (the "License");
9
+ # you may not use this file except in compliance with the License.
10
+ # You may obtain a copy of the License at
11
+ #
12
+ # http://www.apache.org/licenses/LICENSE-2.0
13
+ #
14
+ # Unless required by applicable law or agreed to in writing, software
15
+ # distributed under the License is distributed on an "AS IS" BASIS,
16
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17
+ # See the License for the specific language governing permissions and
18
+ # limitations under the License.
19
+ #
20
+
21
+ actions :create, :delete
22
+
23
+ default_action :create
24
+
25
+ # http://linux.die.net/man/5/yum.conf
26
+ attribute :alwaysprompt, :kind_of => [TrueClass, FalseClass], :default => nil
27
+ attribute :assumeyes, :kind_of => [TrueClass, FalseClass], :default => nil
28
+ attribute :bandwidth, :kind_of => String, :regex => /^\d+/, :default => nil
29
+ attribute :bugtracker_url, :kind_of => String, :regex => /.*/, :default => nil
30
+ attribute :clean_requirements_on_remove, :kind_of => [TrueClass, FalseClass], :default => nil
31
+ attribute :cachedir, :kind_of => String, :regex => /.*/, :default => '/var/cache/yum/$basearch/$releasever'
32
+ attribute :color, :kind_of => String, :equal_to => %w(always never), :default => nil
33
+ attribute :color_list_available_downgrade, :kind_of => String, :regex => /.*/, :default => nil
34
+ attribute :color_list_available_install, :kind_of => String, :regex => /.*/, :default => nil
35
+ attribute :color_list_available_reinstall, :kind_of => String, :regex => /.*/, :default => nil
36
+ attribute :color_list_available_upgrade, :kind_of => String, :regex => /.*/, :default => nil
37
+ attribute :color_list_installed_extra, :kind_of => String, :regex => /.*/, :default => nil
38
+ attribute :color_list_installed_newer, :kind_of => String, :regex => /.*/, :default => nil
39
+ attribute :color_list_installed_older, :kind_of => String, :regex => /.*/, :default => nil
40
+ attribute :color_list_installed_reinstall, :kind_of => String, :regex => /.*/, :default => nil
41
+ attribute :color_search_match, :kind_of => String, :regex => /.*/, :default => nil
42
+ attribute :color_update_installed, :kind_of => String, :regex => /.*/, :default => nil
43
+ attribute :color_update_local, :kind_of => String, :regex => /.*/, :default => nil
44
+ attribute :color_update_remote, :kind_of => String, :regex => /.*/, :default => nil
45
+ attribute :commands, :kind_of => String, :regex => /.*/, :default => nil
46
+ attribute :debuglevel, :kind_of => String, :regex => /^\d+$/, :default => '2'
47
+ attribute :diskspacecheck, :kind_of => [TrueClass, FalseClass], :default => nil
48
+ attribute :distroverpkg, :kind_of => String, :regex => /.*/, :default => nil
49
+ attribute :enable_group_conditionals, :kind_of => [TrueClass, FalseClass], :default => nil
50
+ attribute :errorlevel, :kind_of => String, :regex => /^\d+$/, :default => nil
51
+ attribute :exactarch, :kind_of => [TrueClass, FalseClass], :default => true
52
+ attribute :exclude, :kind_of => String, :regex => /.*/, :default => nil
53
+ attribute :gpgcheck, :kind_of => [TrueClass, FalseClass], :default => true
54
+ attribute :group_package_types, :kind_of => String, :regex => /.*/, :default => nil
55
+ attribute :groupremove_leaf_only, :kind_of => [TrueClass, FalseClass], :default => nil
56
+ attribute :history_list_view, :kind_of => String, :equal_to => %w(users commands single-user-commands), :default => nil
57
+ attribute :history_record, :kind_of => [TrueClass, FalseClass], :default => nil
58
+ attribute :history_record_packages, :kind_of => String, :regex => /.*/, :default => nil
59
+ attribute :http_caching, :kind_of => [TrueClass, FalseClass], :default => nil
60
+ attribute :installonly_limit, :kind_of => String, :regex => [/^\d+/, /keep/], :default => '3'
61
+ attribute :installonlypkgs, :kind_of => String, :regex => /.*/, :default => nil
62
+ attribute :installroot, :kind_of => String, :regex => /.*/, :default => nil
63
+ attribute :keepalive, :kind_of => [TrueClass, FalseClass], :default => nil
64
+ attribute :keepcache, :kind_of => [TrueClass, FalseClass], :default => false
65
+ attribute :kernelpkgnames, :kind_of => String, :regex => /.*/, :default => nil
66
+ attribute :localpkg_gpgcheck, :kind_of => [TrueClass, FalseClass], :default => nil
67
+ attribute :logfile, :kind_of => String, :regex => /.*/, :default => '/var/log/yum.log'
68
+ attribute :max_retries, :kind_of => String, :regex => /^\d+$/, :default => nil
69
+ attribute :mdpolicy, :kind_of => String, :equal_to => %w(instant group:primary group:small group:main group:all), :default => nil
70
+ attribute :metadata_expire, :kind_of => String, :regex => [/^\d+$/, /^\d+[mhd]$/, /never/], :default => nil
71
+ attribute :mirrorlist_expire, :kind_of => String, :regex => /^\d+$/, :default => nil
72
+ attribute :multilib_policy, :kind_of => String, :equal_to => %w(all best), :default => nil
73
+ attribute :obsoletes, :kind_of => [TrueClass, FalseClass], :default => true
74
+ attribute :overwrite_groups, :kind_of => [TrueClass, FalseClass], :default => nil
75
+ attribute :password, :kind_of => String, :regex => /.*/, :default => nil
76
+ attribute :path, :kind_of => String, :regex => /.*/, :default => nil, :name_attribute => true
77
+ attribute :persistdir, :kind_of => String, :regex => /.*/, :default => nil
78
+ attribute :pluginconfpath, :kind_of => String, :regex => /.*/, :default => nil
79
+ attribute :pluginpath, :kind_of => String, :regex => /.*/, :default => nil
80
+ attribute :plugins, :kind_of => [TrueClass, FalseClass], :default => true
81
+ attribute :protected_multilib, :kind_of => [TrueClass, FalseClass], :default => nil
82
+ attribute :protected_packages, :kind_of => String, :regex => /.*/, :default => nil
83
+ attribute :proxy, :kind_of => String, :regex => /.*/, :default => nil
84
+ attribute :proxy_password, :kind_of => String, :regex => /.*/, :default => nil
85
+ attribute :proxy_username, :kind_of => String, :regex => /.*/, :default => nil
86
+ attribute :recent, :kind_of => String, :regex => /^\d+$/, :default => nil
87
+ attribute :releasever, :kind_of => String, :regex => /.*/, :default => nil
88
+ attribute :repo_gpgcheck, :kind_of => [TrueClass, FalseClass], :default => nil
89
+ attribute :reset_nice, :kind_of => [TrueClass, FalseClass], :default => nil
90
+ attribute :rpmverbosity, :kind_of => String, :equal_to => %w(info critical emergency error warn debug), :default => nil
91
+ attribute :showdupesfromrepos, :kind_of => [TrueClass, FalseClass], :default => nil
92
+ attribute :skip_broken, :kind_of => [TrueClass, FalseClass], :default => nil
93
+ attribute :ssl_check_cert_permissions, :kind_of => [TrueClass, FalseClass], :default => nil
94
+ attribute :sslcacert, :kind_of => String, :regex => /.*/, :default => nil
95
+ attribute :sslclientcert, :kind_of => String, :regex => /.*/, :default => nil
96
+ attribute :sslclientkey, :kind_of => String, :regex => /.*/, :default => nil
97
+ attribute :sslverify, :kind_of => [TrueClass, FalseClass], :default => nil
98
+ attribute :syslog_device, :kind_of => String, :regex => /.*/, :default => nil
99
+ attribute :syslog_facility, :kind_of => String, :regex => /.*/, :default => nil
100
+ attribute :syslog_ident, :kind_of => String, :regex => /.*/, :default => nil
101
+ attribute :throttle, :kind_of => String, :regex => [/\d+k/, /\d+M/, /\d+G/], :default => nil
102
+ attribute :timeout, :kind_of => String, :regex => /^\d+$/, :default => nil
103
+ attribute :tolerant, :kind_of => [TrueClass, FalseClass], :default => nil
104
+ attribute :tsflags, :kind_of => String, :regex => /.*/, :default => nil
105
+ attribute :username, :kind_of => String, :regex => /.*/, :default => nil
@@ -0,0 +1,63 @@
1
+ #
2
+ # Cookbook Name:: yum
3
+ # Resource:: repository
4
+ #
5
+ # Author:: Sean OMeara <someara@getchef.com>
6
+ # Copyright 2013, Chef
7
+ #
8
+ # Licensed under the Apache License, Version 2.0 (the "License");
9
+ # you may not use this file except in compliance with the License.
10
+ # You may obtain a copy of the License at
11
+ #
12
+ # http://www.apache.org/licenses/LICENSE-2.0
13
+ #
14
+ # Unless required by applicable law or agreed to in writing, software
15
+ # distributed under the License is distributed on an "AS IS" BASIS,
16
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17
+ # See the License for the specific language governing permissions and
18
+ # limitations under the License.
19
+ #
20
+
21
+ actions :create, :delete, :add, :remove
22
+
23
+ default_action :create
24
+
25
+ # http://linux.die.net/man/5/yum.conf
26
+ attribute :baseurl, :kind_of => String, :regex => /.*/, :default => nil
27
+ attribute :cost, :kind_of => String, :regex => /^\d+$/, :default => nil
28
+ attribute :description, :kind_of => String, :regex => /.*/, :default => 'Ye Ole Rpm Repo'
29
+ attribute :enabled, :kind_of => [TrueClass, FalseClass], :default => true
30
+ attribute :enablegroups, :kind_of => [TrueClass, FalseClass], :default => nil
31
+ attribute :exclude, :kind_of => String, :regex => /.*/, :default => nil
32
+ attribute :failovermethod, :kind_of => String, :equal_to => %w(priority roundrobin), :default => nil
33
+ attribute :fastestmirror_enabled, :kind_of => [TrueClass, FalseClass], :default => nil
34
+ attribute :gpgcheck, :kind_of => [TrueClass, FalseClass], :default => true
35
+ attribute :gpgkey, :kind_of => [String, Array], :regex => /.*/, :default => nil
36
+ attribute :http_caching, :kind_of => String, :equal_to => %w(packages all none), :default => nil
37
+ attribute :include_config, :kind_of => String, :regex => /.*/, :default => nil
38
+ attribute :includepkgs, :kind_of => String, :regex => /.*/, :default => nil
39
+ attribute :keepalive, :kind_of => [TrueClass, FalseClass], :default => nil
40
+ attribute :max_retries, :kind_of => String, :regex => /.*/, :default => nil
41
+ attribute :metadata_expire, :kind_of => String, :regex => [/^\d+$/, /^\d+[mhd]$/, /never/], :default => nil
42
+ attribute :mirrorexpire, :kind_of => String, :regex => /.*/, :default => nil
43
+ attribute :mirrorlist, :kind_of => String, :regex => /.*/, :default => nil
44
+ attribute :mirror_expire, :kind_of => String, :regex => /^\d+$/, :default => nil
45
+ attribute :mirrorlist_expire, :kind_of => String, :regex => /^\d+$/, :default => nil
46
+ attribute :priority, :kind_of => String, :regex => /^(\d?[0-9]|[0-9][0-9])$/, :default => nil
47
+ attribute :proxy, :kind_of => String, :regex => /.*/, :default => nil
48
+ attribute :proxy_username, :kind_of => String, :regex => /.*/, :default => nil
49
+ attribute :proxy_password, :kind_of => String, :regex => /.*/, :default => nil
50
+ attribute :username, :kind_of => String, :regex => /.*/, :default => nil
51
+ attribute :password, :kind_of => String, :regex => /.*/, :default => nil
52
+ attribute :report_instanceid, :kind_of => [TrueClass, FalseClass], :default => nil
53
+ attribute :repositoryid, :kind_of => String, :regex => /.*/, :name_attribute => true
54
+ attribute :skip_if_unavailable, :kind_of => [TrueClass, FalseClass], :default => nil
55
+ attribute :source, :kind_of => String, :regex => /.*/, :default => nil
56
+ attribute :sslcacert, :kind_of => String, :regex => /.*/, :default => nil
57
+ attribute :sslclientcert, :kind_of => String, :regex => /.*/, :default => nil
58
+ attribute :sslclientkey, :kind_of => String, :regex => /.*/, :default => nil
59
+ attribute :sslverify, :kind_of => [TrueClass, FalseClass], :default => true
60
+ attribute :timeout, :kind_of => String, :regex => /^\d+$/, :default => nil
61
+
62
+ alias_method :url, :baseurl
63
+ alias_method :keyurl, :gpgkey
@@ -0,0 +1,251 @@
1
+ # This file was generated by Chef
2
+ # Do NOT modify this file by hand.
3
+
4
+ [main]
5
+ <% if @config.alwaysprompt %>
6
+ alwaysprompt=<%= @config.alwaysprompt %>
7
+ <% end %>
8
+ <% if @config.assumeyes %>
9
+ assumeyes=<%= @config.assumeyes %>
10
+ <% end %>
11
+ <% if @config.bandwidth %>
12
+ bandwidth=<%= @config.bandwidth %>
13
+ <% end %>
14
+ <% if @config.bugtracker_url %>
15
+ bugtracker_url=<%= @config.bugtracker_url %>
16
+ <% end %>
17
+ <% if @config.cachedir %>
18
+ cachedir=<%= @config.cachedir %>
19
+ <% end %>
20
+ <% if @config.clean_requirements_on_remove %>
21
+ clean_requirements_on_remove=<%= @config.clean_requirements_on_remove %>
22
+ <% end %>
23
+ <% if @config.color %>
24
+ color=<%= @config.color %>
25
+ <% end %>
26
+ <% if @config.color_list_available_downgrade %>
27
+ color_list_available_downgrade=<%= @config.color_list_available_downgrade %>
28
+ <% end %>
29
+ <% if @config.color_list_available_install %>
30
+ color_list_available_install=<%= @config.color_list_available_install %>
31
+ <% end %>
32
+ <% if @config.color_list_available_reinstall %>
33
+ color_list_available_reinstall=<%= @config.color_list_available_reinstall %>
34
+ <% end %>
35
+ <% if @config.color_list_available_upgrade %>
36
+ color_list_available_upgrade=<%= @config.color_list_available_upgrade %>
37
+ <% end %>
38
+ <% if @config.color_list_installed_extra %>
39
+ color_list_installed_extra=<%= @config.color_list_installed_extra %>
40
+ <% end %>
41
+ <% if @config.color_list_installed_newer %>
42
+ color_list_installed_newer=<%= @config.color_list_installed_newer %>
43
+ <% end %>
44
+ <% if @config.color_list_installed_older %>
45
+ color_list_installed_older=<%= @config.color_list_installed_older %>
46
+ <% end %>
47
+ <% if @config.color_list_installed_reinstall %>
48
+ color_list_installed_reinstall=<%= @config.color_list_installed_reinstall %>
49
+ <% end %>
50
+ <% if @config.color_search_match %>
51
+ color_search_match=<%= @config.color_search_match %>
52
+ <% end %>
53
+ <% if @config.color_update_installed %>
54
+ color_update_installed=<%= @config.color_update_installed %>
55
+ <% end %>
56
+ <% if @config.color_update_local %>
57
+ color_update_local=<%= @config.color_update_local %>
58
+ <% end %>
59
+ <% if @config.color_update_remote %>
60
+ color_update_remote=<%= @config.color_update_remote %>
61
+ <% end %>
62
+ <% if @config.commands %>
63
+ commands=<%= @config.commands %>
64
+ <% end %>
65
+ <% if @config.debuglevel %>
66
+ debuglevel=<%= @config.debuglevel %>
67
+ <% end %>
68
+ <% if @config.diskspacecheck %>
69
+ diskspacecheck=<%= @config.diskspacecheck %>
70
+ <% end %>
71
+ <% if @config.distroverpkg %>
72
+ distroverpkg=<%= @config.distroverpkg %>
73
+ <% end %>
74
+ <% if @config.enable_group_conditionals %>
75
+ enable_group_conditionals=1
76
+ <% end %>
77
+ <% if @config.errorlevel %>
78
+ errorlevel=<%= @config.errorlevel %>
79
+ <% end %>
80
+ <% if @config.exactarch %>
81
+ exactarch=1
82
+ <% else %>
83
+ exactarch=0
84
+ <% end %>
85
+ <% if @config.exclude %>
86
+ exclude=<%= @config.exclude %>
87
+ <% end %>
88
+ <% if @config.gpgcheck %>
89
+ gpgcheck=1
90
+ <% else %>
91
+ gpgcheck=0
92
+ <% end %>
93
+ <% if @config.group_package_types %>
94
+ group_package_types=<%= @config.group_package_types %>
95
+ <% end %>
96
+ <% if @config.groupremove_leaf_only %>
97
+ groupremove_leaf_only=<%= @config.groupremove_leaf_only %>
98
+ <% end %>
99
+ <% if @config.history_list_view %>
100
+ history_list_view=<%= @config.history_list_view %>
101
+ <% end %>
102
+ <% if @config.history_record %>
103
+ history_record=<%= @config.history_record %>
104
+ <% end %>
105
+ <% if @config.history_record_packages %>
106
+ history_record_packages=<%= @config.history_record_packages %>
107
+ <% end %>
108
+ <% if @config.http_caching %>
109
+ http_caching=<%= @config.http_caching %>
110
+ <% end %>
111
+ <% if @config.installonly_limit %>
112
+ installonly_limit=<%= @config.installonly_limit %>
113
+ <% end %>
114
+ <% if @config.installonlypkgs %>
115
+ installonlypkgs=<%= @config.installonlypkgs %>
116
+ <% end %>
117
+ <% if @config.installroot %>
118
+ installroot=<%= @config.installroot %>
119
+ <% end %>
120
+ <% if @config.keepalive %>
121
+ keepalive=<%= @config.keepalive %>
122
+ <% end %>
123
+ <% if @config.keepcache %>
124
+ keepcache=1
125
+ <% else %>
126
+ keepcache=0
127
+ <% end %>
128
+ <% if @config.kernelpkgnames %>
129
+ kernelpkgnames=<%= @config.kernelpkgnames %>
130
+ <% end %>
131
+ <% if @config.localpkg_gpgcheck %>
132
+ localpkg_gpgcheck=<%= @config.localpkg_gpgcheck %>
133
+ <% end %>
134
+ <% if @config.logfile %>
135
+ logfile=<%= @config.logfile %>
136
+ <% end %>
137
+ <% if @config.max_retries %>
138
+ max_retries=<%= @config.max_retries %>
139
+ <% end %>
140
+ <% if @config.mdpolicy %>
141
+ mdpolicy=<%= @config.mdpolicy %>
142
+ <% end %>
143
+ <% if @config.metadata_expire %>
144
+ metadata_expire=<%= @config.metadata_expire %>
145
+ <% end %>
146
+ <% if @config.mirrorlist_expire %>
147
+ mirrorlist_expire=<%= @config.mirrorlist_expire %>
148
+ <% end %>
149
+ <% if @config.multilib_policy %>
150
+ multilib_policy=<%= @config.multilib_policy %>
151
+ <% end %>
152
+ <% if @config.obsoletes %>
153
+ obsoletes=1
154
+ <% else %>
155
+ obsoletes=0
156
+ <% end %>
157
+ <% if @config.overwrite_groups %>
158
+ overwrite_groups=<%= @config.overwrite_groups %>
159
+ <% end %>
160
+ <% if @config.password %>
161
+ password=<%= @config.password %>
162
+ <% end %>
163
+ <% if @config.persistdir %>
164
+ persistdir=<%= @config.persistdir %>
165
+ <% end %>
166
+ <% if @config.pluginconfpath %>
167
+ pluginconfpath=<%= @config.pluginconfpath %>
168
+ <% end %>
169
+ <% if @config.pluginpath %>
170
+ pluginpath=<%= @config.pluginpath %>
171
+ <% end %>
172
+ <% if @config.plugins %>
173
+ plugins=1
174
+ <% else %>
175
+ plugins=0
176
+ <% end %>
177
+ <% if @config.protected_multilib %>
178
+ protected_multilib=<%= @config.protected_multilib %>
179
+ <% end %>
180
+ <% if @config.protected_packages %>
181
+ protected_packages=<%= @config.protected_packages %>
182
+ <% end %>
183
+ <% if @config.proxy %>
184
+ proxy=<%= @config.proxy %>
185
+ <% end %>
186
+ <% if @config.proxy_password %>
187
+ proxy_password=<%= @config.proxy_password %>
188
+ <% end %>
189
+ <% if @config.proxy_username %>
190
+ proxy_username=<%= @config.proxy_username %>
191
+ <% end %>
192
+ <% if @config.recent %>
193
+ recent=<%= @config.recent %>
194
+ <% end %>
195
+ <% if @config.releasever %>
196
+ releasever=<%= @config.releasever %>
197
+ <% end %>
198
+ <% if @config.repo_gpgcheck %>
199
+ repo_gpgcheck=<%= @config.repo_gpgcheck %>
200
+ <% end %>
201
+ <% if @config.reset_nice %>
202
+ reset_nice=<%= @config.reset_nice %>
203
+ <% end %>
204
+ <% if @config.rpmverbosity %>
205
+ rpmverbosity=<%= @config.rpmverbosity %>
206
+ <% end %>
207
+ <% if @config.showdupesfromrepos %>
208
+ showdupesfromrepos=<%= @config.showdupesfromrepos %>
209
+ <% end %>
210
+ <% if @config.skip_broken %>
211
+ skip_broken=<%= @config.skip_broken %>
212
+ <% end %>
213
+ <% if @config.ssl_check_cert_permissions %>
214
+ ssl_check_cert_permissions=<%= @config.ssl_check_cert_permissions %>
215
+ <% end %>
216
+ <% if @config.sslcacert %>
217
+ sslcacert=<%= @config.sslcacert %>
218
+ <% end %>
219
+ <% if @config.sslclientcert %>
220
+ sslclientcert=<%= @config.sslclientcert %>
221
+ <% end %>
222
+ <% if @config.sslclientkey %>
223
+ sslclientkey=<%= @config.sslclientkey %>
224
+ <% end %>
225
+ <% if @config.sslverify %>
226
+ sslverify=<%= @config.sslverify %>
227
+ <% end %>
228
+ <% if @config.syslog_device %>
229
+ syslog_device=<%= @config.syslog_device %>
230
+ <% end %>
231
+ <% if @config.syslog_facility %>
232
+ syslog_facility=<%= @config.syslog_facility %>
233
+ <% end %>
234
+ <% if @config.syslog_ident %>
235
+ syslog_ident=<%= @config.syslog_ident %>
236
+ <% end %>
237
+ <% if @config.throttle %>
238
+ throttle=<%= @config.throttle %>
239
+ <% end %>
240
+ <% if @config.timeout %>
241
+ timeout=<%= @config.timeout %>
242
+ <% end %>
243
+ <% if @config.tolerant %>
244
+ tolerant=<%= @config.tolerant %>
245
+ <% end %>
246
+ <% if @config.tsflags %>
247
+ tsflags=<%= @config.tsflags %>
248
+ <% end %>
249
+ <% if @config.username %>
250
+ username=<%= @config.username %>
251
+ <% end %>
@@ -0,0 +1,109 @@
1
+ # This file was generated by Chef
2
+ # Do NOT modify this file by hand.
3
+
4
+ [<%= @config.repositoryid %>]
5
+ name=<%= @config.description %>
6
+ <% if @config.baseurl %>
7
+ baseurl=<%= @config.baseurl %>
8
+ <% end %>
9
+ <% if @config.cost %>
10
+ cost=<%= @config.cost %>
11
+ <% end %>
12
+ <% if @config.enabled %>
13
+ enabled=1
14
+ <% else %>
15
+ enabled=0
16
+ <% end %>
17
+ <% if @config.enablegroups %>
18
+ enablegroups=1
19
+ <% end %>
20
+ <% if @config.exclude %>
21
+ exclude=<%= @config.exclude %>
22
+ <% end %>
23
+ <% if @config.failovermethod %>
24
+ failovermethod=<%= @config.failovermethod %>
25
+ <% end %>
26
+ <% if @config.fastestmirror_enabled %>
27
+ fastestmirror_enabled=<%= @config.fastestmirror_enabled %>
28
+ <% end %>
29
+ <% if @config.gpgcheck %>
30
+ gpgcheck=1
31
+ <% else %>
32
+ gpgcheck=0
33
+ <% end %>
34
+ <% if @config.gpgkey %>
35
+ gpgkey=<%= case @config.gpgkey
36
+ when Array
37
+ @config.gpgkey.join("\n ")
38
+ else
39
+ @config.gpgkey
40
+ end %>
41
+ <% end -%>
42
+ <% if @config.http_caching %>
43
+ http_caching=<%= @config.http_caching %>
44
+ <% end %>
45
+ <% if @config.include_config %>
46
+ include=<%= @config.include_config %>
47
+ <% end %>
48
+ <% if @config.includepkgs %>
49
+ includepkgs=<%= @config.includepkgs %>
50
+ <% end %>
51
+ <% if @config.keepalive %>
52
+ keepalive=1
53
+ <% end %>
54
+ <% if @config.metadata_expire %>
55
+ metadata_expire=<%= @config.metadata_expire %>
56
+ <% end %>
57
+ <% if @config.mirrorlist %>
58
+ mirrorlist=<%= @config.mirrorlist %>
59
+ <% end %>
60
+ <% if @config.mirror_expire %>
61
+ mirror_expire=<%= @config.mirror_expire %>
62
+ <% end %>
63
+ <% if @config.mirrorlist_expire %>
64
+ mirrorlist_expire=<%= @config.mirrorlist_expire %>
65
+ <% end %>
66
+ <% if @config.priority %>
67
+ priority=<%= @config.priority %>
68
+ <% end %>
69
+ <% if @config.proxy %>
70
+ proxy=<%= @config.proxy %>
71
+ <% end %>
72
+ <% if @config.proxy_username %>
73
+ proxy_username=<%= @config.proxy_username %>
74
+ <% end %>
75
+ <% if @config.proxy_password %>
76
+ proxy_password=<%= @config.proxy_password %>
77
+ <% end %>
78
+ <% if @config.username %>
79
+ username=<%= @config.username %>
80
+ <% end %>
81
+ <% if @config.password %>
82
+ password=<%= @config.password %>
83
+ <% end %>
84
+ <% if @config.max_retries %>
85
+ retries=<%= @config.max_retries %>
86
+ <% end %>
87
+ <% if @config.report_instanceid %>
88
+ report_instanceid=<%= @config.report_instanceid %>
89
+ <% end %>
90
+ <% if @config.skip_if_unavailable %>
91
+ skip_if_unavailable=1
92
+ <% end %>
93
+ <% if @config.sslcacert %>
94
+ sslcacert=<%= @config.sslcacert %>
95
+ <% end %>
96
+ <% if @config.sslclientcert %>
97
+ sslclientcert=<%= @config.sslclientcert %>
98
+ <% end %>
99
+ <% if @config.sslclientkey %>
100
+ sslclientkey=<%= @config.sslclientkey %>
101
+ <% end %>
102
+ <% if @config.sslverify %>
103
+ sslverify=1
104
+ <% else %>
105
+ sslverify=0
106
+ <% end %>
107
+ <% if @config.timeout %>
108
+ timeout=<%= @config.timeout %>
109
+ <% end %>
@@ -0,0 +1,3 @@
1
+ module MadScience
2
+ VERSION = "0.0.1"
3
+ end
data/lib/madscience.rb ADDED
@@ -0,0 +1,5 @@
1
+ require "madscience/version"
2
+
3
+ module MadScience
4
+ # Your code goes here...
5
+ end
@@ -0,0 +1,44 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'madscience/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "madscience"
8
+ spec.version = MadScience::VERSION
9
+ spec.authors = ["Noah Gibbs"]
10
+ spec.email = ["noah_gibbs@yahoo.com"]
11
+ spec.summary = %q{Install the current versions of the MadScience stack.}
12
+ spec.description = <<DESC
13
+ Install the current versions of the MadScience stack. This stack includes
14
+ Vagrant, Chef and Capistrano - tools to configure a server, simulate it and
15
+ install software to it, as well as to allocate staging and production servers.
16
+ DESC
17
+ spec.homepage = "http://rubymadscience.com"
18
+ spec.license = "MIT"
19
+
20
+ spec.files = `git ls-files -z`.split("\x0") +
21
+ Dir.glob("cookbooks/**/*")
22
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
23
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
24
+ spec.require_paths = ["lib"]
25
+
26
+ # Need Bundler to lock down versions, but MadScience doesn't
27
+ # depend on a specific Bundler version.
28
+ spec.add_runtime_dependency 'bundler', '~> 1.5'
29
+
30
+ spec.add_runtime_dependency 'knife-solo', '0.4.2'
31
+ spec.add_runtime_dependency 'librarian-chef', '0.0.3'
32
+ spec.add_runtime_dependency 'chef', '11.12.8'
33
+ spec.add_runtime_dependency 'capistrano', '3.2.1'
34
+ spec.add_runtime_dependency 'capistrano-rails', '1.1.1'
35
+ spec.add_runtime_dependency 'capistrano-bundler', '1.1.2'
36
+ spec.add_runtime_dependency 'capistrano-rvm', '0.1.1'
37
+ spec.add_runtime_dependency 'sshkit', '1.5.1'
38
+
39
+ # Several other components of the stack like Vagrant and Chef
40
+ # need to be used but can't be installed via RubyGems.
41
+ # That's part of why this gem exists.
42
+
43
+ spec.add_development_dependency 'rake', '~>10.3'
44
+ end
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ librarian-chef install
4
+ rm madscience-*.gem
5
+ gem build madscience.gemspec
6
+ gem push madscience-*.gem
data/node-data.json ADDED
@@ -0,0 +1,3 @@
1
+ {
2
+ "run_list": "madscience-vagrant-cookbook"
3
+ }
@@ -0,0 +1,13 @@
1
+ madscience-vagrant-cookbook CHANGELOG
2
+ =====================================
3
+
4
+ This file is used to list changes made in each version of the madscience-vagrant-cookbook cookbook.
5
+
6
+ 0.1.0
7
+ -----
8
+ - [your_name] - Initial release of madscience-vagrant-cookbook
9
+
10
+ - - -
11
+ Check the [Markdown Syntax Guide](http://daringfireball.net/projects/markdown/syntax) for help with Markdown.
12
+
13
+ The [Github Flavored Markdown page](http://github.github.com/github-flavored-markdown/) describes the differences between markdown on github and standard markdown.
@@ -0,0 +1,53 @@
1
+ madscience-vagrant-cookbook Cookbook
2
+ ====================================
3
+ This cookbook sets up your local development machine for the MadScience deploy
4
+ stack. This includes Chef, Vagrant, Capistrano and many ancillary tools.
5
+
6
+ Requirements
7
+ ------------
8
+ The cookbook requires Joshua Timberman's Vagrant and VirtualBox cookbooks.
9
+ However, this will normally only ever be used from inside the MadScience gem,
10
+ so those requirements should be met trivially.
11
+
12
+ Usage
13
+ -----
14
+ #### madscience-vagrant-cookbook::default
15
+
16
+ Normally you should use this via the madscience gem. Then run the "madscience
17
+ setup" command with administrative privileges. On Mac or Linux, that means
18
+ you'll type "sudo madscience setup" and then give your password if necessary.
19
+
20
+ Contributing
21
+ ------------
22
+
23
+ 1. Fork the repository on Github
24
+ 2. Create a named feature branch (like `add_component_x`)
25
+ 3. Write your change
26
+ 4. Write tests for your change (if applicable)
27
+ 5. Run the tests, ensuring they all pass
28
+ 6. Submit a Pull Request using Github
29
+
30
+ License and Authors
31
+ -------------------
32
+ Authors: Noah Gibbs (the.codefolio.guy@gmail.com)
33
+
34
+ Attributes
35
+ ----------
36
+ TODO: List your cookbook attributes here.
37
+
38
+ e.g.
39
+ #### madscience-vagrant-cookbook::default
40
+ <table>
41
+ <tr>
42
+ <th>Key</th>
43
+ <th>Type</th>
44
+ <th>Description</th>
45
+ <th>Default</th>
46
+ </tr>
47
+ <tr>
48
+ <td><tt>['madscience-vagrant-cookbook']['bacon']</tt></td>
49
+ <td>Boolean</td>
50
+ <td>whether to include bacon</td>
51
+ <td><tt>true</tt></td>
52
+ </tr>
53
+ </table>