corl 0.4.29 → 0.5.0

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 (230) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +3 -3
  3. data/Gemfile.lock +16 -13
  4. data/VERSION +1 -1
  5. data/bin/corl +21 -1
  6. data/bootstrap/os/ubuntu/00_base.sh +2 -2
  7. data/bootstrap/os/ubuntu/06_puppet.sh +7 -12
  8. data/bootstrap/os/ubuntu/09_nucleon.sh +1 -1
  9. data/bootstrap/os/ubuntu/10_corl.sh +1 -4
  10. data/corl.gemspec +193 -40
  11. data/lib/CORL/builder/identity.rb +68 -0
  12. data/lib/CORL/builder/package.rb +75 -0
  13. data/lib/CORL/configuration/file.rb +5 -5
  14. data/lib/CORL/machine/{aws.rb → AWS.rb} +2 -2
  15. data/lib/CORL/machine/physical.rb +1 -1
  16. data/lib/CORL/machine/rackspace.rb +1 -1
  17. data/lib/CORL/machine/vagrant.rb +2 -2
  18. data/lib/CORL/network/{default.rb → CORL.rb} +1 -1
  19. data/lib/CORL/node/{aws.rb → AWS.rb} +1 -1
  20. data/lib/CORL/node/local.rb +1 -1
  21. data/lib/CORL/node/vagrant.rb +7 -2
  22. data/lib/CORL/provisioner/puppetnode.rb +139 -131
  23. data/lib/core/build.rb +112 -0
  24. data/lib/core/facade.rb +48 -8
  25. data/lib/core/mixin/builder.rb +158 -0
  26. data/lib/core/mixin/lookup.rb +51 -20
  27. data/lib/core/mixin/machine/ssh.rb +16 -4
  28. data/lib/core/plugin/builder.rb +49 -0
  29. data/lib/core/plugin/{action.rb → cloud_action.rb} +22 -16
  30. data/lib/core/plugin/configuration.rb +9 -3
  31. data/lib/core/plugin/fog_machine.rb +3 -3
  32. data/lib/core/plugin/fog_node.rb +1 -1
  33. data/lib/core/plugin/machine.rb +2 -2
  34. data/lib/core/plugin/network.rb +39 -10
  35. data/lib/core/plugin/node.rb +95 -35
  36. data/lib/core/plugin/provisioner.rb +133 -113
  37. data/lib/core/util/puppet/resource.rb +1 -1
  38. data/lib/core/vagrant/actions/delete_cache.rb +7 -1
  39. data/lib/core/vagrant/commands/launcher.rb +2 -2
  40. data/lib/core/vagrant/config.rb +29 -2
  41. data/lib/corl.rb +9 -8
  42. data/lib/facter/corl_config_ready.rb +1 -1
  43. data/lib/facter/vagrant_exists.rb +1 -1
  44. data/lib/nucleon/action/cloud/create.rb +51 -0
  45. data/lib/nucleon/action/cloud/hiera.rb +61 -0
  46. data/lib/{CORL/action → nucleon/action/cloud}/images.rb +11 -2
  47. data/lib/nucleon/action/cloud/inspect.rb +47 -0
  48. data/lib/{CORL/action → nucleon/action/cloud}/machines.rb +11 -2
  49. data/lib/{CORL/action → nucleon/action/cloud}/regions.rb +11 -2
  50. data/lib/{CORL/action → nucleon/action/cloud}/vagrantfile.rb +11 -2
  51. data/lib/{CORL/action/ip.rb → nucleon/action/node/IP.rb} +11 -2
  52. data/lib/{CORL/action/ssh.rb → nucleon/action/node/SSH.rb} +15 -7
  53. data/lib/{CORL/action → nucleon/action/node}/authorize.rb +11 -2
  54. data/lib/{CORL/action → nucleon/action/node}/bootstrap.rb +13 -4
  55. data/lib/nucleon/action/node/build.rb +49 -0
  56. data/lib/{CORL/action → nucleon/action/node}/destroy.rb +14 -5
  57. data/lib/{CORL/action → nucleon/action/node}/exec.rb +11 -2
  58. data/lib/{CORL/action → nucleon/action/node}/facts.rb +12 -3
  59. data/lib/{CORL/action → nucleon/action/node}/image.rb +13 -4
  60. data/lib/nucleon/action/node/keypair.rb +85 -0
  61. data/lib/{CORL/action → nucleon/action/node}/lookup.rb +13 -4
  62. data/lib/{CORL/action → nucleon/action/node}/provision.rb +30 -8
  63. data/lib/{CORL/action → nucleon/action/node}/reboot.rb +13 -4
  64. data/lib/{CORL/action → nucleon/action/node}/revoke.rb +11 -2
  65. data/lib/{CORL/action → nucleon/action/node}/seed.rb +13 -4
  66. data/lib/{CORL/action → nucleon/action/node}/spawn.rb +19 -9
  67. data/lib/{CORL/action → nucleon/action/node}/start.rb +13 -4
  68. data/lib/{CORL/action → nucleon/action/node}/stop.rb +13 -4
  69. data/lib/{CORL → nucleon}/event/puppet.rb +2 -2
  70. data/lib/{CORL → nucleon}/template/environment.rb +2 -2
  71. data/lib/puppet/indirector/corl.rb +7 -4
  72. data/lib/puppet/parser/functions/corl_resources.rb +1 -0
  73. data/lib/puppet/parser/functions/global_array.rb +2 -1
  74. data/lib/puppet/parser/functions/global_hash.rb +2 -1
  75. data/lib/puppet/parser/functions/global_param.rb +2 -1
  76. data/lib/puppet/parser/functions/module_array.rb +2 -1
  77. data/lib/puppet/parser/functions/module_hash.rb +3 -2
  78. data/lib/puppet/parser/functions/module_param.rb +3 -2
  79. data/lib/puppet/parser/functions/render.rb +1 -0
  80. data/locales/en.yml +80 -0
  81. data/rdoc/site/0.4.29/CORL/Action/Authorize.html +485 -0
  82. data/rdoc/site/0.4.29/CORL/Action/Bootstrap.html +546 -0
  83. data/rdoc/site/0.4.29/CORL/Action/Build.html +396 -0
  84. data/rdoc/site/0.4.29/CORL/Action/Destroy.html +515 -0
  85. data/rdoc/site/0.4.29/CORL/Action/Exec.html +472 -0
  86. data/rdoc/site/0.4.29/CORL/Action/Facts.html +398 -0
  87. data/rdoc/site/0.4.29/CORL/Action/Image.html +515 -0
  88. data/rdoc/site/0.4.29/CORL/Action/Images.html +514 -0
  89. data/rdoc/site/0.4.29/CORL/Action/Ip.html +395 -0
  90. data/rdoc/site/0.4.29/CORL/Action/Keypair.html +494 -0
  91. data/rdoc/site/0.4.29/CORL/Action/Lookup.html +474 -0
  92. data/rdoc/site/0.4.29/CORL/Action/Machines.html +509 -0
  93. data/rdoc/site/0.4.29/CORL/Action/Provision.html +456 -0
  94. data/rdoc/site/0.4.29/CORL/Action/Reboot.html +515 -0
  95. data/rdoc/site/0.4.29/CORL/Action/Regions.html +509 -0
  96. data/rdoc/site/0.4.29/CORL/Action/Revoke.html +483 -0
  97. data/rdoc/site/0.4.29/CORL/Action/Seed.html +544 -0
  98. data/rdoc/site/0.4.29/CORL/Action/Spawn.html +616 -0
  99. data/rdoc/site/0.4.29/CORL/Action/Ssh.html +526 -0
  100. data/rdoc/site/0.4.29/CORL/Action/Start.html +515 -0
  101. data/rdoc/site/0.4.29/CORL/Action/Stop.html +515 -0
  102. data/rdoc/site/0.4.29/CORL/Action/Vagrantfile.html +457 -0
  103. data/rdoc/site/0.4.29/CORL/Action.html +360 -0
  104. data/rdoc/site/0.4.29/CORL/Configuration/File.html +1128 -0
  105. data/rdoc/site/0.4.29/CORL/Configuration.html +339 -0
  106. data/rdoc/site/0.4.29/CORL/Errors.html +339 -0
  107. data/rdoc/site/0.4.29/CORL/Event/Puppet.html +673 -0
  108. data/rdoc/site/0.4.29/CORL/Event.html +339 -0
  109. data/rdoc/site/0.4.29/CORL/Facade.html +742 -0
  110. data/rdoc/site/0.4.29/CORL/Machine/Aws.html +733 -0
  111. data/rdoc/site/0.4.29/CORL/Machine/Fog.html +1269 -0
  112. data/rdoc/site/0.4.29/CORL/Machine/Physical.html +1039 -0
  113. data/rdoc/site/0.4.29/CORL/Machine/Rackspace.html +514 -0
  114. data/rdoc/site/0.4.29/CORL/Machine/Vagrant.html +1300 -0
  115. data/rdoc/site/0.4.29/CORL/Machine.html +343 -0
  116. data/rdoc/site/0.4.29/CORL/Mixin/Action/Keypair.html +572 -0
  117. data/rdoc/site/0.4.29/CORL/Mixin/Action.html +339 -0
  118. data/rdoc/site/0.4.29/CORL/Mixin/Lookup.html +954 -0
  119. data/rdoc/site/0.4.29/CORL/Mixin/Machine/SSH.html +643 -0
  120. data/rdoc/site/0.4.29/CORL/Mixin/Machine.html +339 -0
  121. data/rdoc/site/0.4.29/CORL/Mixin/Macro/NetworkSettings.html +464 -0
  122. data/rdoc/site/0.4.29/CORL/Mixin/Macro.html +339 -0
  123. data/rdoc/site/0.4.29/CORL/Mixin.html +342 -0
  124. data/rdoc/site/0.4.29/CORL/Network/Default.html +391 -0
  125. data/rdoc/site/0.4.29/CORL/Network.html +339 -0
  126. data/rdoc/site/0.4.29/CORL/Node/Aws.html +716 -0
  127. data/rdoc/site/0.4.29/CORL/Node/Fog.html +1192 -0
  128. data/rdoc/site/0.4.29/CORL/Node/Local.html +424 -0
  129. data/rdoc/site/0.4.29/CORL/Node/Rackspace.html +709 -0
  130. data/rdoc/site/0.4.29/CORL/Node/Vagrant.html +1451 -0
  131. data/rdoc/site/0.4.29/CORL/Node.html +343 -0
  132. data/rdoc/site/0.4.29/CORL/Plugin/CloudAction.html +810 -0
  133. data/rdoc/site/0.4.29/CORL/Plugin.html +339 -0
  134. data/rdoc/site/0.4.29/CORL/Provisioner/Puppetnode.html +1095 -0
  135. data/rdoc/site/0.4.29/CORL/Provisioner.html +339 -0
  136. data/rdoc/site/0.4.29/CORL/Template/Environment.html +528 -0
  137. data/rdoc/site/0.4.29/CORL/Template.html +339 -0
  138. data/rdoc/site/0.4.29/CORL/Util/Puppet/Resource.html +1038 -0
  139. data/rdoc/site/0.4.29/CORL/Util/Puppet/ResourceGroup.html +920 -0
  140. data/rdoc/site/0.4.29/CORL/Util/Puppet.html +1087 -0
  141. data/rdoc/site/0.4.29/CORL/Util.html +341 -0
  142. data/rdoc/site/0.4.29/CORL/Vagrant/Config.html +896 -0
  143. data/rdoc/site/0.4.29/CORL/Vagrant.html +418 -0
  144. data/rdoc/site/0.4.29/CORL.html +465 -0
  145. data/rdoc/site/0.4.29/Facter/Util/Loader.html +396 -0
  146. data/rdoc/site/0.4.29/Facter/Util.html +339 -0
  147. data/rdoc/site/0.4.29/Facter.html +339 -0
  148. data/rdoc/site/0.4.29/Fog/Compute/AWS/Server.html +423 -0
  149. data/rdoc/site/0.4.29/Fog/Compute/AWS.html +345 -0
  150. data/rdoc/site/0.4.29/Fog/Compute/RackspaceV2/Server.html +408 -0
  151. data/rdoc/site/0.4.29/Fog/Compute/RackspaceV2.html +345 -0
  152. data/rdoc/site/0.4.29/Fog/Compute.html +340 -0
  153. data/rdoc/site/0.4.29/Fog.html +340 -0
  154. data/rdoc/site/0.4.29/Hiera/Backend.html +422 -0
  155. data/rdoc/site/0.4.29/Hiera/Corl_logger.html +449 -0
  156. data/rdoc/site/0.4.29/Hiera.html +346 -0
  157. data/rdoc/site/0.4.29/Nucleon/Config.html +357 -0
  158. data/rdoc/site/0.4.29/Nucleon/Plugin/Base.html +345 -0
  159. data/rdoc/site/0.4.29/Nucleon/Plugin/Configuration.html +1213 -0
  160. data/rdoc/site/0.4.29/Nucleon/Plugin/Machine.html +1279 -0
  161. data/rdoc/site/0.4.29/Nucleon/Plugin/Network.html +1425 -0
  162. data/rdoc/site/0.4.29/Nucleon/Plugin/Node.html +3715 -0
  163. data/rdoc/site/0.4.29/Nucleon/Plugin/Provisioner.html +1297 -0
  164. data/rdoc/site/0.4.29/Nucleon/Plugin.html +344 -0
  165. data/rdoc/site/0.4.29/Nucleon.html +344 -0
  166. data/rdoc/site/0.4.29/Object.html +358 -0
  167. data/rdoc/site/0.4.29/Puppet/DataBinding/Corl.html +345 -0
  168. data/rdoc/site/0.4.29/Puppet/DataBinding.html +338 -0
  169. data/rdoc/site/0.4.29/Puppet/Indirector/Corl.html +454 -0
  170. data/rdoc/site/0.4.29/Puppet/Indirector.html +338 -0
  171. data/rdoc/site/0.4.29/Puppet/Parser/Functions.html +480 -0
  172. data/rdoc/site/0.4.29/Puppet/Parser.html +338 -0
  173. data/rdoc/site/0.4.29/Puppet.html +338 -0
  174. data/rdoc/site/0.4.29/README_rdoc.html +340 -0
  175. data/rdoc/site/0.4.29/Vagrant/Config/Loader.html +399 -0
  176. data/rdoc/site/0.4.29/Vagrant/Config.html +339 -0
  177. data/rdoc/site/0.4.29/Vagrant/Vagrantfile.html +392 -0
  178. data/rdoc/site/0.4.29/Vagrant.html +346 -0
  179. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Action/DeleteCache.html +396 -0
  180. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Action/InitKeys.html +408 -0
  181. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Action/LinkNetwork.html +406 -0
  182. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Action.html +341 -0
  183. data/rdoc/site/0.4.29/VagrantPlugins/CORL/BaseAction.html +491 -0
  184. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Command/Launcher.html +533 -0
  185. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Command.html +339 -0
  186. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Config/CORL.html +732 -0
  187. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Config.html +339 -0
  188. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Plugin.html +345 -0
  189. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Provisioner/CORL.html +536 -0
  190. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Provisioner.html +339 -0
  191. data/rdoc/site/0.4.29/VagrantPlugins/CORL.html +346 -0
  192. data/rdoc/site/0.4.29/VagrantPlugins.html +346 -0
  193. data/rdoc/site/0.4.29/created.rid +96 -0
  194. data/rdoc/site/0.4.29/images/add.png +0 -0
  195. data/rdoc/site/0.4.29/images/brick.png +0 -0
  196. data/rdoc/site/0.4.29/images/brick_link.png +0 -0
  197. data/rdoc/site/0.4.29/images/bug.png +0 -0
  198. data/rdoc/site/0.4.29/images/bullet_black.png +0 -0
  199. data/rdoc/site/0.4.29/images/bullet_toggle_minus.png +0 -0
  200. data/rdoc/site/0.4.29/images/bullet_toggle_plus.png +0 -0
  201. data/rdoc/site/0.4.29/images/date.png +0 -0
  202. data/rdoc/site/0.4.29/images/delete.png +0 -0
  203. data/rdoc/site/0.4.29/images/find.png +0 -0
  204. data/rdoc/site/0.4.29/images/loadingAnimation.gif +0 -0
  205. data/rdoc/site/0.4.29/images/macFFBgHack.png +0 -0
  206. data/rdoc/site/0.4.29/images/package.png +0 -0
  207. data/rdoc/site/0.4.29/images/page_green.png +0 -0
  208. data/rdoc/site/0.4.29/images/page_white_text.png +0 -0
  209. data/rdoc/site/0.4.29/images/page_white_width.png +0 -0
  210. data/rdoc/site/0.4.29/images/plugin.png +0 -0
  211. data/rdoc/site/0.4.29/images/ruby.png +0 -0
  212. data/rdoc/site/0.4.29/images/tag_blue.png +0 -0
  213. data/rdoc/site/0.4.29/images/tag_green.png +0 -0
  214. data/rdoc/site/0.4.29/images/transparent.png +0 -0
  215. data/rdoc/site/0.4.29/images/wrench.png +0 -0
  216. data/rdoc/site/0.4.29/images/wrench_orange.png +0 -0
  217. data/rdoc/site/0.4.29/images/zoom.png +0 -0
  218. data/rdoc/site/0.4.29/index.html +339 -0
  219. data/rdoc/site/0.4.29/js/darkfish.js +155 -0
  220. data/rdoc/site/0.4.29/js/jquery.js +18 -0
  221. data/rdoc/site/0.4.29/js/navigation.js +142 -0
  222. data/rdoc/site/0.4.29/js/search.js +94 -0
  223. data/rdoc/site/0.4.29/js/search_index.js +1 -0
  224. data/rdoc/site/0.4.29/js/searcher.js +228 -0
  225. data/rdoc/site/0.4.29/rdoc.css +543 -0
  226. data/rdoc/site/0.4.29/table_of_contents.html +1561 -0
  227. metadata +192 -45
  228. data/lib/CORL/action/build.rb +0 -22
  229. data/lib/CORL/action/keypair.rb +0 -56
  230. data/lib/core/mod/facter_loader.rb +0 -15
@@ -0,0 +1,1297 @@
1
+ <!DOCTYPE html>
2
+
3
+ <html>
4
+ <head>
5
+ <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
6
+
7
+ <title>class Nucleon::Plugin::Provisioner - corl 0.4.29</title>
8
+
9
+ <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet">
10
+
11
+ <script type="text/javascript">
12
+ var rdoc_rel_prefix = "../../";
13
+ </script>
14
+
15
+ <script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
16
+ <script type="text/javascript" charset="utf-8" src="../../js/navigation.js"></script>
17
+ <script type="text/javascript" charset="utf-8" src="../../js/search_index.js"></script>
18
+ <script type="text/javascript" charset="utf-8" src="../../js/search.js"></script>
19
+ <script type="text/javascript" charset="utf-8" src="../../js/searcher.js"></script>
20
+ <script type="text/javascript" charset="utf-8" src="../../js/darkfish.js"></script>
21
+
22
+
23
+ <body id="top" class="class">
24
+ <nav id="metadata">
25
+ <nav id="home-section" class="section">
26
+ <h3 class="section-header">
27
+ <a href="../../index.html">Home</a>
28
+ <a href="../../table_of_contents.html#classes">Classes</a>
29
+ <a href="../../table_of_contents.html#methods">Methods</a>
30
+ </h3>
31
+ </nav>
32
+
33
+
34
+ <nav id="search-section" class="section project-section" class="initially-hidden">
35
+ <form action="#" method="get" accept-charset="utf-8">
36
+ <h3 class="section-header">
37
+ <input type="text" name="search" placeholder="Search" id="search-field"
38
+ title="Type to search, Up and Down to navigate, Enter to load">
39
+ </h3>
40
+ </form>
41
+
42
+ <ul id="search-results" class="initially-hidden"></ul>
43
+ </nav>
44
+
45
+
46
+ <div id="file-metadata">
47
+ <nav id="file-list-section" class="section">
48
+ <h3 class="section-header">Defined In</h3>
49
+ <ul>
50
+ <li>lib/core/plugin/provisioner.rb
51
+ </ul>
52
+ </nav>
53
+
54
+
55
+ </div>
56
+
57
+ <div id="class-metadata">
58
+
59
+ <nav id="parent-class-section" class="section">
60
+ <h3 class="section-header">Parent</h3>
61
+
62
+ <p class="link">CORL.plugin_class(:base)
63
+
64
+ </nav>
65
+
66
+ <!-- Included Modules -->
67
+ <nav id="includes-section" class="section">
68
+ <h3 class="section-header">Included Modules</h3>
69
+
70
+ <ul class="link-list">
71
+
72
+
73
+ <li><span class="include">Parallel</span>
74
+
75
+
76
+ </ul>
77
+ </nav>
78
+
79
+ <!-- Method Quickref -->
80
+ <nav id="method-list-section" class="section">
81
+ <h3 class="section-header">Methods</h3>
82
+
83
+ <ul class="link-list">
84
+
85
+ <li><a href="#method-c-build_info">::build_info</a>
86
+
87
+ <li><a href="#method-c-translate">::translate</a>
88
+
89
+ <li><a href="#method-c-translate_reference">::translate_reference</a>
90
+
91
+ <li><a href="#method-i-build">#build</a>
92
+
93
+ <li><a href="#method-i-build_directory">#build_directory</a>
94
+
95
+ <li><a href="#method-i-build_info">#build_info</a>
96
+
97
+ <li><a href="#method-i-build_locations">#build_locations</a>
98
+
99
+ <li><a href="#method-i-build_profiles">#build_profiles</a>
100
+
101
+ <li><a href="#method-i-concatenate">#concatenate</a>
102
+
103
+ <li><a href="#method-i-directory">#directory</a>
104
+
105
+ <li><a href="#method-i-directory-3D">#directory=</a>
106
+
107
+ <li><a href="#method-i-find_profiles">#find_profiles</a>
108
+
109
+ <li><a href="#method-i-gateway">#gateway</a>
110
+
111
+ <li><a href="#method-i-gateway-3D">#gateway=</a>
112
+
113
+ <li><a href="#method-i-id">#id</a>
114
+
115
+ <li><a href="#method-i-initialized-3F">#initialized?</a>
116
+
117
+ <li><a href="#method-i-lookup">#lookup</a>
118
+
119
+ <li><a href="#method-i-normalize">#normalize</a>
120
+
121
+ <li><a href="#method-i-packages">#packages</a>
122
+
123
+ <li><a href="#method-i-profiles">#profiles</a>
124
+
125
+ <li><a href="#method-i-provision">#provision</a>
126
+
127
+ <li><a href="#method-i-register">#register</a>
128
+
129
+ <li><a href="#method-i-supported_profiles">#supported_profiles</a>
130
+
131
+ <li><a href="#method-i-translate_reference">#translate_reference</a>
132
+
133
+ </ul>
134
+ </nav>
135
+
136
+ </div>
137
+
138
+ <div id="project-metadata">
139
+ <nav id="fileindex-section" class="section project-section">
140
+ <h3 class="section-header">Pages</h3>
141
+
142
+ <ul>
143
+
144
+ <li class="file"><a href="../../README_rdoc.html">README</a>
145
+
146
+ </ul>
147
+ </nav>
148
+
149
+ <nav id="classindex-section" class="section project-section">
150
+ <h3 class="section-header">Class and Module Index</h3>
151
+
152
+ <ul class="link-list">
153
+
154
+ <li><a href="../../CORL.html">CORL</a>
155
+
156
+ <li><a href="../../CORL/Action.html">CORL::Action</a>
157
+
158
+ <li><a href="../../CORL/Action/Authorize.html">CORL::Action::Authorize</a>
159
+
160
+ <li><a href="../../CORL/Action/Bootstrap.html">CORL::Action::Bootstrap</a>
161
+
162
+ <li><a href="../../CORL/Action/Build.html">CORL::Action::Build</a>
163
+
164
+ <li><a href="../../CORL/Action/Destroy.html">CORL::Action::Destroy</a>
165
+
166
+ <li><a href="../../CORL/Action/Exec.html">CORL::Action::Exec</a>
167
+
168
+ <li><a href="../../CORL/Action/Facts.html">CORL::Action::Facts</a>
169
+
170
+ <li><a href="../../CORL/Action/Image.html">CORL::Action::Image</a>
171
+
172
+ <li><a href="../../CORL/Action/Images.html">CORL::Action::Images</a>
173
+
174
+ <li><a href="../../CORL/Action/Ip.html">CORL::Action::Ip</a>
175
+
176
+ <li><a href="../../CORL/Action/Keypair.html">CORL::Action::Keypair</a>
177
+
178
+ <li><a href="../../CORL/Action/Lookup.html">CORL::Action::Lookup</a>
179
+
180
+ <li><a href="../../CORL/Action/Machines.html">CORL::Action::Machines</a>
181
+
182
+ <li><a href="../../CORL/Action/Provision.html">CORL::Action::Provision</a>
183
+
184
+ <li><a href="../../CORL/Action/Reboot.html">CORL::Action::Reboot</a>
185
+
186
+ <li><a href="../../CORL/Action/Regions.html">CORL::Action::Regions</a>
187
+
188
+ <li><a href="../../CORL/Action/Revoke.html">CORL::Action::Revoke</a>
189
+
190
+ <li><a href="../../CORL/Action/Seed.html">CORL::Action::Seed</a>
191
+
192
+ <li><a href="../../CORL/Action/Spawn.html">CORL::Action::Spawn</a>
193
+
194
+ <li><a href="../../CORL/Action/Ssh.html">CORL::Action::Ssh</a>
195
+
196
+ <li><a href="../../CORL/Action/Start.html">CORL::Action::Start</a>
197
+
198
+ <li><a href="../../CORL/Action/Stop.html">CORL::Action::Stop</a>
199
+
200
+ <li><a href="../../CORL/Action/Vagrantfile.html">CORL::Action::Vagrantfile</a>
201
+
202
+ <li><a href="../../CORL/Configuration.html">CORL::Configuration</a>
203
+
204
+ <li><a href="../../CORL/Configuration/File.html">CORL::Configuration::File</a>
205
+
206
+ <li><a href="../../CORL/Errors.html">CORL::Errors</a>
207
+
208
+ <li><a href="../../CORL/Event.html">CORL::Event</a>
209
+
210
+ <li><a href="../../CORL/Event/Puppet.html">CORL::Event::Puppet</a>
211
+
212
+ <li><a href="../../CORL/Facade.html">CORL::Facade</a>
213
+
214
+ <li><a href="../../CORL/Machine.html">CORL::Machine</a>
215
+
216
+ <li><a href="../../CORL/Machine/Aws.html">CORL::Machine::Aws</a>
217
+
218
+ <li><a href="../../CORL/Machine/Fog.html">CORL::Machine::Fog</a>
219
+
220
+ <li><a href="../../CORL/Machine/Physical.html">CORL::Machine::Physical</a>
221
+
222
+ <li><a href="../../CORL/Machine/Rackspace.html">CORL::Machine::Rackspace</a>
223
+
224
+ <li><a href="../../CORL/Machine/Vagrant.html">CORL::Machine::Vagrant</a>
225
+
226
+ <li><a href="../../CORL/Mixin.html">CORL::Mixin</a>
227
+
228
+ <li><a href="../../CORL/Mixin/Action.html">CORL::Mixin::Action</a>
229
+
230
+ <li><a href="../../CORL/Mixin/Action/Keypair.html">CORL::Mixin::Action::Keypair</a>
231
+
232
+ <li><a href="../../CORL/Mixin/Lookup.html">CORL::Mixin::Lookup</a>
233
+
234
+ <li><a href="../../CORL/Mixin/Machine.html">CORL::Mixin::Machine</a>
235
+
236
+ <li><a href="../../CORL/Mixin/Machine/SSH.html">CORL::Mixin::Machine::SSH</a>
237
+
238
+ <li><a href="../../CORL/Mixin/Macro.html">CORL::Mixin::Macro</a>
239
+
240
+ <li><a href="../../CORL/Mixin/Macro/NetworkSettings.html">CORL::Mixin::Macro::NetworkSettings</a>
241
+
242
+ <li><a href="../../CORL/Network.html">CORL::Network</a>
243
+
244
+ <li><a href="../../CORL/Network/Default.html">CORL::Network::Default</a>
245
+
246
+ <li><a href="../../CORL/Node.html">CORL::Node</a>
247
+
248
+ <li><a href="../../CORL/Node/Aws.html">CORL::Node::Aws</a>
249
+
250
+ <li><a href="../../CORL/Node/Fog.html">CORL::Node::Fog</a>
251
+
252
+ <li><a href="../../CORL/Node/Local.html">CORL::Node::Local</a>
253
+
254
+ <li><a href="../../CORL/Node/Rackspace.html">CORL::Node::Rackspace</a>
255
+
256
+ <li><a href="../../CORL/Node/Vagrant.html">CORL::Node::Vagrant</a>
257
+
258
+ <li><a href="../../CORL/Plugin.html">CORL::Plugin</a>
259
+
260
+ <li><a href="../../CORL/Plugin/CloudAction.html">CORL::Plugin::CloudAction</a>
261
+
262
+ <li><a href="../../CORL/Provisioner.html">CORL::Provisioner</a>
263
+
264
+ <li><a href="../../CORL/Provisioner/Puppetnode.html">CORL::Provisioner::Puppetnode</a>
265
+
266
+ <li><a href="../../CORL/Template.html">CORL::Template</a>
267
+
268
+ <li><a href="../../CORL/Template/Environment.html">CORL::Template::Environment</a>
269
+
270
+ <li><a href="../../CORL/Util.html">CORL::Util</a>
271
+
272
+ <li><a href="../../CORL/Util/Puppet.html">CORL::Util::Puppet</a>
273
+
274
+ <li><a href="../../CORL/Util/Puppet/Resource.html">CORL::Util::Puppet::Resource</a>
275
+
276
+ <li><a href="../../CORL/Util/Puppet/ResourceGroup.html">CORL::Util::Puppet::ResourceGroup</a>
277
+
278
+ <li><a href="../../CORL/Vagrant.html">CORL::Vagrant</a>
279
+
280
+ <li><a href="../../CORL/Vagrant/Config.html">CORL::Vagrant::Config</a>
281
+
282
+ <li><a href="../../VagrantPlugins.html">VagrantPlugins</a>
283
+
284
+ <li><a href="../../VagrantPlugins/CORL.html">VagrantPlugins::CORL</a>
285
+
286
+ <li><a href="../../VagrantPlugins/CORL/Action.html">VagrantPlugins::CORL::Action</a>
287
+
288
+ <li><a href="../../VagrantPlugins/CORL/Action/DeleteCache.html">VagrantPlugins::CORL::Action::DeleteCache</a>
289
+
290
+ <li><a href="../../VagrantPlugins/CORL/Action/InitKeys.html">VagrantPlugins::CORL::Action::InitKeys</a>
291
+
292
+ <li><a href="../../VagrantPlugins/CORL/Action/LinkNetwork.html">VagrantPlugins::CORL::Action::LinkNetwork</a>
293
+
294
+ <li><a href="../../VagrantPlugins/CORL/BaseAction.html">VagrantPlugins::CORL::BaseAction</a>
295
+
296
+ <li><a href="../../VagrantPlugins/CORL/Command.html">VagrantPlugins::CORL::Command</a>
297
+
298
+ <li><a href="../../VagrantPlugins/CORL/Command/Launcher.html">VagrantPlugins::CORL::Command::Launcher</a>
299
+
300
+ <li><a href="../../VagrantPlugins/CORL/Config.html">VagrantPlugins::CORL::Config</a>
301
+
302
+ <li><a href="../../VagrantPlugins/CORL/Config/CORL.html">VagrantPlugins::CORL::Config::CORL</a>
303
+
304
+ <li><a href="../../VagrantPlugins/CORL/Plugin.html">VagrantPlugins::CORL::Plugin</a>
305
+
306
+ <li><a href="../../VagrantPlugins/CORL/Provisioner.html">VagrantPlugins::CORL::Provisioner</a>
307
+
308
+ <li><a href="../../VagrantPlugins/CORL/Provisioner/CORL.html">VagrantPlugins::CORL::Provisioner::CORL</a>
309
+
310
+ <li><a href="../../Nucleon.html">Nucleon</a>
311
+
312
+ <li><a href="../../Nucleon/Config.html">Nucleon::Config</a>
313
+
314
+ <li><a href="../../Nucleon/Plugin.html">Nucleon::Plugin</a>
315
+
316
+ <li><a href="../../Nucleon/Plugin/Base.html">Nucleon::Plugin::Base</a>
317
+
318
+ <li><a href="../../Nucleon/Plugin/Configuration.html">Nucleon::Plugin::Configuration</a>
319
+
320
+ <li><a href="../../Nucleon/Plugin/Machine.html">Nucleon::Plugin::Machine</a>
321
+
322
+ <li><a href="../../Nucleon/Plugin/Network.html">Nucleon::Plugin::Network</a>
323
+
324
+ <li><a href="../../Nucleon/Plugin/Node.html">Nucleon::Plugin::Node</a>
325
+
326
+ <li><a href="../../Nucleon/Plugin/Provisioner.html">Nucleon::Plugin::Provisioner</a>
327
+
328
+ <li><a href="../../Puppet.html">Puppet</a>
329
+
330
+ <li><a href="../../Puppet/DataBinding.html">Puppet::DataBinding</a>
331
+
332
+ <li><a href="../../Puppet/DataBinding/Corl.html">Puppet::DataBinding::Corl</a>
333
+
334
+ <li><a href="../../Puppet/Indirector.html">Puppet::Indirector</a>
335
+
336
+ <li><a href="../../Puppet/Indirector/Corl.html">Puppet::Indirector::Corl</a>
337
+
338
+ <li><a href="../../Puppet/Parser.html">Puppet::Parser</a>
339
+
340
+ <li><a href="../../Puppet/Parser/Functions.html">Puppet::Parser::Functions</a>
341
+
342
+ <li><a href="../../Fog.html">Fog</a>
343
+
344
+ <li><a href="../../Fog/Compute.html">Fog::Compute</a>
345
+
346
+ <li><a href="../../Fog/Compute/AWS.html">Fog::Compute::AWS</a>
347
+
348
+ <li><a href="../../Fog/Compute/AWS/Server.html">Fog::Compute::AWS::Server</a>
349
+
350
+ <li><a href="../../Fog/Compute/RackspaceV2.html">Fog::Compute::RackspaceV2</a>
351
+
352
+ <li><a href="../../Fog/Compute/RackspaceV2/Server.html">Fog::Compute::RackspaceV2::Server</a>
353
+
354
+ <li><a href="../../Vagrant.html">Vagrant</a>
355
+
356
+ <li><a href="../../Vagrant/Config.html">Vagrant::Config</a>
357
+
358
+ <li><a href="../../Vagrant/Config/Loader.html">Vagrant::Config::Loader</a>
359
+
360
+ <li><a href="../../Vagrant/Vagrantfile.html">Vagrant::Vagrantfile</a>
361
+
362
+ <li><a href="../../Facter.html">Facter</a>
363
+
364
+ <li><a href="../../Facter/Util.html">Facter::Util</a>
365
+
366
+ <li><a href="../../Facter/Util/Loader.html">Facter::Util::Loader</a>
367
+
368
+ <li><a href="../../Hiera.html">Hiera</a>
369
+
370
+ <li><a href="../../Hiera/Backend.html">Hiera::Backend</a>
371
+
372
+ <li><a href="../../Hiera/Corl_logger.html">Hiera::Corl_logger</a>
373
+
374
+ <li><a href="../../Object.html">Object</a>
375
+
376
+ </ul>
377
+ </nav>
378
+
379
+ </div>
380
+ </nav>
381
+
382
+ <div id="documentation">
383
+ <h1 class="class">class Nucleon::Plugin::Provisioner</h1>
384
+
385
+ <div id="description" class="description">
386
+
387
+ </div><!-- description -->
388
+
389
+
390
+
391
+
392
+ <section id="5Buntitled-5D" class="documentation-section">
393
+
394
+
395
+
396
+
397
+
398
+
399
+
400
+
401
+ <!-- Methods -->
402
+
403
+ <section id="public-class-5Buntitled-5D-method-details" class="method-section section">
404
+ <h3 class="section-header">Public Class Methods</h3>
405
+
406
+
407
+ <div id="method-c-build_info" class="method-detail ">
408
+
409
+ <div class="method-heading">
410
+ <span class="method-name">build_info</span><span
411
+ class="method-args">(type, data)</span>
412
+ <span class="method-click-advice">click to toggle source</span>
413
+ </div>
414
+
415
+
416
+ <div class="method-description">
417
+
418
+
419
+
420
+
421
+
422
+ <div class="method-source-code" id="build_info-source">
423
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 228</span>
424
+ <span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">build_info</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">data</span>)
425
+ <span class="ruby-identifier">data</span> = <span class="ruby-identifier">data</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/\s*,\s*/</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">data</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">String</span>)
426
+ <span class="ruby-keyword">super</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">data</span>)
427
+ <span class="ruby-keyword">end</span></pre>
428
+ </div><!-- build_info-source -->
429
+
430
+ </div>
431
+
432
+
433
+
434
+
435
+ </div><!-- build_info-method -->
436
+
437
+
438
+ <div id="method-c-translate" class="method-detail ">
439
+
440
+ <div class="method-heading">
441
+ <span class="method-name">translate</span><span
442
+ class="method-args">(data)</span>
443
+ <span class="method-click-advice">click to toggle source</span>
444
+ </div>
445
+
446
+
447
+ <div class="method-description">
448
+
449
+
450
+
451
+
452
+
453
+ <div class="method-source-code" id="translate-source">
454
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 235</span>
455
+ <span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">translate</span>(<span class="ruby-identifier">data</span>)
456
+ <span class="ruby-identifier">options</span> = <span class="ruby-keyword">super</span>(<span class="ruby-identifier">data</span>)
457
+
458
+ <span class="ruby-keyword">case</span> <span class="ruby-identifier">data</span>
459
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">String</span>
460
+ <span class="ruby-identifier">options</span> = { <span class="ruby-value">:profiles</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">array</span>(<span class="ruby-identifier">data</span>) }
461
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">Hash</span>
462
+ <span class="ruby-identifier">options</span> = <span class="ruby-identifier">data</span>
463
+ <span class="ruby-keyword">end</span>
464
+
465
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:profiles</span>)
466
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">matches</span> = <span class="ruby-identifier">translate_reference</span>(<span class="ruby-identifier">options</span>[<span class="ruby-value">:profiles</span>])
467
+ <span class="ruby-identifier">options</span>[<span class="ruby-value">:provider</span>] = <span class="ruby-identifier">matches</span>[<span class="ruby-value">:provider</span>]
468
+ <span class="ruby-identifier">options</span>[<span class="ruby-value">:profiles</span>] = <span class="ruby-identifier">matches</span>[<span class="ruby-value">:profiles</span>]
469
+
470
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">&quot;Translating provisioner options: #{options.inspect}&quot;</span>)
471
+ <span class="ruby-keyword">end</span>
472
+ <span class="ruby-keyword">end</span>
473
+ <span class="ruby-identifier">options</span>
474
+ <span class="ruby-keyword">end</span></pre>
475
+ </div><!-- translate-source -->
476
+
477
+ </div>
478
+
479
+
480
+
481
+
482
+ </div><!-- translate-method -->
483
+
484
+
485
+ <div id="method-c-translate_reference" class="method-detail ">
486
+
487
+ <div class="method-heading">
488
+ <span class="method-name">translate_reference</span><span
489
+ class="method-args">(reference)</span>
490
+ <span class="method-click-advice">click to toggle source</span>
491
+ </div>
492
+
493
+
494
+ <div class="method-description">
495
+
496
+
497
+
498
+
499
+
500
+ <div class="method-source-code" id="translate_reference-source">
501
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 258</span>
502
+ <span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">translate_reference</span>(<span class="ruby-identifier">reference</span>)
503
+ <span class="ruby-comment"># ex: puppetnode:::profile::something,profile::somethingelse</span>
504
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">reference</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">reference</span>.<span class="ruby-identifier">match</span>(<span class="ruby-regexp">/^\s*([a-zA-Z0-9_-]+):::([^\s]+)\s*$/</span>)
505
+ <span class="ruby-identifier">provider</span> = <span class="ruby-node">$1</span>
506
+ <span class="ruby-identifier">profiles</span> = <span class="ruby-node">$2</span>
507
+
508
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">&quot;Translating provisioner reference: #{provider} #{profiles}&quot;</span>)
509
+
510
+ <span class="ruby-identifier">info</span> = {
511
+ <span class="ruby-value">:provider</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">provider</span>,
512
+ <span class="ruby-value">:profiles</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">profiles</span>.<span class="ruby-identifier">split</span>(<span class="ruby-regexp">/\s*,\s*/</span>)
513
+ }
514
+
515
+ <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">&quot;Project reference info: #{info.inspect}&quot;</span>)
516
+ <span class="ruby-keyword">return</span> <span class="ruby-identifier">info</span>
517
+ <span class="ruby-keyword">end</span>
518
+ <span class="ruby-keyword">nil</span>
519
+ <span class="ruby-keyword">end</span></pre>
520
+ </div><!-- translate_reference-source -->
521
+
522
+ </div>
523
+
524
+
525
+
526
+
527
+ </div><!-- translate_reference-method -->
528
+
529
+
530
+ </section><!-- public-class-method-details -->
531
+
532
+ <section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
533
+ <h3 class="section-header">Public Instance Methods</h3>
534
+
535
+
536
+ <div id="method-i-build" class="method-detail ">
537
+
538
+ <div class="method-heading">
539
+ <span class="method-name">build</span><span
540
+ class="method-args">(options = {}) { |locations, package_info| ... }</span>
541
+ <span class="method-click-advice">click to toggle source</span>
542
+ </div>
543
+
544
+
545
+ <div class="method-description">
546
+
547
+
548
+
549
+
550
+
551
+ <div class="method-source-code" id="build-source">
552
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 138</span>
553
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">build</span>(<span class="ruby-identifier">options</span> = {})
554
+ <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
555
+ <span class="ruby-identifier">success</span> = <span class="ruby-keyword">true</span>
556
+ <span class="ruby-identifier">locations</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">new</span>({ <span class="ruby-value">:build</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">id</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-value">:package</span> =<span class="ruby-operator">&gt;</span> {} })
557
+ <span class="ruby-identifier">package_info</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">new</span>
558
+
559
+ <span class="ruby-identifier">init_package</span> = <span class="ruby-identifier">lambda</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">name</span>, <span class="ruby-identifier">reference</span><span class="ruby-operator">|</span>
560
+ <span class="ruby-identifier">package_directory</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">locations</span>[<span class="ruby-value">:build</span>], <span class="ruby-string">&#39;packages&#39;</span>, <span class="ruby-identifier">id</span>(<span class="ruby-identifier">name</span>).<span class="ruby-identifier">to_s</span>)
561
+ <span class="ruby-identifier">package_success</span> = <span class="ruby-keyword">true</span>
562
+
563
+ <span class="ruby-identifier">ui</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">&quot;Building package #{blue(name)} at #{purple(reference)} into #{green(package_directory)}&quot;</span>)
564
+
565
+ <span class="ruby-identifier">full_package_directory</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">build_directory</span>, <span class="ruby-identifier">package_directory</span>)
566
+
567
+ <span class="ruby-identifier">project</span> = <span class="ruby-constant">CORL</span>.<span class="ruby-identifier">configuration</span>(<span class="ruby-identifier">extended_config</span>(<span class="ruby-value">:package</span>, {
568
+ <span class="ruby-value">:directory</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">full_package_directory</span>,
569
+ <span class="ruby-value">:url</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">reference</span>,
570
+ <span class="ruby-value">:create</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">directory?</span>(<span class="ruby-identifier">full_package_directory</span>) <span class="ruby-operator">?</span> <span class="ruby-keyword">false</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">true</span>
571
+ }))
572
+ <span class="ruby-keyword">unless</span> <span class="ruby-identifier">project</span>
573
+ <span class="ruby-identifier">ui</span>.<span class="ruby-identifier">warn</span>(<span class="ruby-node">&quot;Project #{cyan(name)} failed to initialize&quot;</span>)
574
+ <span class="ruby-identifier">package_success</span> = <span class="ruby-keyword">false</span>
575
+ <span class="ruby-keyword">end</span>
576
+
577
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">package_success</span>
578
+ <span class="ruby-identifier">package_info</span>.<span class="ruby-identifier">import</span>(<span class="ruby-identifier">project</span>.<span class="ruby-identifier">export</span>)
579
+ <span class="ruby-identifier">locations</span>[<span class="ruby-value">:package</span>][<span class="ruby-identifier">name</span>] = <span class="ruby-identifier">package_directory</span>
580
+
581
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">project</span>.<span class="ruby-identifier">get</span>([ <span class="ruby-value">:provisioners</span>, <span class="ruby-identifier">plugin_provider</span> ], <span class="ruby-keyword">false</span>)
582
+ <span class="ruby-identifier">project</span>.<span class="ruby-identifier">get_hash</span>([ <span class="ruby-value">:provisioners</span>, <span class="ruby-identifier">plugin_provider</span> ]).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">prov_name</span>, <span class="ruby-identifier">info</span><span class="ruby-operator">|</span>
583
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">info</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:packages</span>)
584
+ <span class="ruby-identifier">info</span>[<span class="ruby-value">:packages</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">sub_name</span>, <span class="ruby-identifier">sub_reference</span><span class="ruby-operator">|</span>
585
+ <span class="ruby-keyword">unless</span> <span class="ruby-identifier">init_package</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">sub_name</span>, <span class="ruby-identifier">sub_reference</span>)
586
+ <span class="ruby-identifier">package_success</span> = <span class="ruby-keyword">false</span>
587
+ <span class="ruby-keyword">break</span>
588
+ <span class="ruby-keyword">end</span>
589
+ <span class="ruby-keyword">end</span>
590
+ <span class="ruby-keyword">end</span>
591
+ <span class="ruby-keyword">end</span>
592
+ <span class="ruby-keyword">end</span>
593
+ <span class="ruby-keyword">end</span>
594
+ <span class="ruby-identifier">package_success</span>
595
+ <span class="ruby-keyword">end</span>
596
+
597
+ <span class="ruby-identifier">local_build_directory</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">build_directory</span>, <span class="ruby-identifier">locations</span>[<span class="ruby-value">:build</span>])
598
+
599
+ <span class="ruby-constant">FileUtils</span>.<span class="ruby-identifier">mkdir_p</span>(<span class="ruby-identifier">local_build_directory</span>)
600
+
601
+ <span class="ruby-comment"># Build packages</span>
602
+ <span class="ruby-identifier">packages</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">name</span>, <span class="ruby-identifier">reference</span><span class="ruby-operator">|</span>
603
+ <span class="ruby-keyword">unless</span> <span class="ruby-identifier">init_package</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">reference</span>)
604
+ <span class="ruby-identifier">success</span> = <span class="ruby-keyword">false</span>
605
+ <span class="ruby-keyword">break</span>
606
+ <span class="ruby-keyword">end</span>
607
+ <span class="ruby-keyword">end</span>
608
+
609
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span>
610
+ <span class="ruby-comment"># Build provider specific components </span>
611
+ <span class="ruby-identifier">success</span> = <span class="ruby-keyword">yield</span>(<span class="ruby-identifier">locations</span>, <span class="ruby-identifier">package_info</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
612
+
613
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span>
614
+ <span class="ruby-comment"># Save the updates in the local project cache</span>
615
+ <span class="ruby-identifier">set_cache_setting</span>(<span class="ruby-value">:build_locations</span>, <span class="ruby-identifier">locations</span>.<span class="ruby-identifier">export</span>)
616
+ <span class="ruby-identifier">set_cache_setting</span>(<span class="ruby-value">:build_info</span>, <span class="ruby-identifier">package_info</span>.<span class="ruby-identifier">get</span>([ <span class="ruby-value">:provisioners</span>, <span class="ruby-identifier">plugin_provider</span> ]))
617
+ <span class="ruby-identifier">set_cache_setting</span>(<span class="ruby-value">:build_profiles</span>, <span class="ruby-identifier">find_profiles</span>)
618
+ <span class="ruby-keyword">end</span>
619
+ <span class="ruby-keyword">end</span>
620
+ <span class="ruby-identifier">success</span>
621
+ <span class="ruby-keyword">end</span></pre>
622
+ </div><!-- build-source -->
623
+
624
+ </div>
625
+
626
+
627
+
628
+
629
+ </div><!-- build-method -->
630
+
631
+
632
+ <div id="method-i-build_directory" class="method-detail ">
633
+
634
+ <div class="method-heading">
635
+ <span class="method-name">build_directory</span><span
636
+ class="method-args">()</span>
637
+ <span class="method-click-advice">click to toggle source</span>
638
+ </div>
639
+
640
+
641
+ <div class="method-description">
642
+
643
+
644
+
645
+
646
+
647
+ <div class="method-source-code" id="build_directory-source">
648
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 46</span>
649
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">build_directory</span>
650
+ <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">network</span>.<span class="ruby-identifier">build_directory</span>, <span class="ruby-identifier">plugin_provider</span>.<span class="ruby-identifier">to_s</span>)
651
+ <span class="ruby-keyword">end</span></pre>
652
+ </div><!-- build_directory-source -->
653
+
654
+ </div>
655
+
656
+
657
+
658
+
659
+ </div><!-- build_directory-method -->
660
+
661
+
662
+ <div id="method-i-build_info" class="method-detail ">
663
+
664
+ <div class="method-heading">
665
+ <span class="method-name">build_info</span><span
666
+ class="method-args">(reset = false)</span>
667
+ <span class="method-click-advice">click to toggle source</span>
668
+ </div>
669
+
670
+
671
+ <div class="method-description">
672
+
673
+
674
+
675
+
676
+
677
+ <div class="method-source-code" id="build_info-source">
678
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 115</span>
679
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">build_info</span>(<span class="ruby-identifier">reset</span> = <span class="ruby-keyword">false</span>)
680
+ <span class="ruby-identifier">info</span> = <span class="ruby-identifier">cache_setting</span>(<span class="ruby-value">:build_info</span>, {}, <span class="ruby-value">:hash</span>)
681
+ <span class="ruby-identifier">build</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">reset</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">info</span>.<span class="ruby-identifier">empty?</span>
682
+ <span class="ruby-identifier">symbol_map</span>(<span class="ruby-identifier">cache_setting</span>(<span class="ruby-value">:build_info</span>, {}, <span class="ruby-value">:hash</span>))
683
+ <span class="ruby-keyword">end</span></pre>
684
+ </div><!-- build_info-source -->
685
+
686
+ </div>
687
+
688
+
689
+
690
+
691
+ </div><!-- build_info-method -->
692
+
693
+
694
+ <div id="method-i-build_locations" class="method-detail ">
695
+
696
+ <div class="method-heading">
697
+ <span class="method-name">build_locations</span><span
698
+ class="method-args">(reset = false)</span>
699
+ <span class="method-click-advice">click to toggle source</span>
700
+ </div>
701
+
702
+
703
+ <div class="method-description">
704
+
705
+
706
+
707
+
708
+
709
+ <div class="method-source-code" id="build_locations-source">
710
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 107</span>
711
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">build_locations</span>(<span class="ruby-identifier">reset</span> = <span class="ruby-keyword">false</span>)
712
+ <span class="ruby-identifier">locations</span> = <span class="ruby-identifier">cache_setting</span>(<span class="ruby-value">:build_locations</span>, {}, <span class="ruby-value">:hash</span>)
713
+ <span class="ruby-identifier">build</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">reset</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">locations</span>.<span class="ruby-identifier">empty?</span>
714
+ <span class="ruby-identifier">symbol_map</span>(<span class="ruby-identifier">cache_setting</span>(<span class="ruby-value">:build_locations</span>, {}, <span class="ruby-value">:hash</span>))
715
+ <span class="ruby-keyword">end</span></pre>
716
+ </div><!-- build_locations-source -->
717
+
718
+ </div>
719
+
720
+
721
+
722
+
723
+ </div><!-- build_locations-method -->
724
+
725
+
726
+ <div id="method-i-build_profiles" class="method-detail ">
727
+
728
+ <div class="method-heading">
729
+ <span class="method-name">build_profiles</span><span
730
+ class="method-args">(reset = false)</span>
731
+ <span class="method-click-advice">click to toggle source</span>
732
+ </div>
733
+
734
+
735
+ <div class="method-description">
736
+
737
+
738
+
739
+
740
+
741
+ <div class="method-source-code" id="build_profiles-source">
742
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 123</span>
743
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">build_profiles</span>(<span class="ruby-identifier">reset</span> = <span class="ruby-keyword">false</span>)
744
+ <span class="ruby-identifier">profiles</span> = <span class="ruby-identifier">cache_setting</span>(<span class="ruby-value">:build_profiles</span>, [], <span class="ruby-value">:array</span>)
745
+ <span class="ruby-identifier">build</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">reset</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">profiles</span>.<span class="ruby-identifier">empty?</span>
746
+ <span class="ruby-identifier">cache_setting</span>(<span class="ruby-value">:build_profiles</span>, [], <span class="ruby-value">:array</span>)
747
+ <span class="ruby-keyword">end</span></pre>
748
+ </div><!-- build_profiles-source -->
749
+
750
+ </div>
751
+
752
+
753
+
754
+
755
+ </div><!-- build_profiles-method -->
756
+
757
+
758
+ <div id="method-i-concatenate" class="method-detail ">
759
+
760
+ <div class="method-heading">
761
+ <span class="method-name">concatenate</span><span
762
+ class="method-args">(components, capitalize = false, joiner = '::')</span>
763
+ <span class="method-click-advice">click to toggle source</span>
764
+ </div>
765
+
766
+
767
+ <div class="method-description">
768
+
769
+
770
+
771
+
772
+
773
+ <div class="method-source-code" id="concatenate-source">
774
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 285</span>
775
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">concatenate</span>(<span class="ruby-identifier">components</span>, <span class="ruby-identifier">capitalize</span> = <span class="ruby-keyword">false</span>, <span class="ruby-identifier">joiner</span> = <span class="ruby-string">&#39;::&#39;</span>)
776
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">components</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Array</span>)
777
+ <span class="ruby-identifier">components</span> = <span class="ruby-identifier">components</span>.<span class="ruby-identifier">collect</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">str</span><span class="ruby-operator">|</span>
778
+ <span class="ruby-identifier">str</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">&#39;__&#39;</span>)
779
+ <span class="ruby-keyword">end</span>.<span class="ruby-identifier">flatten</span>
780
+ <span class="ruby-keyword">else</span>
781
+ <span class="ruby-identifier">components</span> = [ <span class="ruby-identifier">components</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-string">&#39;__&#39;</span>) ].<span class="ruby-identifier">flatten</span>
782
+ <span class="ruby-keyword">end</span>
783
+
784
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">capitalize</span>
785
+ <span class="ruby-identifier">name</span> = <span class="ruby-identifier">components</span>.<span class="ruby-identifier">collect</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">str</span><span class="ruby-operator">|</span> <span class="ruby-identifier">str</span>.<span class="ruby-identifier">capitalize</span> }.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">joiner</span>)
786
+ <span class="ruby-keyword">else</span>
787
+ <span class="ruby-identifier">name</span> = <span class="ruby-identifier">components</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">joiner</span>)
788
+ <span class="ruby-keyword">end</span>
789
+ <span class="ruby-identifier">name</span>
790
+ <span class="ruby-keyword">end</span></pre>
791
+ </div><!-- concatenate-source -->
792
+
793
+ </div>
794
+
795
+
796
+
797
+
798
+ </div><!-- concatenate-method -->
799
+
800
+
801
+ <div id="method-i-directory" class="method-detail ">
802
+
803
+ <div class="method-heading">
804
+ <span class="method-name">directory</span><span
805
+ class="method-args">()</span>
806
+ <span class="method-click-advice">click to toggle source</span>
807
+ </div>
808
+
809
+
810
+ <div class="method-description">
811
+
812
+
813
+
814
+
815
+
816
+ <div class="method-source-code" id="directory-source">
817
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 40</span>
818
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">directory</span>
819
+ <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">network</span>.<span class="ruby-identifier">directory</span>, <span class="ruby-identifier">myself</span>[<span class="ruby-value">:directory</span>])
820
+ <span class="ruby-keyword">end</span></pre>
821
+ </div><!-- directory-source -->
822
+
823
+ </div>
824
+
825
+
826
+
827
+
828
+ </div><!-- directory-method -->
829
+
830
+
831
+ <div id="method-i-directory-3D" class="method-detail ">
832
+
833
+ <div class="method-heading">
834
+ <span class="method-name">directory=</span><span
835
+ class="method-args">(directory)</span>
836
+ <span class="method-click-advice">click to toggle source</span>
837
+ </div>
838
+
839
+
840
+ <div class="method-description">
841
+
842
+
843
+
844
+
845
+
846
+ <div class="method-source-code" id="directory-3D-source">
847
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 36</span>
848
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">directory=</span><span class="ruby-identifier">directory</span>
849
+ <span class="ruby-identifier">myself</span>[<span class="ruby-value">:directory</span>] = <span class="ruby-identifier">directory</span>
850
+ <span class="ruby-keyword">end</span></pre>
851
+ </div><!-- directory-3D-source -->
852
+
853
+ </div>
854
+
855
+
856
+
857
+
858
+ </div><!-- directory-3D-method -->
859
+
860
+
861
+ <div id="method-i-gateway" class="method-detail ">
862
+
863
+ <div class="method-heading">
864
+ <span class="method-name">gateway</span><span
865
+ class="method-args">()</span>
866
+ <span class="method-click-advice">click to toggle source</span>
867
+ </div>
868
+
869
+
870
+ <div class="method-description">
871
+
872
+
873
+
874
+
875
+
876
+ <div class="method-source-code" id="gateway-source">
877
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 56</span>
878
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">gateway</span>
879
+ <span class="ruby-identifier">myself</span>[<span class="ruby-value">:gateway</span>]
880
+ <span class="ruby-keyword">end</span></pre>
881
+ </div><!-- gateway-source -->
882
+
883
+ </div>
884
+
885
+
886
+
887
+
888
+ </div><!-- gateway-method -->
889
+
890
+
891
+ <div id="method-i-gateway-3D" class="method-detail ">
892
+
893
+ <div class="method-heading">
894
+ <span class="method-name">gateway=</span><span
895
+ class="method-args">(gateway)</span>
896
+ <span class="method-click-advice">click to toggle source</span>
897
+ </div>
898
+
899
+
900
+ <div class="method-description">
901
+
902
+
903
+
904
+
905
+
906
+ <div class="method-source-code" id="gateway-3D-source">
907
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 52</span>
908
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">gateway=</span><span class="ruby-identifier">gateway</span>
909
+ <span class="ruby-identifier">myself</span>[<span class="ruby-value">:gateway</span>] = <span class="ruby-identifier">gateway</span>
910
+ <span class="ruby-keyword">end</span></pre>
911
+ </div><!-- gateway-3D-source -->
912
+
913
+ </div>
914
+
915
+
916
+
917
+
918
+ </div><!-- gateway-3D-method -->
919
+
920
+
921
+ <div id="method-i-id" class="method-detail ">
922
+
923
+ <div class="method-heading">
924
+ <span class="method-name">id</span><span
925
+ class="method-args">(name = nil)</span>
926
+ <span class="method-click-advice">click to toggle source</span>
927
+ </div>
928
+
929
+
930
+ <div class="method-description">
931
+
932
+
933
+
934
+
935
+
936
+ <div class="method-source-code" id="id-source">
937
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 29</span>
938
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">id</span>(<span class="ruby-identifier">name</span> = <span class="ruby-keyword">nil</span>)
939
+ <span class="ruby-identifier">name</span> = <span class="ruby-identifier">plugin_name</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">name</span>.<span class="ruby-identifier">nil?</span>
940
+ <span class="ruby-identifier">name</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-string">&#39;::&#39;</span>, <span class="ruby-string">&#39;_&#39;</span>).<span class="ruby-identifier">to_sym</span>
941
+ <span class="ruby-keyword">end</span></pre>
942
+ </div><!-- id-source -->
943
+
944
+ </div>
945
+
946
+
947
+
948
+
949
+ </div><!-- id-method -->
950
+
951
+
952
+ <div id="method-i-initialized-3F" class="method-detail ">
953
+
954
+ <div class="method-heading">
955
+ <span class="method-name">initialized?</span><span
956
+ class="method-args">(options = {})</span>
957
+ <span class="method-click-advice">click to toggle source</span>
958
+ </div>
959
+
960
+
961
+ <div class="method-description">
962
+
963
+
964
+
965
+
966
+
967
+ <div class="method-source-code" id="initialized-3F-source">
968
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 19</span>
969
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">initialized?</span>(<span class="ruby-identifier">options</span> = {})
970
+ <span class="ruby-keyword">end</span></pre>
971
+ </div><!-- initialized-3F-source -->
972
+
973
+ </div>
974
+
975
+
976
+
977
+
978
+ </div><!-- initialized-3F-method -->
979
+
980
+
981
+ <div id="method-i-lookup" class="method-detail ">
982
+
983
+ <div class="method-heading">
984
+ <span class="method-name">lookup</span><span
985
+ class="method-args">(property, default = nil, options = {})</span>
986
+ <span class="method-click-advice">click to toggle source</span>
987
+ </div>
988
+
989
+
990
+ <div class="method-description">
991
+
992
+
993
+
994
+
995
+
996
+ <div class="method-source-code" id="lookup-source">
997
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 210</span>
998
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">lookup</span>(<span class="ruby-identifier">property</span>, <span class="ruby-identifier">default</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">options</span> = {})
999
+ <span class="ruby-comment"># Implement in providers</span>
1000
+ <span class="ruby-keyword">nil</span>
1001
+ <span class="ruby-keyword">end</span></pre>
1002
+ </div><!-- lookup-source -->
1003
+
1004
+ </div>
1005
+
1006
+
1007
+
1008
+
1009
+ </div><!-- lookup-method -->
1010
+
1011
+
1012
+ <div id="method-i-normalize" class="method-detail ">
1013
+
1014
+ <div class="method-heading">
1015
+ <span class="method-name">normalize</span><span
1016
+ class="method-args">(reload) { || ... }</span>
1017
+ <span class="method-click-advice">click to toggle source</span>
1018
+ </div>
1019
+
1020
+
1021
+ <div class="method-description">
1022
+
1023
+
1024
+
1025
+
1026
+
1027
+ <div class="method-source-code" id="normalize-source">
1028
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 11</span>
1029
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">normalize</span>(<span class="ruby-identifier">reload</span>)
1030
+ <span class="ruby-keyword">super</span>
1031
+ <span class="ruby-keyword">yield</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
1032
+ <span class="ruby-keyword">end</span></pre>
1033
+ </div><!-- normalize-source -->
1034
+
1035
+ </div>
1036
+
1037
+
1038
+
1039
+
1040
+ </div><!-- normalize-method -->
1041
+
1042
+
1043
+ <div id="method-i-packages" class="method-detail ">
1044
+
1045
+ <div class="method-heading">
1046
+ <span class="method-name">packages</span><span
1047
+ class="method-args">()</span>
1048
+ <span class="method-click-advice">click to toggle source</span>
1049
+ </div>
1050
+
1051
+
1052
+ <div class="method-description">
1053
+
1054
+
1055
+
1056
+
1057
+
1058
+ <div class="method-source-code" id="packages-source">
1059
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 62</span>
1060
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">packages</span>
1061
+ <span class="ruby-identifier">hash</span>(<span class="ruby-identifier">myself</span>[<span class="ruby-value">:packages</span>])
1062
+ <span class="ruby-keyword">end</span></pre>
1063
+ </div><!-- packages-source -->
1064
+
1065
+ </div>
1066
+
1067
+
1068
+
1069
+
1070
+ </div><!-- packages-method -->
1071
+
1072
+
1073
+ <div id="method-i-profiles" class="method-detail ">
1074
+
1075
+ <div class="method-heading">
1076
+ <span class="method-name">profiles</span><span
1077
+ class="method-args">()</span>
1078
+ <span class="method-click-advice">click to toggle source</span>
1079
+ </div>
1080
+
1081
+
1082
+ <div class="method-description">
1083
+
1084
+
1085
+
1086
+
1087
+
1088
+ <div class="method-source-code" id="profiles-source">
1089
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 68</span>
1090
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">profiles</span>
1091
+ <span class="ruby-identifier">hash</span>(<span class="ruby-identifier">myself</span>[<span class="ruby-value">:profiles</span>])
1092
+ <span class="ruby-keyword">end</span></pre>
1093
+ </div><!-- profiles-source -->
1094
+
1095
+ </div>
1096
+
1097
+
1098
+
1099
+
1100
+ </div><!-- profiles-method -->
1101
+
1102
+
1103
+ <div id="method-i-provision" class="method-detail ">
1104
+
1105
+ <div class="method-heading">
1106
+ <span class="method-name">provision</span><span
1107
+ class="method-args">(profiles, options = {}) { |config| ... }</span>
1108
+ <span class="method-click-advice">click to toggle source</span>
1109
+ </div>
1110
+
1111
+
1112
+ <div class="method-description">
1113
+
1114
+
1115
+
1116
+
1117
+
1118
+ <div class="method-source-code" id="provision-source">
1119
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 217</span>
1120
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">provision</span>(<span class="ruby-identifier">profiles</span>, <span class="ruby-identifier">options</span> = {})
1121
+ <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
1122
+ <span class="ruby-identifier">success</span> = <span class="ruby-keyword">yield</span>(<span class="ruby-identifier">config</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
1123
+
1124
+ <span class="ruby-constant">Config</span>.<span class="ruby-identifier">save_properties</span>(<span class="ruby-constant">Config</span>.<span class="ruby-identifier">get_options</span>(<span class="ruby-value">:corl_log</span>)) <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span>
1125
+ <span class="ruby-identifier">success</span>
1126
+ <span class="ruby-keyword">end</span></pre>
1127
+ </div><!-- provision-source -->
1128
+
1129
+ </div>
1130
+
1131
+
1132
+
1133
+
1134
+ </div><!-- provision-method -->
1135
+
1136
+
1137
+ <div id="method-i-register" class="method-detail ">
1138
+
1139
+ <div class="method-heading">
1140
+ <span class="method-name">register</span><span
1141
+ class="method-args">(options = {})</span>
1142
+ <span class="method-click-advice">click to toggle source</span>
1143
+ </div>
1144
+
1145
+
1146
+ <div class="method-description">
1147
+
1148
+
1149
+
1150
+
1151
+
1152
+ <div class="method-source-code" id="register-source">
1153
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 132</span>
1154
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">register</span>(<span class="ruby-identifier">options</span> = {})
1155
+ <span class="ruby-comment"># Implement in providers</span>
1156
+ <span class="ruby-keyword">end</span></pre>
1157
+ </div><!-- register-source -->
1158
+
1159
+ </div>
1160
+
1161
+
1162
+
1163
+
1164
+ </div><!-- register-method -->
1165
+
1166
+
1167
+ <div id="method-i-supported_profiles" class="method-detail ">
1168
+
1169
+ <div class="method-heading">
1170
+ <span class="method-name">supported_profiles</span><span
1171
+ class="method-args">(profile_names = nil)</span>
1172
+ <span class="method-click-advice">click to toggle source</span>
1173
+ </div>
1174
+
1175
+
1176
+ <div class="method-description">
1177
+
1178
+
1179
+
1180
+
1181
+
1182
+ <div class="method-source-code" id="supported_profiles-source">
1183
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 88</span>
1184
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">supported_profiles</span>(<span class="ruby-identifier">profile_names</span> = <span class="ruby-keyword">nil</span>)
1185
+ <span class="ruby-identifier">found</span> = []
1186
+ <span class="ruby-identifier">profiles</span> = <span class="ruby-identifier">build_profiles</span>
1187
+
1188
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">profile_names</span>.<span class="ruby-identifier">nil?</span>
1189
+ <span class="ruby-identifier">found</span> = <span class="ruby-identifier">profiles</span>
1190
+ <span class="ruby-keyword">else</span>
1191
+ <span class="ruby-identifier">profile_names</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">name</span><span class="ruby-operator">|</span>
1192
+ <span class="ruby-identifier">name</span> = <span class="ruby-identifier">name</span>.<span class="ruby-identifier">to_s</span>
1193
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">profiles</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">name</span>)
1194
+ <span class="ruby-identifier">found</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">name</span>
1195
+ <span class="ruby-keyword">end</span>
1196
+ <span class="ruby-keyword">end</span>
1197
+ <span class="ruby-keyword">end</span>
1198
+ <span class="ruby-identifier">found</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">false</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">found</span>
1199
+ <span class="ruby-keyword">end</span></pre>
1200
+ </div><!-- supported_profiles-source -->
1201
+
1202
+ </div>
1203
+
1204
+
1205
+
1206
+
1207
+ </div><!-- supported_profiles-method -->
1208
+
1209
+
1210
+ <div id="method-i-translate_reference" class="method-detail ">
1211
+
1212
+ <div class="method-heading">
1213
+ <span class="method-name">translate_reference</span><span
1214
+ class="method-args">(reference)</span>
1215
+ <span class="method-click-advice">click to toggle source</span>
1216
+ </div>
1217
+
1218
+
1219
+ <div class="method-description">
1220
+
1221
+
1222
+
1223
+
1224
+
1225
+ <div class="method-source-code" id="translate_reference-source">
1226
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 279</span>
1227
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">translate_reference</span>(<span class="ruby-identifier">reference</span>)
1228
+ <span class="ruby-identifier">myself</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">translate_reference</span>(<span class="ruby-identifier">reference</span>)
1229
+ <span class="ruby-keyword">end</span></pre>
1230
+ </div><!-- translate_reference-source -->
1231
+
1232
+ </div>
1233
+
1234
+
1235
+
1236
+
1237
+ </div><!-- translate_reference-method -->
1238
+
1239
+
1240
+ </section><!-- public-instance-method-details -->
1241
+
1242
+ <section id="protected-instance-5Buntitled-5D-method-details" class="method-section section">
1243
+ <h3 class="section-header">Protected Instance Methods</h3>
1244
+
1245
+
1246
+ <div id="method-i-find_profiles" class="method-detail ">
1247
+
1248
+ <div class="method-heading">
1249
+ <span class="method-name">find_profiles</span><span
1250
+ class="method-args">(reset = false)</span>
1251
+ <span class="method-click-advice">click to toggle source</span>
1252
+ </div>
1253
+
1254
+
1255
+ <div class="method-description">
1256
+
1257
+
1258
+
1259
+
1260
+
1261
+ <div class="method-source-code" id="find_profiles-source">
1262
+ <pre><span class="ruby-comment"># File lib/core/plugin/provisioner.rb, line 72</span>
1263
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier">find_profiles</span>(<span class="ruby-identifier">reset</span> = <span class="ruby-keyword">false</span>)
1264
+ <span class="ruby-identifier">allowed_profiles</span> = []
1265
+ <span class="ruby-identifier">build_info</span>(<span class="ruby-identifier">reset</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">package_name</span>, <span class="ruby-identifier">package_info</span><span class="ruby-operator">|</span>
1266
+ <span class="ruby-identifier">hash</span>(<span class="ruby-identifier">package_info</span>[<span class="ruby-value">:profiles</span>]).<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">profile_name</span>, <span class="ruby-identifier">profile_info</span><span class="ruby-operator">|</span>
1267
+ <span class="ruby-identifier">allowed_profiles</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">concatenate</span>([ <span class="ruby-identifier">package_name</span>, <span class="ruby-string">&#39;profile&#39;</span>, <span class="ruby-identifier">profile_name</span> ])
1268
+ <span class="ruby-keyword">end</span>
1269
+ <span class="ruby-keyword">end</span>
1270
+ <span class="ruby-identifier">profiles</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">profile_name</span>, <span class="ruby-identifier">profile_info</span><span class="ruby-operator">|</span>
1271
+ <span class="ruby-identifier">allowed_profiles</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">concatenate</span>([ <span class="ruby-identifier">plugin_name</span>, <span class="ruby-string">&#39;profile&#39;</span>, <span class="ruby-identifier">profile_name</span> ])
1272
+ <span class="ruby-keyword">end</span>
1273
+ <span class="ruby-identifier">allowed_profiles</span>
1274
+ <span class="ruby-keyword">end</span></pre>
1275
+ </div><!-- find_profiles-source -->
1276
+
1277
+ </div>
1278
+
1279
+
1280
+
1281
+
1282
+ </div><!-- find_profiles-method -->
1283
+
1284
+
1285
+ </section><!-- protected-instance-method-details -->
1286
+
1287
+ </section><!-- 5Buntitled-5D -->
1288
+
1289
+ </div><!-- documentation -->
1290
+
1291
+
1292
+ <footer id="validator-badges">
1293
+ <p><a href="http://validator.w3.org/check/referer">[Validate]</a>
1294
+ <p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.2.
1295
+ <p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
1296
+ </footer>
1297
+