corl 0.5.2 → 0.5.3

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 (511) hide show
  1. checksums.yaml +7 -7
  2. data/.gitignore +51 -0
  3. data/Gemfile +6 -11
  4. data/Gemfile.lock +122 -147
  5. data/Rakefile +22 -21
  6. data/TODO.rdoc +12 -0
  7. data/VERSION +1 -1
  8. data/bin/corl +15 -21
  9. data/bootstrap/bootstrap.sh +50 -16
  10. data/bootstrap/lib/shell/os.sh +2 -2
  11. data/bootstrap/os/ubuntu/00_base.sh +11 -4
  12. data/bootstrap/os/ubuntu/01_git.sh +6 -3
  13. data/bootstrap/os/ubuntu/{02-editor.sh → 02_editor.sh} +8 -2
  14. data/bootstrap/os/ubuntu/05_ruby.sh +63 -15
  15. data/bootstrap/os/ubuntu/06_puppet.sh +9 -4
  16. data/bootstrap/os/ubuntu/09_nucleon.sh +25 -9
  17. data/bootstrap/os/ubuntu/10_corl.sh +24 -10
  18. data/corl.gemspec +27 -502
  19. data/lib/CORL/configuration/file.rb +112 -112
  20. data/lib/CORL/machine/rackspace.rb +18 -17
  21. data/lib/core/facade.rb +1 -1
  22. data/lib/core/plugin/agent.rb +141 -0
  23. data/lib/core/plugin/cloud_action.rb +67 -62
  24. data/lib/core/plugin/configuration.rb +71 -70
  25. data/lib/core/plugin/network.rb +163 -151
  26. data/lib/core/plugin/node.rb +457 -422
  27. data/lib/core/vagrant/commands/launcher.rb +13 -13
  28. data/lib/core/vagrant/provisioner/config.rb +1 -3
  29. data/lib/nucleon/action/node/bootstrap.rb +21 -16
  30. data/lib/nucleon/action/node/destroy.rb +13 -13
  31. data/lib/nucleon/action/node/seed.rb +62 -64
  32. data/lib/nucleon/action/node/status.rb +39 -32
  33. data/locales/en.yml +121 -116
  34. data/spec/spec_helper.rb +1 -4
  35. metadata +111 -641
  36. data/.document +0 -5
  37. data/lib/core/mod/fog_rackspace_server.rb +0 -29
  38. data/lib/core/vagrant/Vagrantfile +0 -10
  39. data/lib/nucleon/action/plugin/template/nucleon.action.erb +0 -56
  40. data/rdoc/site/0.4.29/CORL/Action/Authorize.html +0 -485
  41. data/rdoc/site/0.4.29/CORL/Action/Bootstrap.html +0 -546
  42. data/rdoc/site/0.4.29/CORL/Action/Build.html +0 -396
  43. data/rdoc/site/0.4.29/CORL/Action/Destroy.html +0 -515
  44. data/rdoc/site/0.4.29/CORL/Action/Exec.html +0 -472
  45. data/rdoc/site/0.4.29/CORL/Action/Facts.html +0 -398
  46. data/rdoc/site/0.4.29/CORL/Action/Image.html +0 -515
  47. data/rdoc/site/0.4.29/CORL/Action/Images.html +0 -514
  48. data/rdoc/site/0.4.29/CORL/Action/Ip.html +0 -395
  49. data/rdoc/site/0.4.29/CORL/Action/Keypair.html +0 -494
  50. data/rdoc/site/0.4.29/CORL/Action/Lookup.html +0 -474
  51. data/rdoc/site/0.4.29/CORL/Action/Machines.html +0 -509
  52. data/rdoc/site/0.4.29/CORL/Action/Provision.html +0 -456
  53. data/rdoc/site/0.4.29/CORL/Action/Reboot.html +0 -515
  54. data/rdoc/site/0.4.29/CORL/Action/Regions.html +0 -509
  55. data/rdoc/site/0.4.29/CORL/Action/Revoke.html +0 -483
  56. data/rdoc/site/0.4.29/CORL/Action/Seed.html +0 -544
  57. data/rdoc/site/0.4.29/CORL/Action/Spawn.html +0 -616
  58. data/rdoc/site/0.4.29/CORL/Action/Ssh.html +0 -526
  59. data/rdoc/site/0.4.29/CORL/Action/Start.html +0 -515
  60. data/rdoc/site/0.4.29/CORL/Action/Stop.html +0 -515
  61. data/rdoc/site/0.4.29/CORL/Action/Vagrantfile.html +0 -457
  62. data/rdoc/site/0.4.29/CORL/Action.html +0 -360
  63. data/rdoc/site/0.4.29/CORL/Configuration/File.html +0 -1128
  64. data/rdoc/site/0.4.29/CORL/Configuration.html +0 -339
  65. data/rdoc/site/0.4.29/CORL/Errors.html +0 -339
  66. data/rdoc/site/0.4.29/CORL/Event/Puppet.html +0 -673
  67. data/rdoc/site/0.4.29/CORL/Event.html +0 -339
  68. data/rdoc/site/0.4.29/CORL/Facade.html +0 -742
  69. data/rdoc/site/0.4.29/CORL/Machine/Aws.html +0 -733
  70. data/rdoc/site/0.4.29/CORL/Machine/Fog.html +0 -1269
  71. data/rdoc/site/0.4.29/CORL/Machine/Physical.html +0 -1039
  72. data/rdoc/site/0.4.29/CORL/Machine/Rackspace.html +0 -514
  73. data/rdoc/site/0.4.29/CORL/Machine/Vagrant.html +0 -1300
  74. data/rdoc/site/0.4.29/CORL/Machine.html +0 -343
  75. data/rdoc/site/0.4.29/CORL/Mixin/Action/Keypair.html +0 -572
  76. data/rdoc/site/0.4.29/CORL/Mixin/Action.html +0 -339
  77. data/rdoc/site/0.4.29/CORL/Mixin/Lookup.html +0 -954
  78. data/rdoc/site/0.4.29/CORL/Mixin/Machine/SSH.html +0 -643
  79. data/rdoc/site/0.4.29/CORL/Mixin/Machine.html +0 -339
  80. data/rdoc/site/0.4.29/CORL/Mixin/Macro/NetworkSettings.html +0 -464
  81. data/rdoc/site/0.4.29/CORL/Mixin/Macro.html +0 -339
  82. data/rdoc/site/0.4.29/CORL/Mixin.html +0 -342
  83. data/rdoc/site/0.4.29/CORL/Network/Default.html +0 -391
  84. data/rdoc/site/0.4.29/CORL/Network.html +0 -339
  85. data/rdoc/site/0.4.29/CORL/Node/Aws.html +0 -716
  86. data/rdoc/site/0.4.29/CORL/Node/Fog.html +0 -1192
  87. data/rdoc/site/0.4.29/CORL/Node/Local.html +0 -424
  88. data/rdoc/site/0.4.29/CORL/Node/Rackspace.html +0 -709
  89. data/rdoc/site/0.4.29/CORL/Node/Vagrant.html +0 -1451
  90. data/rdoc/site/0.4.29/CORL/Node.html +0 -343
  91. data/rdoc/site/0.4.29/CORL/Plugin/CloudAction.html +0 -810
  92. data/rdoc/site/0.4.29/CORL/Plugin.html +0 -339
  93. data/rdoc/site/0.4.29/CORL/Provisioner/Puppetnode.html +0 -1095
  94. data/rdoc/site/0.4.29/CORL/Provisioner.html +0 -339
  95. data/rdoc/site/0.4.29/CORL/Template/Environment.html +0 -528
  96. data/rdoc/site/0.4.29/CORL/Template.html +0 -339
  97. data/rdoc/site/0.4.29/CORL/Util/Puppet/Resource.html +0 -1038
  98. data/rdoc/site/0.4.29/CORL/Util/Puppet/ResourceGroup.html +0 -920
  99. data/rdoc/site/0.4.29/CORL/Util/Puppet.html +0 -1087
  100. data/rdoc/site/0.4.29/CORL/Util.html +0 -341
  101. data/rdoc/site/0.4.29/CORL/Vagrant/Config.html +0 -896
  102. data/rdoc/site/0.4.29/CORL/Vagrant.html +0 -418
  103. data/rdoc/site/0.4.29/CORL.html +0 -465
  104. data/rdoc/site/0.4.29/Facter/Util/Loader.html +0 -396
  105. data/rdoc/site/0.4.29/Facter/Util.html +0 -339
  106. data/rdoc/site/0.4.29/Facter.html +0 -339
  107. data/rdoc/site/0.4.29/Fog/Compute/AWS/Server.html +0 -423
  108. data/rdoc/site/0.4.29/Fog/Compute/AWS.html +0 -345
  109. data/rdoc/site/0.4.29/Fog/Compute/RackspaceV2/Server.html +0 -408
  110. data/rdoc/site/0.4.29/Fog/Compute/RackspaceV2.html +0 -345
  111. data/rdoc/site/0.4.29/Fog/Compute.html +0 -340
  112. data/rdoc/site/0.4.29/Fog.html +0 -340
  113. data/rdoc/site/0.4.29/Hiera/Backend.html +0 -422
  114. data/rdoc/site/0.4.29/Hiera/Corl_logger.html +0 -449
  115. data/rdoc/site/0.4.29/Hiera.html +0 -346
  116. data/rdoc/site/0.4.29/Nucleon/Config.html +0 -357
  117. data/rdoc/site/0.4.29/Nucleon/Plugin/Base.html +0 -345
  118. data/rdoc/site/0.4.29/Nucleon/Plugin/Configuration.html +0 -1213
  119. data/rdoc/site/0.4.29/Nucleon/Plugin/Machine.html +0 -1279
  120. data/rdoc/site/0.4.29/Nucleon/Plugin/Network.html +0 -1425
  121. data/rdoc/site/0.4.29/Nucleon/Plugin/Node.html +0 -3715
  122. data/rdoc/site/0.4.29/Nucleon/Plugin/Provisioner.html +0 -1297
  123. data/rdoc/site/0.4.29/Nucleon/Plugin.html +0 -344
  124. data/rdoc/site/0.4.29/Nucleon.html +0 -344
  125. data/rdoc/site/0.4.29/Object.html +0 -358
  126. data/rdoc/site/0.4.29/Puppet/DataBinding/Corl.html +0 -345
  127. data/rdoc/site/0.4.29/Puppet/DataBinding.html +0 -338
  128. data/rdoc/site/0.4.29/Puppet/Indirector/Corl.html +0 -454
  129. data/rdoc/site/0.4.29/Puppet/Indirector.html +0 -338
  130. data/rdoc/site/0.4.29/Puppet/Parser/Functions.html +0 -480
  131. data/rdoc/site/0.4.29/Puppet/Parser.html +0 -338
  132. data/rdoc/site/0.4.29/Puppet.html +0 -338
  133. data/rdoc/site/0.4.29/README_rdoc.html +0 -340
  134. data/rdoc/site/0.4.29/Vagrant/Config/Loader.html +0 -399
  135. data/rdoc/site/0.4.29/Vagrant/Config.html +0 -339
  136. data/rdoc/site/0.4.29/Vagrant/Vagrantfile.html +0 -392
  137. data/rdoc/site/0.4.29/Vagrant.html +0 -346
  138. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Action/DeleteCache.html +0 -396
  139. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Action/InitKeys.html +0 -408
  140. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Action/LinkNetwork.html +0 -406
  141. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Action.html +0 -341
  142. data/rdoc/site/0.4.29/VagrantPlugins/CORL/BaseAction.html +0 -491
  143. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Command/Launcher.html +0 -533
  144. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Command.html +0 -339
  145. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Config/CORL.html +0 -732
  146. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Config.html +0 -339
  147. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Plugin.html +0 -345
  148. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Provisioner/CORL.html +0 -536
  149. data/rdoc/site/0.4.29/VagrantPlugins/CORL/Provisioner.html +0 -339
  150. data/rdoc/site/0.4.29/VagrantPlugins/CORL.html +0 -346
  151. data/rdoc/site/0.4.29/VagrantPlugins.html +0 -346
  152. data/rdoc/site/0.4.29/created.rid +0 -96
  153. data/rdoc/site/0.4.29/images/add.png +0 -0
  154. data/rdoc/site/0.4.29/images/brick.png +0 -0
  155. data/rdoc/site/0.4.29/images/brick_link.png +0 -0
  156. data/rdoc/site/0.4.29/images/bug.png +0 -0
  157. data/rdoc/site/0.4.29/images/bullet_black.png +0 -0
  158. data/rdoc/site/0.4.29/images/bullet_toggle_minus.png +0 -0
  159. data/rdoc/site/0.4.29/images/bullet_toggle_plus.png +0 -0
  160. data/rdoc/site/0.4.29/images/date.png +0 -0
  161. data/rdoc/site/0.4.29/images/delete.png +0 -0
  162. data/rdoc/site/0.4.29/images/find.png +0 -0
  163. data/rdoc/site/0.4.29/images/loadingAnimation.gif +0 -0
  164. data/rdoc/site/0.4.29/images/macFFBgHack.png +0 -0
  165. data/rdoc/site/0.4.29/images/package.png +0 -0
  166. data/rdoc/site/0.4.29/images/page_green.png +0 -0
  167. data/rdoc/site/0.4.29/images/page_white_text.png +0 -0
  168. data/rdoc/site/0.4.29/images/page_white_width.png +0 -0
  169. data/rdoc/site/0.4.29/images/plugin.png +0 -0
  170. data/rdoc/site/0.4.29/images/ruby.png +0 -0
  171. data/rdoc/site/0.4.29/images/tag_blue.png +0 -0
  172. data/rdoc/site/0.4.29/images/tag_green.png +0 -0
  173. data/rdoc/site/0.4.29/images/transparent.png +0 -0
  174. data/rdoc/site/0.4.29/images/wrench.png +0 -0
  175. data/rdoc/site/0.4.29/images/wrench_orange.png +0 -0
  176. data/rdoc/site/0.4.29/images/zoom.png +0 -0
  177. data/rdoc/site/0.4.29/index.html +0 -339
  178. data/rdoc/site/0.4.29/js/darkfish.js +0 -155
  179. data/rdoc/site/0.4.29/js/jquery.js +0 -18
  180. data/rdoc/site/0.4.29/js/navigation.js +0 -142
  181. data/rdoc/site/0.4.29/js/search.js +0 -94
  182. data/rdoc/site/0.4.29/js/search_index.js +0 -1
  183. data/rdoc/site/0.4.29/js/searcher.js +0 -228
  184. data/rdoc/site/0.4.29/rdoc.css +0 -543
  185. data/rdoc/site/0.4.29/table_of_contents.html +0 -1561
  186. data/rdoc/site/0.5.0/CORL/Build.html +0 -757
  187. data/rdoc/site/0.5.0/CORL/Builder/Identity.html +0 -569
  188. data/rdoc/site/0.5.0/CORL/Builder/Package.html +0 -576
  189. data/rdoc/site/0.5.0/CORL/Builder.html +0 -360
  190. data/rdoc/site/0.5.0/CORL/Configuration/File.html +0 -1148
  191. data/rdoc/site/0.5.0/CORL/Configuration.html +0 -359
  192. data/rdoc/site/0.5.0/CORL/Errors.html +0 -359
  193. data/rdoc/site/0.5.0/CORL/Facade.html +0 -899
  194. data/rdoc/site/0.5.0/CORL/Machine/AWS.html +0 -753
  195. data/rdoc/site/0.5.0/CORL/Machine/Fog.html +0 -1289
  196. data/rdoc/site/0.5.0/CORL/Machine/Physical.html +0 -1059
  197. data/rdoc/site/0.5.0/CORL/Machine/Rackspace.html +0 -534
  198. data/rdoc/site/0.5.0/CORL/Machine/Vagrant.html +0 -1320
  199. data/rdoc/site/0.5.0/CORL/Machine.html +0 -363
  200. data/rdoc/site/0.5.0/CORL/Mixin/Action/Keypair.html +0 -592
  201. data/rdoc/site/0.5.0/CORL/Mixin/Action.html +0 -359
  202. data/rdoc/site/0.5.0/CORL/Mixin/Builder/Global.html +0 -604
  203. data/rdoc/site/0.5.0/CORL/Mixin/Builder/Instance.html +0 -696
  204. data/rdoc/site/0.5.0/CORL/Mixin/Builder.html +0 -359
  205. data/rdoc/site/0.5.0/CORL/Mixin/Lookup.html +0 -1139
  206. data/rdoc/site/0.5.0/CORL/Mixin/Machine/SSH.html +0 -675
  207. data/rdoc/site/0.5.0/CORL/Mixin/Machine.html +0 -359
  208. data/rdoc/site/0.5.0/CORL/Mixin/Macro/NetworkSettings.html +0 -484
  209. data/rdoc/site/0.5.0/CORL/Mixin/Macro.html +0 -359
  210. data/rdoc/site/0.5.0/CORL/Mixin.html +0 -363
  211. data/rdoc/site/0.5.0/CORL/Network/CORL.html +0 -411
  212. data/rdoc/site/0.5.0/CORL/Network.html +0 -359
  213. data/rdoc/site/0.5.0/CORL/Node/AWS.html +0 -736
  214. data/rdoc/site/0.5.0/CORL/Node/Fog.html +0 -1212
  215. data/rdoc/site/0.5.0/CORL/Node/Local.html +0 -444
  216. data/rdoc/site/0.5.0/CORL/Node/Rackspace.html +0 -729
  217. data/rdoc/site/0.5.0/CORL/Node/Vagrant.html +0 -1476
  218. data/rdoc/site/0.5.0/CORL/Node.html +0 -363
  219. data/rdoc/site/0.5.0/CORL/Plugin/Builder.html +0 -500
  220. data/rdoc/site/0.5.0/CORL/Plugin/Configuration.html +0 -1271
  221. data/rdoc/site/0.5.0/CORL/Plugin/Machine.html +0 -1299
  222. data/rdoc/site/0.5.0/CORL/Plugin/Network.html +0 -1580
  223. data/rdoc/site/0.5.0/CORL/Plugin/Node.html +0 -4041
  224. data/rdoc/site/0.5.0/CORL/Plugin/Provisioner.html +0 -1115
  225. data/rdoc/site/0.5.0/CORL/Plugin.html +0 -649
  226. data/rdoc/site/0.5.0/CORL/Provisioner/Puppetnode.html +0 -1177
  227. data/rdoc/site/0.5.0/CORL/Provisioner.html +0 -359
  228. data/rdoc/site/0.5.0/CORL/Util/Puppet/Resource.html +0 -1058
  229. data/rdoc/site/0.5.0/CORL/Util/Puppet/ResourceGroup.html +0 -940
  230. data/rdoc/site/0.5.0/CORL/Util/Puppet.html +0 -1107
  231. data/rdoc/site/0.5.0/CORL/Util.html +0 -361
  232. data/rdoc/site/0.5.0/CORL/Vagrant/Config.html +0 -943
  233. data/rdoc/site/0.5.0/CORL/Vagrant.html +0 -438
  234. data/rdoc/site/0.5.0/CORL.html +0 -471
  235. data/rdoc/site/0.5.0/Fog/Compute/AWS/Server.html +0 -443
  236. data/rdoc/site/0.5.0/Fog/Compute/AWS.html +0 -365
  237. data/rdoc/site/0.5.0/Fog/Compute/RackspaceV2/Server.html +0 -428
  238. data/rdoc/site/0.5.0/Fog/Compute/RackspaceV2.html +0 -365
  239. data/rdoc/site/0.5.0/Fog/Compute.html +0 -360
  240. data/rdoc/site/0.5.0/Fog.html +0 -360
  241. data/rdoc/site/0.5.0/Hiera/Backend.html +0 -442
  242. data/rdoc/site/0.5.0/Hiera/Corl_logger.html +0 -469
  243. data/rdoc/site/0.5.0/Hiera.html +0 -366
  244. data/rdoc/site/0.5.0/Nucleon/Action/Cloud/Create.html +0 -538
  245. data/rdoc/site/0.5.0/Nucleon/Action/Cloud/Hiera.html +0 -566
  246. data/rdoc/site/0.5.0/Nucleon/Action/Cloud/Images.html +0 -572
  247. data/rdoc/site/0.5.0/Nucleon/Action/Cloud/Inspect.html +0 -524
  248. data/rdoc/site/0.5.0/Nucleon/Action/Cloud/Machines.html +0 -567
  249. data/rdoc/site/0.5.0/Nucleon/Action/Cloud/Regions.html +0 -567
  250. data/rdoc/site/0.5.0/Nucleon/Action/Cloud/Vagrantfile.html +0 -515
  251. data/rdoc/site/0.5.0/Nucleon/Action/Cloud.html +0 -365
  252. data/rdoc/site/0.5.0/Nucleon/Action/Node/Authorize.html +0 -543
  253. data/rdoc/site/0.5.0/Nucleon/Action/Node/Bootstrap.html +0 -604
  254. data/rdoc/site/0.5.0/Nucleon/Action/Node/Build.html +0 -526
  255. data/rdoc/site/0.5.0/Nucleon/Action/Node/Destroy.html +0 -573
  256. data/rdoc/site/0.5.0/Nucleon/Action/Node/Exec.html +0 -530
  257. data/rdoc/site/0.5.0/Nucleon/Action/Node/Facts.html +0 -456
  258. data/rdoc/site/0.5.0/Nucleon/Action/Node/IP.html +0 -453
  259. data/rdoc/site/0.5.0/Nucleon/Action/Node/Image.html +0 -573
  260. data/rdoc/site/0.5.0/Nucleon/Action/Node/Keypair.html +0 -572
  261. data/rdoc/site/0.5.0/Nucleon/Action/Node/Lookup.html +0 -532
  262. data/rdoc/site/0.5.0/Nucleon/Action/Node/Provision.html +0 -553
  263. data/rdoc/site/0.5.0/Nucleon/Action/Node/Reboot.html +0 -573
  264. data/rdoc/site/0.5.0/Nucleon/Action/Node/Revoke.html +0 -541
  265. data/rdoc/site/0.5.0/Nucleon/Action/Node/SSH.html +0 -583
  266. data/rdoc/site/0.5.0/Nucleon/Action/Node/Seed.html +0 -602
  267. data/rdoc/site/0.5.0/Nucleon/Action/Node/Spawn.html +0 -675
  268. data/rdoc/site/0.5.0/Nucleon/Action/Node/Start.html +0 -573
  269. data/rdoc/site/0.5.0/Nucleon/Action/Node/Stop.html +0 -573
  270. data/rdoc/site/0.5.0/Nucleon/Action/Node.html +0 -376
  271. data/rdoc/site/0.5.0/Nucleon/Action.html +0 -383
  272. data/rdoc/site/0.5.0/Nucleon/Config.html +0 -377
  273. data/rdoc/site/0.5.0/Nucleon/Event/Puppet.html +0 -693
  274. data/rdoc/site/0.5.0/Nucleon/Event.html +0 -359
  275. data/rdoc/site/0.5.0/Nucleon/Plugin/Base.html +0 -365
  276. data/rdoc/site/0.5.0/Nucleon/Plugin/CloudAction.html +0 -838
  277. data/rdoc/site/0.5.0/Nucleon/Plugin.html +0 -360
  278. data/rdoc/site/0.5.0/Nucleon/Template/Environment.html +0 -548
  279. data/rdoc/site/0.5.0/Nucleon/Template.html +0 -359
  280. data/rdoc/site/0.5.0/Nucleon.html +0 -387
  281. data/rdoc/site/0.5.0/Object.html +0 -378
  282. data/rdoc/site/0.5.0/Puppet/DataBinding/Corl.html +0 -365
  283. data/rdoc/site/0.5.0/Puppet/DataBinding.html +0 -358
  284. data/rdoc/site/0.5.0/Puppet/Indirector/Corl.html +0 -477
  285. data/rdoc/site/0.5.0/Puppet/Indirector.html +0 -358
  286. data/rdoc/site/0.5.0/Puppet/Parser/Functions.html +0 -500
  287. data/rdoc/site/0.5.0/Puppet/Parser.html +0 -358
  288. data/rdoc/site/0.5.0/Puppet.html +0 -358
  289. data/rdoc/site/0.5.0/README_rdoc.html +0 -360
  290. data/rdoc/site/0.5.0/Vagrant/Config/Loader.html +0 -419
  291. data/rdoc/site/0.5.0/Vagrant/Config.html +0 -359
  292. data/rdoc/site/0.5.0/Vagrant/Vagrantfile.html +0 -412
  293. data/rdoc/site/0.5.0/Vagrant.html +0 -366
  294. data/rdoc/site/0.5.0/VagrantPlugins/CORL/Action/DeleteCache.html +0 -422
  295. data/rdoc/site/0.5.0/VagrantPlugins/CORL/Action/InitKeys.html +0 -428
  296. data/rdoc/site/0.5.0/VagrantPlugins/CORL/Action/LinkNetwork.html +0 -426
  297. data/rdoc/site/0.5.0/VagrantPlugins/CORL/Action.html +0 -361
  298. data/rdoc/site/0.5.0/VagrantPlugins/CORL/BaseAction.html +0 -511
  299. data/rdoc/site/0.5.0/VagrantPlugins/CORL/Command/Launcher.html +0 -553
  300. data/rdoc/site/0.5.0/VagrantPlugins/CORL/Command.html +0 -359
  301. data/rdoc/site/0.5.0/VagrantPlugins/CORL/Config/CORL.html +0 -752
  302. data/rdoc/site/0.5.0/VagrantPlugins/CORL/Config.html +0 -359
  303. data/rdoc/site/0.5.0/VagrantPlugins/CORL/Plugin.html +0 -365
  304. data/rdoc/site/0.5.0/VagrantPlugins/CORL/Provisioner/CORL.html +0 -556
  305. data/rdoc/site/0.5.0/VagrantPlugins/CORL/Provisioner.html +0 -359
  306. data/rdoc/site/0.5.0/VagrantPlugins/CORL.html +0 -366
  307. data/rdoc/site/0.5.0/VagrantPlugins.html +0 -366
  308. data/rdoc/site/0.5.0/created.rid +0 -103
  309. data/rdoc/site/0.5.0/images/add.png +0 -0
  310. data/rdoc/site/0.5.0/images/brick.png +0 -0
  311. data/rdoc/site/0.5.0/images/brick_link.png +0 -0
  312. data/rdoc/site/0.5.0/images/bug.png +0 -0
  313. data/rdoc/site/0.5.0/images/bullet_black.png +0 -0
  314. data/rdoc/site/0.5.0/images/bullet_toggle_minus.png +0 -0
  315. data/rdoc/site/0.5.0/images/bullet_toggle_plus.png +0 -0
  316. data/rdoc/site/0.5.0/images/date.png +0 -0
  317. data/rdoc/site/0.5.0/images/delete.png +0 -0
  318. data/rdoc/site/0.5.0/images/find.png +0 -0
  319. data/rdoc/site/0.5.0/images/loadingAnimation.gif +0 -0
  320. data/rdoc/site/0.5.0/images/macFFBgHack.png +0 -0
  321. data/rdoc/site/0.5.0/images/package.png +0 -0
  322. data/rdoc/site/0.5.0/images/page_green.png +0 -0
  323. data/rdoc/site/0.5.0/images/page_white_text.png +0 -0
  324. data/rdoc/site/0.5.0/images/page_white_width.png +0 -0
  325. data/rdoc/site/0.5.0/images/plugin.png +0 -0
  326. data/rdoc/site/0.5.0/images/ruby.png +0 -0
  327. data/rdoc/site/0.5.0/images/tag_blue.png +0 -0
  328. data/rdoc/site/0.5.0/images/tag_green.png +0 -0
  329. data/rdoc/site/0.5.0/images/transparent.png +0 -0
  330. data/rdoc/site/0.5.0/images/wrench.png +0 -0
  331. data/rdoc/site/0.5.0/images/wrench_orange.png +0 -0
  332. data/rdoc/site/0.5.0/images/zoom.png +0 -0
  333. data/rdoc/site/0.5.0/index.html +0 -359
  334. data/rdoc/site/0.5.0/js/darkfish.js +0 -155
  335. data/rdoc/site/0.5.0/js/jquery.js +0 -18
  336. data/rdoc/site/0.5.0/js/navigation.js +0 -142
  337. data/rdoc/site/0.5.0/js/search.js +0 -94
  338. data/rdoc/site/0.5.0/js/search_index.js +0 -1
  339. data/rdoc/site/0.5.0/js/searcher.js +0 -228
  340. data/rdoc/site/0.5.0/rdoc.css +0 -543
  341. data/rdoc/site/0.5.0/table_of_contents.html +0 -1797
  342. data/rdoc/site/0.5.1/CORL/Build.html +0 -781
  343. data/rdoc/site/0.5.1/CORL/Builder/Identity.html +0 -596
  344. data/rdoc/site/0.5.1/CORL/Builder/Package.html +0 -600
  345. data/rdoc/site/0.5.1/CORL/Builder.html +0 -384
  346. data/rdoc/site/0.5.1/CORL/Configuration/File.html +0 -1186
  347. data/rdoc/site/0.5.1/CORL/Configuration.html +0 -383
  348. data/rdoc/site/0.5.1/CORL/Errors.html +0 -383
  349. data/rdoc/site/0.5.1/CORL/Facade.html +0 -927
  350. data/rdoc/site/0.5.1/CORL/Machine/AWS.html +0 -777
  351. data/rdoc/site/0.5.1/CORL/Machine/Fog.html +0 -1313
  352. data/rdoc/site/0.5.1/CORL/Machine/Physical.html +0 -1083
  353. data/rdoc/site/0.5.1/CORL/Machine/Rackspace.html +0 -558
  354. data/rdoc/site/0.5.1/CORL/Machine/Vagrant.html +0 -1344
  355. data/rdoc/site/0.5.1/CORL/Machine.html +0 -387
  356. data/rdoc/site/0.5.1/CORL/Mixin/Action/Keypair.html +0 -616
  357. data/rdoc/site/0.5.1/CORL/Mixin/Action/Registration.html +0 -469
  358. data/rdoc/site/0.5.1/CORL/Mixin/Action.html +0 -384
  359. data/rdoc/site/0.5.1/CORL/Mixin/Builder/Global.html +0 -628
  360. data/rdoc/site/0.5.1/CORL/Mixin/Builder/Instance.html +0 -720
  361. data/rdoc/site/0.5.1/CORL/Mixin/Builder.html +0 -383
  362. data/rdoc/site/0.5.1/CORL/Mixin/Lookup.html +0 -1315
  363. data/rdoc/site/0.5.1/CORL/Mixin/Machine/SSH.html +0 -699
  364. data/rdoc/site/0.5.1/CORL/Mixin/Machine.html +0 -383
  365. data/rdoc/site/0.5.1/CORL/Mixin/Macro/NetworkSettings.html +0 -508
  366. data/rdoc/site/0.5.1/CORL/Mixin/Macro.html +0 -383
  367. data/rdoc/site/0.5.1/CORL/Mixin.html +0 -388
  368. data/rdoc/site/0.5.1/CORL/Network/CORL.html +0 -435
  369. data/rdoc/site/0.5.1/CORL/Network.html +0 -383
  370. data/rdoc/site/0.5.1/CORL/Node/AWS.html +0 -760
  371. data/rdoc/site/0.5.1/CORL/Node/Fog.html +0 -1268
  372. data/rdoc/site/0.5.1/CORL/Node/Local.html +0 -468
  373. data/rdoc/site/0.5.1/CORL/Node/Rackspace.html +0 -753
  374. data/rdoc/site/0.5.1/CORL/Node/Vagrant.html +0 -1497
  375. data/rdoc/site/0.5.1/CORL/Node.html +0 -387
  376. data/rdoc/site/0.5.1/CORL/Plugin/Builder.html +0 -524
  377. data/rdoc/site/0.5.1/CORL/Plugin/Configuration.html +0 -1294
  378. data/rdoc/site/0.5.1/CORL/Plugin/Machine.html +0 -1323
  379. data/rdoc/site/0.5.1/CORL/Plugin/Network.html +0 -1766
  380. data/rdoc/site/0.5.1/CORL/Plugin/Node.html +0 -4263
  381. data/rdoc/site/0.5.1/CORL/Plugin/Provisioner.html +0 -1139
  382. data/rdoc/site/0.5.1/CORL/Plugin.html +0 -673
  383. data/rdoc/site/0.5.1/CORL/Provisioner/Puppetnode.html +0 -1201
  384. data/rdoc/site/0.5.1/CORL/Provisioner.html +0 -383
  385. data/rdoc/site/0.5.1/CORL/Util/Puppet/Resource.html +0 -1082
  386. data/rdoc/site/0.5.1/CORL/Util/Puppet/ResourceGroup.html +0 -964
  387. data/rdoc/site/0.5.1/CORL/Util/Puppet.html +0 -1131
  388. data/rdoc/site/0.5.1/CORL/Util.html +0 -385
  389. data/rdoc/site/0.5.1/CORL/Vagrant/Config.html +0 -967
  390. data/rdoc/site/0.5.1/CORL/Vagrant.html +0 -462
  391. data/rdoc/site/0.5.1/CORL.html +0 -496
  392. data/rdoc/site/0.5.1/Fog/Compute/AWS/Server.html +0 -467
  393. data/rdoc/site/0.5.1/Fog/Compute/AWS.html +0 -389
  394. data/rdoc/site/0.5.1/Fog/Compute/RackspaceV2/Server.html +0 -452
  395. data/rdoc/site/0.5.1/Fog/Compute/RackspaceV2.html +0 -389
  396. data/rdoc/site/0.5.1/Fog/Compute.html +0 -384
  397. data/rdoc/site/0.5.1/Fog.html +0 -384
  398. data/rdoc/site/0.5.1/Hiera/Backend.html +0 -466
  399. data/rdoc/site/0.5.1/Hiera/Corl_logger.html +0 -493
  400. data/rdoc/site/0.5.1/Hiera.html +0 -390
  401. data/rdoc/site/0.5.1/Nucleon/Action/Cloud/Config.html +0 -978
  402. data/rdoc/site/0.5.1/Nucleon/Action/Cloud/Create.html +0 -562
  403. data/rdoc/site/0.5.1/Nucleon/Action/Cloud/Images.html +0 -596
  404. data/rdoc/site/0.5.1/Nucleon/Action/Cloud/Inspect.html +0 -567
  405. data/rdoc/site/0.5.1/Nucleon/Action/Cloud/Machines.html +0 -591
  406. data/rdoc/site/0.5.1/Nucleon/Action/Cloud/Regions.html +0 -591
  407. data/rdoc/site/0.5.1/Nucleon/Action/Cloud/Settings.html +0 -878
  408. data/rdoc/site/0.5.1/Nucleon/Action/Cloud/Vagrantfile.html +0 -539
  409. data/rdoc/site/0.5.1/Nucleon/Action/Cloud.html +0 -390
  410. data/rdoc/site/0.5.1/Nucleon/Action/Node/Authorize.html +0 -567
  411. data/rdoc/site/0.5.1/Nucleon/Action/Node/Bootstrap.html +0 -628
  412. data/rdoc/site/0.5.1/Nucleon/Action/Node/Build.html +0 -550
  413. data/rdoc/site/0.5.1/Nucleon/Action/Node/Cache.html +0 -773
  414. data/rdoc/site/0.5.1/Nucleon/Action/Node/Destroy.html +0 -597
  415. data/rdoc/site/0.5.1/Nucleon/Action/Node/Exec.html +0 -554
  416. data/rdoc/site/0.5.1/Nucleon/Action/Node/Fact.html +0 -733
  417. data/rdoc/site/0.5.1/Nucleon/Action/Node/Facts.html +0 -505
  418. data/rdoc/site/0.5.1/Nucleon/Action/Node/Group.html +0 -729
  419. data/rdoc/site/0.5.1/Nucleon/Action/Node/Groups.html +0 -505
  420. data/rdoc/site/0.5.1/Nucleon/Action/Node/IP.html +0 -477
  421. data/rdoc/site/0.5.1/Nucleon/Action/Node/Identity.html +0 -614
  422. data/rdoc/site/0.5.1/Nucleon/Action/Node/Image.html +0 -597
  423. data/rdoc/site/0.5.1/Nucleon/Action/Node/Keypair.html +0 -596
  424. data/rdoc/site/0.5.1/Nucleon/Action/Node/Lookup.html +0 -579
  425. data/rdoc/site/0.5.1/Nucleon/Action/Node/Provision.html +0 -577
  426. data/rdoc/site/0.5.1/Nucleon/Action/Node/Reboot.html +0 -597
  427. data/rdoc/site/0.5.1/Nucleon/Action/Node/Revoke.html +0 -565
  428. data/rdoc/site/0.5.1/Nucleon/Action/Node/SSH.html +0 -607
  429. data/rdoc/site/0.5.1/Nucleon/Action/Node/Seed.html +0 -626
  430. data/rdoc/site/0.5.1/Nucleon/Action/Node/Spawn.html +0 -699
  431. data/rdoc/site/0.5.1/Nucleon/Action/Node/Start.html +0 -597
  432. data/rdoc/site/0.5.1/Nucleon/Action/Node/Status.html +0 -615
  433. data/rdoc/site/0.5.1/Nucleon/Action/Node/Stop.html +0 -597
  434. data/rdoc/site/0.5.1/Nucleon/Action/Node.html +0 -406
  435. data/rdoc/site/0.5.1/Nucleon/Action/Plugin/Create.html +0 -736
  436. data/rdoc/site/0.5.1/Nucleon/Action/Plugin/List.html +0 -570
  437. data/rdoc/site/0.5.1/Nucleon/Action/Plugin.html +0 -384
  438. data/rdoc/site/0.5.1/Nucleon/Action/Plugins.html +0 -435
  439. data/rdoc/site/0.5.1/Nucleon/Action.html +0 -417
  440. data/rdoc/site/0.5.1/Nucleon/Config.html +0 -401
  441. data/rdoc/site/0.5.1/Nucleon/Event/Puppet.html +0 -717
  442. data/rdoc/site/0.5.1/Nucleon/Event.html +0 -383
  443. data/rdoc/site/0.5.1/Nucleon/Plugin/Base.html +0 -389
  444. data/rdoc/site/0.5.1/Nucleon/Plugin/CloudAction.html +0 -894
  445. data/rdoc/site/0.5.1/Nucleon/Plugin.html +0 -384
  446. data/rdoc/site/0.5.1/Nucleon/Template/Environment.html +0 -572
  447. data/rdoc/site/0.5.1/Nucleon/Template.html +0 -383
  448. data/rdoc/site/0.5.1/Nucleon.html +0 -421
  449. data/rdoc/site/0.5.1/Object.html +0 -402
  450. data/rdoc/site/0.5.1/Puppet/DataBinding/Corl.html +0 -389
  451. data/rdoc/site/0.5.1/Puppet/DataBinding.html +0 -382
  452. data/rdoc/site/0.5.1/Puppet/Indirector/Corl.html +0 -501
  453. data/rdoc/site/0.5.1/Puppet/Indirector.html +0 -382
  454. data/rdoc/site/0.5.1/Puppet/Parser/Functions.html +0 -524
  455. data/rdoc/site/0.5.1/Puppet/Parser.html +0 -382
  456. data/rdoc/site/0.5.1/Puppet.html +0 -382
  457. data/rdoc/site/0.5.1/README_rdoc.html +0 -384
  458. data/rdoc/site/0.5.1/Vagrant/Config/Loader.html +0 -443
  459. data/rdoc/site/0.5.1/Vagrant/Config.html +0 -383
  460. data/rdoc/site/0.5.1/Vagrant/Vagrantfile.html +0 -436
  461. data/rdoc/site/0.5.1/Vagrant.html +0 -390
  462. data/rdoc/site/0.5.1/VagrantPlugins/CORL/Action/DeleteCache.html +0 -446
  463. data/rdoc/site/0.5.1/VagrantPlugins/CORL/Action/InitKeys.html +0 -452
  464. data/rdoc/site/0.5.1/VagrantPlugins/CORL/Action/LinkNetwork.html +0 -450
  465. data/rdoc/site/0.5.1/VagrantPlugins/CORL/Action.html +0 -385
  466. data/rdoc/site/0.5.1/VagrantPlugins/CORL/BaseAction.html +0 -535
  467. data/rdoc/site/0.5.1/VagrantPlugins/CORL/Command/Launcher.html +0 -577
  468. data/rdoc/site/0.5.1/VagrantPlugins/CORL/Command.html +0 -383
  469. data/rdoc/site/0.5.1/VagrantPlugins/CORL/Config/CORL.html +0 -776
  470. data/rdoc/site/0.5.1/VagrantPlugins/CORL/Config.html +0 -383
  471. data/rdoc/site/0.5.1/VagrantPlugins/CORL/Plugin.html +0 -389
  472. data/rdoc/site/0.5.1/VagrantPlugins/CORL/Provisioner/CORL.html +0 -580
  473. data/rdoc/site/0.5.1/VagrantPlugins/CORL/Provisioner.html +0 -383
  474. data/rdoc/site/0.5.1/VagrantPlugins/CORL.html +0 -390
  475. data/rdoc/site/0.5.1/VagrantPlugins.html +0 -390
  476. data/rdoc/site/0.5.1/created.rid +0 -114
  477. data/rdoc/site/0.5.1/images/add.png +0 -0
  478. data/rdoc/site/0.5.1/images/brick.png +0 -0
  479. data/rdoc/site/0.5.1/images/brick_link.png +0 -0
  480. data/rdoc/site/0.5.1/images/bug.png +0 -0
  481. data/rdoc/site/0.5.1/images/bullet_black.png +0 -0
  482. data/rdoc/site/0.5.1/images/bullet_toggle_minus.png +0 -0
  483. data/rdoc/site/0.5.1/images/bullet_toggle_plus.png +0 -0
  484. data/rdoc/site/0.5.1/images/date.png +0 -0
  485. data/rdoc/site/0.5.1/images/delete.png +0 -0
  486. data/rdoc/site/0.5.1/images/find.png +0 -0
  487. data/rdoc/site/0.5.1/images/loadingAnimation.gif +0 -0
  488. data/rdoc/site/0.5.1/images/macFFBgHack.png +0 -0
  489. data/rdoc/site/0.5.1/images/package.png +0 -0
  490. data/rdoc/site/0.5.1/images/page_green.png +0 -0
  491. data/rdoc/site/0.5.1/images/page_white_text.png +0 -0
  492. data/rdoc/site/0.5.1/images/page_white_width.png +0 -0
  493. data/rdoc/site/0.5.1/images/plugin.png +0 -0
  494. data/rdoc/site/0.5.1/images/ruby.png +0 -0
  495. data/rdoc/site/0.5.1/images/tag_blue.png +0 -0
  496. data/rdoc/site/0.5.1/images/tag_green.png +0 -0
  497. data/rdoc/site/0.5.1/images/transparent.png +0 -0
  498. data/rdoc/site/0.5.1/images/wrench.png +0 -0
  499. data/rdoc/site/0.5.1/images/wrench_orange.png +0 -0
  500. data/rdoc/site/0.5.1/images/zoom.png +0 -0
  501. data/rdoc/site/0.5.1/index.html +0 -383
  502. data/rdoc/site/0.5.1/js/darkfish.js +0 -155
  503. data/rdoc/site/0.5.1/js/jquery.js +0 -18
  504. data/rdoc/site/0.5.1/js/navigation.js +0 -142
  505. data/rdoc/site/0.5.1/js/search.js +0 -94
  506. data/rdoc/site/0.5.1/js/search_index.js +0 -1
  507. data/rdoc/site/0.5.1/js/searcher.js +0 -228
  508. data/rdoc/site/0.5.1/rdoc.css +0 -543
  509. data/rdoc/site/0.5.1/table_of_contents.html +0 -2005
  510. data/spec/corl_mock_input.rb +0 -29
  511. data/spec/corl_test_kernel.rb +0 -22
@@ -1,3715 +0,0 @@
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::Node - 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/node.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-action">#action</a>
92
-
93
- <li><a href="#method-i-attach_keys">#attach_keys</a>
94
-
95
- <li><a href="#method-i-bootstrap">#bootstrap</a>
96
-
97
- <li><a href="#method-i-bootstrap_script">#bootstrap_script</a>
98
-
99
- <li><a href="#method-i-bootstrap_script-3D">#bootstrap_script=</a>
100
-
101
- <li><a href="#method-i-build">#build</a>
102
-
103
- <li><a href="#method-i-build_time">#build_time</a>
104
-
105
- <li><a href="#method-i-build_time-3D">#build_time=</a>
106
-
107
- <li><a href="#method-i-cli">#cli</a>
108
-
109
- <li><a href="#method-i-cli_capture">#cli_capture</a>
110
-
111
- <li><a href="#method-i-cli_check">#cli_check</a>
112
-
113
- <li><a href="#method-i-command">#command</a>
114
-
115
- <li><a href="#method-i-create">#create</a>
116
-
117
- <li><a href="#method-i-create_image">#create_image</a>
118
-
119
- <li><a href="#method-i-create_machine">#create_machine</a>
120
-
121
- <li><a href="#method-i-custom_facts">#custom_facts</a>
122
-
123
- <li><a href="#method-i-custom_facts-3D">#custom_facts=</a>
124
-
125
- <li><a href="#method-i-delete_keys">#delete_keys</a>
126
-
127
- <li><a href="#method-i-destroy">#destroy</a>
128
-
129
- <li><a href="#method-i-download">#download</a>
130
-
131
- <li><a href="#method-i-exec">#exec</a>
132
-
133
- <li><a href="#method-i-filter_output">#filter_output</a>
134
-
135
- <li><a href="#method-i-hiera_facts">#hiera_facts</a>
136
-
137
- <li><a href="#method-i-hiera_override_dir">#hiera_override_dir</a>
138
-
139
- <li><a href="#method-i-home">#home</a>
140
-
141
- <li><a href="#method-i-hostname">#hostname</a>
142
-
143
- <li><a href="#method-i-id">#id</a>
144
-
145
- <li><a href="#method-i-image">#image</a>
146
-
147
- <li><a href="#method-i-image-3D">#image=</a>
148
-
149
- <li><a href="#method-i-image_id">#image_id</a>
150
-
151
- <li><a href="#method-i-image_search_text">#image_search_text</a>
152
-
153
- <li><a href="#method-i-images">#images</a>
154
-
155
- <li><a href="#method-i-local-3F">#local?</a>
156
-
157
- <li><a href="#method-i-local_machine">#local_machine</a>
158
-
159
- <li><a href="#method-i-local_machine-3D">#local_machine=</a>
160
-
161
- <li><a href="#method-i-localize">#localize</a>
162
-
163
- <li><a href="#method-i-lookup_array">#lookup_array</a>
164
-
165
- <li><a href="#method-i-lookup_config">#lookup_config</a>
166
-
167
- <li><a href="#method-i-lookup_facts">#lookup_facts</a>
168
-
169
- <li><a href="#method-i-lookup_hash">#lookup_hash</a>
170
-
171
- <li><a href="#method-i-machine">#machine</a>
172
-
173
- <li><a href="#method-i-machine-3D">#machine=</a>
174
-
175
- <li><a href="#method-i-machine_config">#machine_config</a>
176
-
177
- <li><a href="#method-i-machine_type">#machine_type</a>
178
-
179
- <li><a href="#method-i-machine_type_id">#machine_type_id</a>
180
-
181
- <li><a href="#method-i-machine_types">#machine_types</a>
182
-
183
- <li><a href="#method-i-method_missing">#method_missing</a>
184
-
185
- <li><a href="#method-i-normalize">#normalize</a>
186
-
187
- <li><a href="#method-i-private_ip">#private_ip</a>
188
-
189
- <li><a href="#method-i-private_key">#private_key</a>
190
-
191
- <li><a href="#method-i-private_key-3D">#private_key=</a>
192
-
193
- <li><a href="#method-i-profiles">#profiles</a>
194
-
195
- <li><a href="#method-i-profiles-3D">#profiles=</a>
196
-
197
- <li><a href="#method-i-provisioner_info">#provisioner_info</a>
198
-
199
- <li><a href="#method-i-provisioners">#provisioners</a>
200
-
201
- <li><a href="#method-i-public_ip">#public_ip</a>
202
-
203
- <li><a href="#method-i-public_key">#public_key</a>
204
-
205
- <li><a href="#method-i-public_key-3D">#public_key=</a>
206
-
207
- <li><a href="#method-i-reload">#reload</a>
208
-
209
- <li><a href="#method-i-remove_plugin">#remove_plugin</a>
210
-
211
- <li><a href="#method-i-render_image">#render_image</a>
212
-
213
- <li><a href="#method-i-render_machine_type">#render_machine_type</a>
214
-
215
- <li><a href="#method-i-run">#run</a>
216
-
217
- <li><a href="#method-i-save">#save</a>
218
-
219
- <li><a href="#method-i-send_files">#send_files</a>
220
-
221
- <li><a href="#method-i-ssh_path">#ssh_path</a>
222
-
223
- <li><a href="#method-i-ssh_port">#ssh_port</a>
224
-
225
- <li><a href="#method-i-ssh_port-3D">#ssh_port=</a>
226
-
227
- <li><a href="#method-i-start">#start</a>
228
-
229
- <li><a href="#method-i-state">#state</a>
230
-
231
- <li><a href="#method-i-stop">#stop</a>
232
-
233
- <li><a href="#method-i-terminal">#terminal</a>
234
-
235
- <li><a href="#method-i-translate_reference">#translate_reference</a>
236
-
237
- <li><a href="#method-i-upload">#upload</a>
238
-
239
- <li><a href="#method-i-usable_image-3F">#usable_image?</a>
240
-
241
- <li><a href="#method-i-user">#user</a>
242
-
243
- <li><a href="#method-i-user-3D">#user=</a>
244
-
245
- </ul>
246
- </nav>
247
-
248
- </div>
249
-
250
- <div id="project-metadata">
251
- <nav id="fileindex-section" class="section project-section">
252
- <h3 class="section-header">Pages</h3>
253
-
254
- <ul>
255
-
256
- <li class="file"><a href="../../README_rdoc.html">README</a>
257
-
258
- </ul>
259
- </nav>
260
-
261
- <nav id="classindex-section" class="section project-section">
262
- <h3 class="section-header">Class and Module Index</h3>
263
-
264
- <ul class="link-list">
265
-
266
- <li><a href="../../CORL.html">CORL</a>
267
-
268
- <li><a href="../../CORL/Action.html">CORL::Action</a>
269
-
270
- <li><a href="../../CORL/Action/Authorize.html">CORL::Action::Authorize</a>
271
-
272
- <li><a href="../../CORL/Action/Bootstrap.html">CORL::Action::Bootstrap</a>
273
-
274
- <li><a href="../../CORL/Action/Build.html">CORL::Action::Build</a>
275
-
276
- <li><a href="../../CORL/Action/Destroy.html">CORL::Action::Destroy</a>
277
-
278
- <li><a href="../../CORL/Action/Exec.html">CORL::Action::Exec</a>
279
-
280
- <li><a href="../../CORL/Action/Facts.html">CORL::Action::Facts</a>
281
-
282
- <li><a href="../../CORL/Action/Image.html">CORL::Action::Image</a>
283
-
284
- <li><a href="../../CORL/Action/Images.html">CORL::Action::Images</a>
285
-
286
- <li><a href="../../CORL/Action/Ip.html">CORL::Action::Ip</a>
287
-
288
- <li><a href="../../CORL/Action/Keypair.html">CORL::Action::Keypair</a>
289
-
290
- <li><a href="../../CORL/Action/Lookup.html">CORL::Action::Lookup</a>
291
-
292
- <li><a href="../../CORL/Action/Machines.html">CORL::Action::Machines</a>
293
-
294
- <li><a href="../../CORL/Action/Provision.html">CORL::Action::Provision</a>
295
-
296
- <li><a href="../../CORL/Action/Reboot.html">CORL::Action::Reboot</a>
297
-
298
- <li><a href="../../CORL/Action/Regions.html">CORL::Action::Regions</a>
299
-
300
- <li><a href="../../CORL/Action/Revoke.html">CORL::Action::Revoke</a>
301
-
302
- <li><a href="../../CORL/Action/Seed.html">CORL::Action::Seed</a>
303
-
304
- <li><a href="../../CORL/Action/Spawn.html">CORL::Action::Spawn</a>
305
-
306
- <li><a href="../../CORL/Action/Ssh.html">CORL::Action::Ssh</a>
307
-
308
- <li><a href="../../CORL/Action/Start.html">CORL::Action::Start</a>
309
-
310
- <li><a href="../../CORL/Action/Stop.html">CORL::Action::Stop</a>
311
-
312
- <li><a href="../../CORL/Action/Vagrantfile.html">CORL::Action::Vagrantfile</a>
313
-
314
- <li><a href="../../CORL/Configuration.html">CORL::Configuration</a>
315
-
316
- <li><a href="../../CORL/Configuration/File.html">CORL::Configuration::File</a>
317
-
318
- <li><a href="../../CORL/Errors.html">CORL::Errors</a>
319
-
320
- <li><a href="../../CORL/Event.html">CORL::Event</a>
321
-
322
- <li><a href="../../CORL/Event/Puppet.html">CORL::Event::Puppet</a>
323
-
324
- <li><a href="../../CORL/Facade.html">CORL::Facade</a>
325
-
326
- <li><a href="../../CORL/Machine.html">CORL::Machine</a>
327
-
328
- <li><a href="../../CORL/Machine/Aws.html">CORL::Machine::Aws</a>
329
-
330
- <li><a href="../../CORL/Machine/Fog.html">CORL::Machine::Fog</a>
331
-
332
- <li><a href="../../CORL/Machine/Physical.html">CORL::Machine::Physical</a>
333
-
334
- <li><a href="../../CORL/Machine/Rackspace.html">CORL::Machine::Rackspace</a>
335
-
336
- <li><a href="../../CORL/Machine/Vagrant.html">CORL::Machine::Vagrant</a>
337
-
338
- <li><a href="../../CORL/Mixin.html">CORL::Mixin</a>
339
-
340
- <li><a href="../../CORL/Mixin/Action.html">CORL::Mixin::Action</a>
341
-
342
- <li><a href="../../CORL/Mixin/Action/Keypair.html">CORL::Mixin::Action::Keypair</a>
343
-
344
- <li><a href="../../CORL/Mixin/Lookup.html">CORL::Mixin::Lookup</a>
345
-
346
- <li><a href="../../CORL/Mixin/Machine.html">CORL::Mixin::Machine</a>
347
-
348
- <li><a href="../../CORL/Mixin/Machine/SSH.html">CORL::Mixin::Machine::SSH</a>
349
-
350
- <li><a href="../../CORL/Mixin/Macro.html">CORL::Mixin::Macro</a>
351
-
352
- <li><a href="../../CORL/Mixin/Macro/NetworkSettings.html">CORL::Mixin::Macro::NetworkSettings</a>
353
-
354
- <li><a href="../../CORL/Network.html">CORL::Network</a>
355
-
356
- <li><a href="../../CORL/Network/Default.html">CORL::Network::Default</a>
357
-
358
- <li><a href="../../CORL/Node.html">CORL::Node</a>
359
-
360
- <li><a href="../../CORL/Node/Aws.html">CORL::Node::Aws</a>
361
-
362
- <li><a href="../../CORL/Node/Fog.html">CORL::Node::Fog</a>
363
-
364
- <li><a href="../../CORL/Node/Local.html">CORL::Node::Local</a>
365
-
366
- <li><a href="../../CORL/Node/Rackspace.html">CORL::Node::Rackspace</a>
367
-
368
- <li><a href="../../CORL/Node/Vagrant.html">CORL::Node::Vagrant</a>
369
-
370
- <li><a href="../../CORL/Plugin.html">CORL::Plugin</a>
371
-
372
- <li><a href="../../CORL/Plugin/CloudAction.html">CORL::Plugin::CloudAction</a>
373
-
374
- <li><a href="../../CORL/Provisioner.html">CORL::Provisioner</a>
375
-
376
- <li><a href="../../CORL/Provisioner/Puppetnode.html">CORL::Provisioner::Puppetnode</a>
377
-
378
- <li><a href="../../CORL/Template.html">CORL::Template</a>
379
-
380
- <li><a href="../../CORL/Template/Environment.html">CORL::Template::Environment</a>
381
-
382
- <li><a href="../../CORL/Util.html">CORL::Util</a>
383
-
384
- <li><a href="../../CORL/Util/Puppet.html">CORL::Util::Puppet</a>
385
-
386
- <li><a href="../../CORL/Util/Puppet/Resource.html">CORL::Util::Puppet::Resource</a>
387
-
388
- <li><a href="../../CORL/Util/Puppet/ResourceGroup.html">CORL::Util::Puppet::ResourceGroup</a>
389
-
390
- <li><a href="../../CORL/Vagrant.html">CORL::Vagrant</a>
391
-
392
- <li><a href="../../CORL/Vagrant/Config.html">CORL::Vagrant::Config</a>
393
-
394
- <li><a href="../../VagrantPlugins.html">VagrantPlugins</a>
395
-
396
- <li><a href="../../VagrantPlugins/CORL.html">VagrantPlugins::CORL</a>
397
-
398
- <li><a href="../../VagrantPlugins/CORL/Action.html">VagrantPlugins::CORL::Action</a>
399
-
400
- <li><a href="../../VagrantPlugins/CORL/Action/DeleteCache.html">VagrantPlugins::CORL::Action::DeleteCache</a>
401
-
402
- <li><a href="../../VagrantPlugins/CORL/Action/InitKeys.html">VagrantPlugins::CORL::Action::InitKeys</a>
403
-
404
- <li><a href="../../VagrantPlugins/CORL/Action/LinkNetwork.html">VagrantPlugins::CORL::Action::LinkNetwork</a>
405
-
406
- <li><a href="../../VagrantPlugins/CORL/BaseAction.html">VagrantPlugins::CORL::BaseAction</a>
407
-
408
- <li><a href="../../VagrantPlugins/CORL/Command.html">VagrantPlugins::CORL::Command</a>
409
-
410
- <li><a href="../../VagrantPlugins/CORL/Command/Launcher.html">VagrantPlugins::CORL::Command::Launcher</a>
411
-
412
- <li><a href="../../VagrantPlugins/CORL/Config.html">VagrantPlugins::CORL::Config</a>
413
-
414
- <li><a href="../../VagrantPlugins/CORL/Config/CORL.html">VagrantPlugins::CORL::Config::CORL</a>
415
-
416
- <li><a href="../../VagrantPlugins/CORL/Plugin.html">VagrantPlugins::CORL::Plugin</a>
417
-
418
- <li><a href="../../VagrantPlugins/CORL/Provisioner.html">VagrantPlugins::CORL::Provisioner</a>
419
-
420
- <li><a href="../../VagrantPlugins/CORL/Provisioner/CORL.html">VagrantPlugins::CORL::Provisioner::CORL</a>
421
-
422
- <li><a href="../../Nucleon.html">Nucleon</a>
423
-
424
- <li><a href="../../Nucleon/Config.html">Nucleon::Config</a>
425
-
426
- <li><a href="../../Nucleon/Plugin.html">Nucleon::Plugin</a>
427
-
428
- <li><a href="../../Nucleon/Plugin/Base.html">Nucleon::Plugin::Base</a>
429
-
430
- <li><a href="../../Nucleon/Plugin/Configuration.html">Nucleon::Plugin::Configuration</a>
431
-
432
- <li><a href="../../Nucleon/Plugin/Machine.html">Nucleon::Plugin::Machine</a>
433
-
434
- <li><a href="../../Nucleon/Plugin/Network.html">Nucleon::Plugin::Network</a>
435
-
436
- <li><a href="../../Nucleon/Plugin/Node.html">Nucleon::Plugin::Node</a>
437
-
438
- <li><a href="../../Nucleon/Plugin/Provisioner.html">Nucleon::Plugin::Provisioner</a>
439
-
440
- <li><a href="../../Puppet.html">Puppet</a>
441
-
442
- <li><a href="../../Puppet/DataBinding.html">Puppet::DataBinding</a>
443
-
444
- <li><a href="../../Puppet/DataBinding/Corl.html">Puppet::DataBinding::Corl</a>
445
-
446
- <li><a href="../../Puppet/Indirector.html">Puppet::Indirector</a>
447
-
448
- <li><a href="../../Puppet/Indirector/Corl.html">Puppet::Indirector::Corl</a>
449
-
450
- <li><a href="../../Puppet/Parser.html">Puppet::Parser</a>
451
-
452
- <li><a href="../../Puppet/Parser/Functions.html">Puppet::Parser::Functions</a>
453
-
454
- <li><a href="../../Fog.html">Fog</a>
455
-
456
- <li><a href="../../Fog/Compute.html">Fog::Compute</a>
457
-
458
- <li><a href="../../Fog/Compute/AWS.html">Fog::Compute::AWS</a>
459
-
460
- <li><a href="../../Fog/Compute/AWS/Server.html">Fog::Compute::AWS::Server</a>
461
-
462
- <li><a href="../../Fog/Compute/RackspaceV2.html">Fog::Compute::RackspaceV2</a>
463
-
464
- <li><a href="../../Fog/Compute/RackspaceV2/Server.html">Fog::Compute::RackspaceV2::Server</a>
465
-
466
- <li><a href="../../Vagrant.html">Vagrant</a>
467
-
468
- <li><a href="../../Vagrant/Config.html">Vagrant::Config</a>
469
-
470
- <li><a href="../../Vagrant/Config/Loader.html">Vagrant::Config::Loader</a>
471
-
472
- <li><a href="../../Vagrant/Vagrantfile.html">Vagrant::Vagrantfile</a>
473
-
474
- <li><a href="../../Facter.html">Facter</a>
475
-
476
- <li><a href="../../Facter/Util.html">Facter::Util</a>
477
-
478
- <li><a href="../../Facter/Util/Loader.html">Facter::Util::Loader</a>
479
-
480
- <li><a href="../../Hiera.html">Hiera</a>
481
-
482
- <li><a href="../../Hiera/Backend.html">Hiera::Backend</a>
483
-
484
- <li><a href="../../Hiera/Corl_logger.html">Hiera::Corl_logger</a>
485
-
486
- <li><a href="../../Object.html">Object</a>
487
-
488
- </ul>
489
- </nav>
490
-
491
- </div>
492
- </nav>
493
-
494
- <div id="documentation">
495
- <h1 class="class">class Nucleon::Plugin::Node</h1>
496
-
497
- <div id="description" class="description">
498
-
499
- </div><!-- description -->
500
-
501
-
502
-
503
-
504
- <section id="5Buntitled-5D" class="documentation-section">
505
-
506
-
507
-
508
-
509
-
510
-
511
-
512
-
513
- <!-- Methods -->
514
-
515
- <section id="public-class-5Buntitled-5D-method-details" class="method-section section">
516
- <h3 class="section-header">Public Class Methods</h3>
517
-
518
-
519
- <div id="method-c-build_info" class="method-detail ">
520
-
521
- <div class="method-heading">
522
- <span class="method-name">build_info</span><span
523
- class="method-args">(type, data)</span>
524
- <span class="method-click-advice">click to toggle source</span>
525
- </div>
526
-
527
-
528
- <div class="method-description">
529
-
530
-
531
-
532
-
533
-
534
- <div class="method-source-code" id="build_info-source">
535
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 1141</span>
536
- <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>)
537
- <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>)
538
- <span class="ruby-keyword">super</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">data</span>)
539
- <span class="ruby-keyword">end</span></pre>
540
- </div><!-- build_info-source -->
541
-
542
- </div>
543
-
544
-
545
-
546
-
547
- </div><!-- build_info-method -->
548
-
549
-
550
- <div id="method-c-translate" class="method-detail ">
551
-
552
- <div class="method-heading">
553
- <span class="method-name">translate</span><span
554
- class="method-args">(data)</span>
555
- <span class="method-click-advice">click to toggle source</span>
556
- </div>
557
-
558
-
559
- <div class="method-description">
560
-
561
-
562
-
563
-
564
-
565
- <div class="method-source-code" id="translate-source">
566
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 1148</span>
567
- <span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">translate</span>(<span class="ruby-identifier">data</span>)
568
- <span class="ruby-identifier">options</span> = <span class="ruby-keyword">super</span>(<span class="ruby-identifier">data</span>)
569
-
570
- <span class="ruby-keyword">case</span> <span class="ruby-identifier">data</span>
571
- <span class="ruby-keyword">when</span> <span class="ruby-constant">String</span>
572
- <span class="ruby-identifier">options</span> = { <span class="ruby-value">:name</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">data</span> }
573
- <span class="ruby-keyword">when</span> <span class="ruby-constant">Hash</span>
574
- <span class="ruby-identifier">options</span> = <span class="ruby-identifier">data</span>
575
- <span class="ruby-keyword">end</span>
576
-
577
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-value">:name</span>)
578
- <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">:name</span>])
579
- <span class="ruby-identifier">options</span>[<span class="ruby-value">:provider</span>] = <span class="ruby-identifier">matches</span>[<span class="ruby-value">:provider</span>]
580
- <span class="ruby-identifier">options</span>[<span class="ruby-value">:name</span>] = <span class="ruby-identifier">matches</span>[<span class="ruby-value">:name</span>]
581
-
582
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">&quot;Translating node options: #{options.inspect}&quot;</span>)
583
- <span class="ruby-keyword">end</span>
584
- <span class="ruby-keyword">end</span>
585
- <span class="ruby-identifier">options</span>
586
- <span class="ruby-keyword">end</span></pre>
587
- </div><!-- translate-source -->
588
-
589
- </div>
590
-
591
-
592
-
593
-
594
- </div><!-- translate-method -->
595
-
596
-
597
- <div id="method-c-translate_reference" class="method-detail ">
598
-
599
- <div class="method-heading">
600
- <span class="method-name">translate_reference</span><span
601
- class="method-args">(reference)</span>
602
- <span class="method-click-advice">click to toggle source</span>
603
- </div>
604
-
605
-
606
- <div class="method-description">
607
-
608
-
609
-
610
-
611
-
612
- <div class="method-source-code" id="translate_reference-source">
613
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 1171</span>
614
- <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>)
615
- <span class="ruby-comment"># ex: rackspace:::web1.staging.example.com</span>
616
- <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>)
617
- <span class="ruby-identifier">provider</span> = <span class="ruby-node">$1</span>
618
- <span class="ruby-identifier">name</span> = <span class="ruby-node">$2</span>
619
-
620
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">&quot;Translating node reference: #{provider} #{name}&quot;</span>)
621
-
622
- <span class="ruby-identifier">info</span> = {
623
- <span class="ruby-value">:provider</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">provider</span>,
624
- <span class="ruby-value">:name</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">name</span>
625
- }
626
-
627
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">debug</span>(<span class="ruby-node">&quot;Project reference info: #{info.inspect}&quot;</span>)
628
- <span class="ruby-keyword">return</span> <span class="ruby-identifier">info</span>
629
- <span class="ruby-keyword">end</span>
630
- <span class="ruby-keyword">nil</span>
631
- <span class="ruby-keyword">end</span></pre>
632
- </div><!-- translate_reference-source -->
633
-
634
- </div>
635
-
636
-
637
-
638
-
639
- </div><!-- translate_reference-method -->
640
-
641
-
642
- </section><!-- public-class-method-details -->
643
-
644
- <section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
645
- <h3 class="section-header">Public Instance Methods</h3>
646
-
647
-
648
- <div id="method-i-action" class="method-detail ">
649
-
650
- <div class="method-heading">
651
- <span class="method-name">action</span><span
652
- class="method-args">(provider, options = {}) { |op, data| ... }</span>
653
- <span class="method-click-advice">click to toggle source</span>
654
- </div>
655
-
656
-
657
- <div class="method-description">
658
-
659
-
660
-
661
-
662
-
663
- <div class="method-source-code" id="action-source">
664
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 716</span>
665
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">action</span>(<span class="ruby-identifier">provider</span>, <span class="ruby-identifier">options</span> = {})
666
- <span class="ruby-identifier">codes</span> <span class="ruby-value">:network_load_error</span>
667
-
668
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>).<span class="ruby-identifier">defaults</span>({
669
- <span class="ruby-value">:log_level</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-constant">Nucleon</span>.<span class="ruby-identifier">log_level</span>,
670
- <span class="ruby-value">:net_remote</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">:edit</span>,
671
- <span class="ruby-value">:net_provider</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">network</span>.<span class="ruby-identifier">plugin_provider</span>
672
- })
673
-
674
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">&quot;Executing remote action #{provider} with encoded arguments: #{config.export.inspect}&quot;</span>)
675
-
676
- <span class="ruby-identifier">encoded_config</span> = <span class="ruby-constant">Util</span><span class="ruby-operator">::</span><span class="ruby-constant">CLI</span>.<span class="ruby-identifier">encode</span>(<span class="ruby-constant">Util</span><span class="ruby-operator">::</span><span class="ruby-constant">Data</span>.<span class="ruby-identifier">clean</span>(<span class="ruby-identifier">config</span>.<span class="ruby-identifier">export</span>))
677
- <span class="ruby-identifier">action_config</span> = <span class="ruby-identifier">extended_config</span>(<span class="ruby-value">:action</span>, {
678
- <span class="ruby-value">:command</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">provider</span>,
679
- <span class="ruby-value">:data</span> =<span class="ruby-operator">&gt;</span> { <span class="ruby-value">:encoded</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">encoded_config</span> }
680
- })
681
-
682
- <span class="ruby-identifier">result</span> = <span class="ruby-identifier">command</span>(<span class="ruby-value">:corl</span>, { <span class="ruby-value">:subcommand</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">action_config</span>, <span class="ruby-value">:as_admin</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">true</span> }) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">op</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
683
- <span class="ruby-keyword">yield</span>(<span class="ruby-identifier">op</span>, <span class="ruby-identifier">data</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
684
- <span class="ruby-keyword">end</span>
685
-
686
- <span class="ruby-comment"># Update local network configuration so we capture any updates</span>
687
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">result</span>.<span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">code</span>.<span class="ruby-identifier">success</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span> <span class="ruby-identifier">network</span>.<span class="ruby-identifier">load</span>({ <span class="ruby-value">:remote</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span>[<span class="ruby-value">:net_remote</span>], <span class="ruby-value">:pull</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">true</span> })
688
- <span class="ruby-identifier">result</span>.<span class="ruby-identifier">status</span> = <span class="ruby-identifier">code</span>.<span class="ruby-identifier">network_load_error</span>
689
- <span class="ruby-keyword">end</span>
690
- <span class="ruby-identifier">result</span>
691
- <span class="ruby-keyword">end</span></pre>
692
- </div><!-- action-source -->
693
-
694
- </div>
695
-
696
-
697
-
698
-
699
- </div><!-- action-method -->
700
-
701
-
702
- <div id="method-i-attach_keys" class="method-detail ">
703
-
704
- <div class="method-heading">
705
- <span class="method-name">attach_keys</span><span
706
- class="method-args">(keypair)</span>
707
- <span class="method-click-advice">click to toggle source</span>
708
- </div>
709
-
710
-
711
- <div class="method-description">
712
-
713
-
714
-
715
-
716
-
717
- <div class="method-source-code" id="attach_keys-source">
718
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 408</span>
719
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">attach_keys</span>(<span class="ruby-identifier">keypair</span>)
720
- <span class="ruby-identifier">base_name</span> = <span class="ruby-node">&quot;#{plugin_provider}-#{plugin_name}&quot;</span>
721
- <span class="ruby-identifier">save_config</span> = {
722
- <span class="ruby-value">:pull</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>,
723
- <span class="ruby-value">:push</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>,
724
- <span class="ruby-value">:message</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;Updating SSH keys for node #{plugin_provider} (#{plugin_name})&quot;</span>
725
- }
726
-
727
- <span class="ruby-identifier">active</span> = <span class="ruby-identifier">machine</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">running?</span>
728
- <span class="ruby-identifier">result</span> = <span class="ruby-identifier">run</span>.<span class="ruby-identifier">authorize</span>({ <span class="ruby-value">:public_key</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">keypair</span>.<span class="ruby-identifier">ssh_key</span> }) <span class="ruby-keyword">if</span> <span class="ruby-identifier">active</span>
729
- <span class="ruby-identifier">success</span> = <span class="ruby-keyword">false</span>
730
-
731
- <span class="ruby-keyword">if</span> <span class="ruby-operator">!</span> <span class="ruby-identifier">active</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">result</span>.<span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">code</span>.<span class="ruby-identifier">success</span>
732
- <span class="ruby-identifier">private_key</span> = <span class="ruby-identifier">network</span>.<span class="ruby-identifier">attach_data</span>(<span class="ruby-value">:keys</span>, <span class="ruby-node">&quot;#{base_name}-id_#{keypair.type}&quot;</span>, <span class="ruby-identifier">keypair</span>.<span class="ruby-identifier">encrypted_key</span>)
733
- <span class="ruby-identifier">public_key</span> = <span class="ruby-identifier">network</span>.<span class="ruby-identifier">attach_data</span>(<span class="ruby-value">:keys</span>, <span class="ruby-node">&quot;#{base_name}-id_#{keypair.type}.pub&quot;</span>, <span class="ruby-identifier">keypair</span>.<span class="ruby-identifier">ssh_key</span>)
734
-
735
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">private_key</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">public_key</span>
736
- <span class="ruby-constant">FileUtils</span>.<span class="ruby-identifier">chmod</span>(<span class="ruby-value">0600</span>, <span class="ruby-identifier">private_key</span>)
737
- <span class="ruby-constant">FileUtils</span>.<span class="ruby-identifier">chmod</span>(<span class="ruby-value">0644</span>, <span class="ruby-identifier">public_key</span>)
738
-
739
- <span class="ruby-identifier">save_config</span>[<span class="ruby-value">:files</span>] = [ <span class="ruby-identifier">private_key</span>, <span class="ruby-identifier">public_key</span> ]
740
-
741
- <span class="ruby-identifier">myself</span>.<span class="ruby-identifier">private_key</span> = <span class="ruby-identifier">private_key</span>
742
- <span class="ruby-identifier">myself</span>.<span class="ruby-identifier">public_key</span> = <span class="ruby-identifier">public_key</span>
743
-
744
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">save</span>(<span class="ruby-identifier">extended_config</span>(<span class="ruby-value">:key_save</span>, <span class="ruby-identifier">save_config</span>))
745
- <span class="ruby-keyword">end</span>
746
- <span class="ruby-keyword">end</span>
747
- <span class="ruby-identifier">success</span>
748
- <span class="ruby-keyword">end</span></pre>
749
- </div><!-- attach_keys-source -->
750
-
751
- </div>
752
-
753
-
754
-
755
-
756
- </div><!-- attach_keys-method -->
757
-
758
-
759
- <div id="method-i-bootstrap" class="method-detail ">
760
-
761
- <div class="method-heading">
762
- <span class="method-name">bootstrap</span><span
763
- class="method-args">(local_path, options = {}) { |"send_| ... }</span>
764
- <span class="method-click-advice">click to toggle source</span>
765
- </div>
766
-
767
-
768
- <div class="method-description">
769
-
770
-
771
-
772
-
773
-
774
- <div class="method-source-code" id="bootstrap-source">
775
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 830</span>
776
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">bootstrap</span>(<span class="ruby-identifier">local_path</span>, <span class="ruby-identifier">options</span> = {})
777
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
778
- <span class="ruby-identifier">myself</span>.<span class="ruby-identifier">status</span> = <span class="ruby-identifier">code</span>.<span class="ruby-identifier">unknown_status</span>
779
-
780
- <span class="ruby-identifier">bootstrap_name</span> = <span class="ruby-string">&#39;bootstrap&#39;</span>
781
- <span class="ruby-identifier">bootstrap_path</span> = <span class="ruby-identifier">config</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value">:bootstrap_path</span>, <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-constant">CORL</span>.<span class="ruby-identifier">lib_path</span>, <span class="ruby-string">&#39;..&#39;</span>, <span class="ruby-identifier">bootstrap_name</span>))
782
- <span class="ruby-identifier">bootstrap_glob</span> = <span class="ruby-identifier">config</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value">:bootstrap_glob</span>, <span class="ruby-string">&#39;**/*.sh&#39;</span>)
783
- <span class="ruby-identifier">bootstrap_init</span> = <span class="ruby-identifier">config</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value">:bootstrap_init</span>, <span class="ruby-string">&#39;bootstrap.sh&#39;</span>)
784
-
785
- <span class="ruby-identifier">user_home</span> = <span class="ruby-identifier">config</span>[<span class="ruby-value">:home</span>]
786
- <span class="ruby-identifier">auth_files</span> = <span class="ruby-identifier">config</span>.<span class="ruby-identifier">get_array</span>(<span class="ruby-value">:auth_files</span>)
787
-
788
- <span class="ruby-identifier">codes</span> <span class="ruby-value">:local_path_not_found</span>,
789
- <span class="ruby-value">:home_path_lookup_failure</span>,
790
- <span class="ruby-value">:auth_upload_failure</span>,
791
- <span class="ruby-value">:root_auth_copy_failure</span>,
792
- <span class="ruby-value">:bootstrap_upload_failure</span>,
793
- <span class="ruby-value">:bootstrap_exec_failure</span>,
794
- <span class="ruby-value">:reload_failure</span>
795
-
796
- <span class="ruby-keyword">if</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">directory?</span>(<span class="ruby-identifier">local_path</span>)
797
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">user_home</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">user_home</span> = <span class="ruby-identifier">home</span>(<span class="ruby-identifier">config</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value">:home_env_var</span>, <span class="ruby-string">&#39;HOME&#39;</span>), <span class="ruby-identifier">config</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value">:force</span>, <span class="ruby-keyword">false</span>))
798
- <span class="ruby-identifier">myself</span>.<span class="ruby-identifier">status</span> = <span class="ruby-identifier">code</span>.<span class="ruby-identifier">success</span>
799
-
800
- <span class="ruby-comment"># Transmit authorisation / credential files</span>
801
- <span class="ruby-identifier">package_files</span> = [ <span class="ruby-string">&#39;.fog&#39;</span>, <span class="ruby-string">&#39;.netrc&#39;</span>, <span class="ruby-string">&#39;.google-privatekey.p12&#39;</span>, <span class="ruby-string">&#39;.vimrc&#39;</span> ]
802
- <span class="ruby-identifier">auth_files</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
803
- <span class="ruby-identifier">package_files</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">file</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-identifier">local_path</span> <span class="ruby-operator">+</span> <span class="ruby-string">&#39;/&#39;</span>, <span class="ruby-string">&#39;&#39;</span>)
804
- <span class="ruby-keyword">end</span>
805
- <span class="ruby-identifier">send_success</span> = <span class="ruby-identifier">send_files</span>(<span class="ruby-identifier">local_path</span>, <span class="ruby-identifier">user_home</span>, <span class="ruby-identifier">package_files</span>, <span class="ruby-string">&#39;0600&#39;</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">op</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
806
- <span class="ruby-keyword">yield</span>(<span class="ruby-node">&quot;send_#{op}&quot;</span>.<span class="ruby-identifier">to_sym</span>, <span class="ruby-identifier">data</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
807
- <span class="ruby-identifier">data</span>
808
- <span class="ruby-keyword">end</span>
809
- <span class="ruby-keyword">unless</span> <span class="ruby-identifier">send_success</span>
810
- <span class="ruby-identifier">myself</span>.<span class="ruby-identifier">status</span> = <span class="ruby-identifier">code</span>.<span class="ruby-identifier">auth_upload_failure</span>
811
- <span class="ruby-keyword">end</span>
812
-
813
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">user</span>.<span class="ruby-identifier">to_sym</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">config</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value">:root_user</span>, <span class="ruby-value">:root</span>).<span class="ruby-identifier">to_sym</span>
814
- <span class="ruby-identifier">auth_files</span> = <span class="ruby-identifier">package_files</span>.<span class="ruby-identifier">collect</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">path</span><span class="ruby-operator">|</span> <span class="ruby-node">&quot;&#39;#{path}&#39;&quot;</span>}
815
- <span class="ruby-identifier">root_home_path</span> = <span class="ruby-identifier">config</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value">:root_home</span>, <span class="ruby-string">&#39;/root&#39;</span>)
816
-
817
- <span class="ruby-identifier">result</span> = <span class="ruby-identifier">command</span>(<span class="ruby-node">&quot;cp #{auth_files.join(&#39; &#39;)} #{root_home_path}&quot;</span>, { <span class="ruby-value">:as_admin</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">true</span> })
818
- <span class="ruby-identifier">myself</span>.<span class="ruby-identifier">status</span> = <span class="ruby-identifier">code</span>.<span class="ruby-identifier">root_auth_copy_failure</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">result</span>.<span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">code</span>.<span class="ruby-identifier">success</span>
819
- <span class="ruby-keyword">end</span>
820
-
821
- <span class="ruby-comment"># Send bootstrap package</span>
822
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">code</span>.<span class="ruby-identifier">success</span>
823
- <span class="ruby-identifier">remote_bootstrap_path</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">user_home</span>, <span class="ruby-identifier">bootstrap_name</span>)
824
-
825
- <span class="ruby-identifier">cli</span>.<span class="ruby-identifier">rm</span>(<span class="ruby-string">&#39;-Rf&#39;</span>, <span class="ruby-identifier">remote_bootstrap_path</span>)
826
- <span class="ruby-identifier">send_success</span> = <span class="ruby-identifier">send_files</span>(<span class="ruby-identifier">bootstrap_path</span>, <span class="ruby-identifier">remote_bootstrap_path</span>, <span class="ruby-keyword">nil</span>, <span class="ruby-string">&#39;0700&#39;</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">op</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
827
- <span class="ruby-keyword">yield</span>(<span class="ruby-node">&quot;send_#{op}&quot;</span>.<span class="ruby-identifier">to_sym</span>, <span class="ruby-identifier">data</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
828
- <span class="ruby-identifier">data</span>
829
- <span class="ruby-keyword">end</span>
830
- <span class="ruby-keyword">unless</span> <span class="ruby-identifier">send_success</span>
831
- <span class="ruby-identifier">myself</span>.<span class="ruby-identifier">status</span> = <span class="ruby-identifier">code</span>.<span class="ruby-identifier">bootstrap_upload_failure</span>
832
- <span class="ruby-keyword">end</span>
833
-
834
- <span class="ruby-comment"># Execute bootstrap process</span>
835
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">code</span>.<span class="ruby-identifier">success</span>
836
- <span class="ruby-identifier">remote_script</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">remote_bootstrap_path</span>, <span class="ruby-identifier">bootstrap_init</span>)
837
-
838
- <span class="ruby-identifier">myself</span>.<span class="ruby-identifier">bootstrap_script</span> = <span class="ruby-identifier">remote_script</span>
839
-
840
- <span class="ruby-identifier">result</span> = <span class="ruby-identifier">command</span>(<span class="ruby-node">&quot;HOSTNAME=&#39;#{hostname}&#39; #{remote_script}&quot;</span>, { <span class="ruby-value">:as_admin</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">true</span> }) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">op</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
841
- <span class="ruby-keyword">yield</span>(<span class="ruby-node">&quot;exec_#{op}&quot;</span>.<span class="ruby-identifier">to_sym</span>, <span class="ruby-identifier">data</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
842
- <span class="ruby-identifier">data</span>
843
- <span class="ruby-keyword">end</span>
844
-
845
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">result</span>.<span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">code</span>.<span class="ruby-identifier">success</span>
846
- <span class="ruby-comment"># Reboot the machine</span>
847
- <span class="ruby-keyword">unless</span> <span class="ruby-identifier">reload</span>
848
- <span class="ruby-identifier">warn</span>(<span class="ruby-string">&#39;corl.core.node.bootstrap.reload&#39;</span>)
849
- <span class="ruby-identifier">myself</span>.<span class="ruby-identifier">status</span> = <span class="ruby-identifier">code</span>.<span class="ruby-identifier">reload_failure</span>
850
- <span class="ruby-keyword">end</span>
851
- <span class="ruby-keyword">else</span>
852
- <span class="ruby-identifier">warn</span>(<span class="ruby-string">&#39;corl.core.node.bootstrap.status&#39;</span>, { <span class="ruby-value">:script</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">remote_script</span>, <span class="ruby-value">:status</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">result</span>.<span class="ruby-identifier">status</span> })
853
- <span class="ruby-identifier">myself</span>.<span class="ruby-identifier">status</span> = <span class="ruby-identifier">code</span>.<span class="ruby-identifier">bootstrap_exec_failure</span>
854
- <span class="ruby-keyword">end</span>
855
- <span class="ruby-keyword">end</span>
856
- <span class="ruby-keyword">end</span>
857
- <span class="ruby-keyword">else</span>
858
- <span class="ruby-identifier">myself</span>.<span class="ruby-identifier">status</span> = <span class="ruby-identifier">code</span>.<span class="ruby-identifier">home_path_lookup_failure</span>
859
- <span class="ruby-keyword">end</span>
860
- <span class="ruby-keyword">else</span>
861
- <span class="ruby-identifier">myself</span>.<span class="ruby-identifier">status</span> = <span class="ruby-identifier">code</span>.<span class="ruby-identifier">local_path_not_found</span>
862
- <span class="ruby-keyword">end</span>
863
- <span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">code</span>.<span class="ruby-identifier">success</span>
864
- <span class="ruby-keyword">end</span></pre>
865
- </div><!-- bootstrap-source -->
866
-
867
- </div>
868
-
869
-
870
-
871
-
872
- </div><!-- bootstrap-method -->
873
-
874
-
875
- <div id="method-i-bootstrap_script" class="method-detail ">
876
-
877
- <div class="method-heading">
878
- <span class="method-name">bootstrap_script</span><span
879
- class="method-args">()</span>
880
- <span class="method-click-advice">click to toggle source</span>
881
- </div>
882
-
883
-
884
- <div class="method-description">
885
-
886
-
887
-
888
-
889
-
890
- <div class="method-source-code" id="bootstrap_script-source">
891
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 357</span>
892
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">bootstrap_script</span>
893
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:bootstrap</span>]
894
- <span class="ruby-keyword">end</span></pre>
895
- </div><!-- bootstrap_script-source -->
896
-
897
- </div>
898
-
899
-
900
-
901
-
902
- </div><!-- bootstrap_script-method -->
903
-
904
-
905
- <div id="method-i-bootstrap_script-3D" class="method-detail ">
906
-
907
- <div class="method-heading">
908
- <span class="method-name">bootstrap_script=</span><span
909
- class="method-args">(bootstrap)</span>
910
- <span class="method-click-advice">click to toggle source</span>
911
- </div>
912
-
913
-
914
- <div class="method-description">
915
-
916
-
917
-
918
-
919
-
920
- <div class="method-source-code" id="bootstrap_script-3D-source">
921
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 353</span>
922
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">bootstrap_script=</span><span class="ruby-identifier">bootstrap</span>
923
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:bootstrap</span>] = <span class="ruby-identifier">bootstrap</span>
924
- <span class="ruby-keyword">end</span></pre>
925
- </div><!-- bootstrap_script-3D-source -->
926
-
927
- </div>
928
-
929
-
930
-
931
-
932
- </div><!-- bootstrap_script-3D-method -->
933
-
934
-
935
- <div id="method-i-build" class="method-detail ">
936
-
937
- <div class="method-heading">
938
- <span class="method-name">build</span><span
939
- class="method-args">(options = {})</span>
940
- <span class="method-click-advice">click to toggle source</span>
941
- </div>
942
-
943
-
944
- <div class="method-description">
945
-
946
-
947
-
948
-
949
-
950
- <div class="method-source-code" id="build-source">
951
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 376</span>
952
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">build</span>(<span class="ruby-identifier">options</span> = {})
953
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
954
- <span class="ruby-identifier">success</span> = <span class="ruby-keyword">true</span>
955
-
956
- <span class="ruby-identifier">provisioners</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">provider</span>, <span class="ruby-identifier">collection</span><span class="ruby-operator">|</span>
957
- <span class="ruby-identifier">ui</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">&quot;Building #{provider} provisioner collection&quot;</span>)
958
-
959
- <span class="ruby-identifier">collection</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">provisioner</span><span class="ruby-operator">|</span>
960
- <span class="ruby-identifier">ui</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">&quot;Building #{name} provisioner&quot;</span>)
961
-
962
- <span class="ruby-keyword">unless</span> <span class="ruby-identifier">provisioner</span>.<span class="ruby-identifier">build</span>(<span class="ruby-identifier">options</span>)
963
- <span class="ruby-identifier">success</span> = <span class="ruby-keyword">false</span>
964
- <span class="ruby-keyword">break</span>
965
- <span class="ruby-keyword">end</span>
966
- <span class="ruby-keyword">end</span>
967
- <span class="ruby-keyword">end</span>
968
-
969
- <span class="ruby-identifier">myself</span>.<span class="ruby-identifier">build_time</span> = <span class="ruby-constant">Time</span>.<span class="ruby-identifier">now</span>.<span class="ruby-identifier">to_s</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span>
970
-
971
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">config</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value">:save</span>, <span class="ruby-keyword">true</span>)
972
- <span class="ruby-identifier">ui</span>.<span class="ruby-identifier">success</span>(<span class="ruby-string">&quot;Saving successful build&quot;</span>)
973
-
974
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">save</span>(<span class="ruby-identifier">extended_config</span>(<span class="ruby-value">:build</span>, {
975
- <span class="ruby-value">:message</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value">:message</span>, <span class="ruby-node">&quot;Built #{plugin_provider} node: #{plugin_name}&quot;</span>),
976
- <span class="ruby-value">:remote</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value">:remote</span>, <span class="ruby-value">:edit</span>)
977
- }))
978
- <span class="ruby-keyword">end</span>
979
- <span class="ruby-identifier">success</span>
980
- <span class="ruby-keyword">end</span></pre>
981
- </div><!-- build-source -->
982
-
983
- </div>
984
-
985
-
986
-
987
-
988
- </div><!-- build-method -->
989
-
990
-
991
- <div id="method-i-build_time" class="method-detail ">
992
-
993
- <div class="method-heading">
994
- <span class="method-name">build_time</span><span
995
- class="method-args">()</span>
996
- <span class="method-click-advice">click to toggle source</span>
997
- </div>
998
-
999
-
1000
- <div class="method-description">
1001
-
1002
-
1003
-
1004
-
1005
-
1006
- <div class="method-source-code" id="build_time-source">
1007
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 347</span>
1008
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">build_time</span>
1009
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:build</span>]
1010
- <span class="ruby-keyword">end</span></pre>
1011
- </div><!-- build_time-source -->
1012
-
1013
- </div>
1014
-
1015
-
1016
-
1017
-
1018
- </div><!-- build_time-method -->
1019
-
1020
-
1021
- <div id="method-i-build_time-3D" class="method-detail ">
1022
-
1023
- <div class="method-heading">
1024
- <span class="method-name">build_time=</span><span
1025
- class="method-args">(time)</span>
1026
- <span class="method-click-advice">click to toggle source</span>
1027
- </div>
1028
-
1029
-
1030
- <div class="method-description">
1031
-
1032
-
1033
-
1034
-
1035
-
1036
- <div class="method-source-code" id="build_time-3D-source">
1037
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 343</span>
1038
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">build_time=</span><span class="ruby-identifier">time</span>
1039
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:build</span>] = <span class="ruby-identifier">time</span>
1040
- <span class="ruby-keyword">end</span></pre>
1041
- </div><!-- build_time-3D-source -->
1042
-
1043
- </div>
1044
-
1045
-
1046
-
1047
-
1048
- </div><!-- build_time-3D-method -->
1049
-
1050
-
1051
- <div id="method-i-cli" class="method-detail ">
1052
-
1053
- <div class="method-heading">
1054
- <span class="method-name">cli</span><span
1055
- class="method-args">()</span>
1056
- <span class="method-click-advice">click to toggle source</span>
1057
- </div>
1058
-
1059
-
1060
- <div class="method-description">
1061
-
1062
-
1063
-
1064
-
1065
-
1066
- <div class="method-source-code" id="cli-source">
1067
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 686</span>
1068
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">cli</span>
1069
- <span class="ruby-ivar">@cli_interface</span>
1070
- <span class="ruby-keyword">end</span></pre>
1071
- </div><!-- cli-source -->
1072
-
1073
- </div>
1074
-
1075
-
1076
-
1077
-
1078
- </div><!-- cli-method -->
1079
-
1080
-
1081
- <div id="method-i-cli_capture" class="method-detail ">
1082
-
1083
- <div class="method-heading">
1084
- <span class="method-name">cli_capture</span><span
1085
- class="method-args">(cli_command, *args)</span>
1086
- <span class="method-click-advice">click to toggle source</span>
1087
- </div>
1088
-
1089
-
1090
- <div class="method-description">
1091
-
1092
-
1093
-
1094
-
1095
-
1096
- <div class="method-source-code" id="cli_capture-source">
1097
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 1199</span>
1098
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">cli_capture</span>(<span class="ruby-identifier">cli_command</span>, *<span class="ruby-identifier">args</span>)
1099
- <span class="ruby-identifier">result</span> = <span class="ruby-identifier">cli</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">cli_command</span>, <span class="ruby-identifier">args</span>)
1100
-
1101
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">result</span>.<span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">code</span>.<span class="ruby-identifier">success</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span> <span class="ruby-identifier">result</span>.<span class="ruby-identifier">output</span>.<span class="ruby-identifier">empty?</span>
1102
- <span class="ruby-identifier">result</span>.<span class="ruby-identifier">output</span>
1103
- <span class="ruby-keyword">else</span>
1104
- <span class="ruby-keyword">nil</span>
1105
- <span class="ruby-keyword">end</span>
1106
- <span class="ruby-keyword">end</span></pre>
1107
- </div><!-- cli_capture-source -->
1108
-
1109
- </div>
1110
-
1111
-
1112
-
1113
-
1114
- </div><!-- cli_capture-method -->
1115
-
1116
-
1117
- <div id="method-i-cli_check" class="method-detail ">
1118
-
1119
- <div class="method-heading">
1120
- <span class="method-name">cli_check</span><span
1121
- class="method-args">(cli_command, *args)</span>
1122
- <span class="method-click-advice">click to toggle source</span>
1123
- </div>
1124
-
1125
-
1126
- <div class="method-description">
1127
-
1128
-
1129
-
1130
-
1131
-
1132
- <div class="method-source-code" id="cli_check-source">
1133
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 1211</span>
1134
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">cli_check</span>(<span class="ruby-identifier">cli_command</span>, *<span class="ruby-identifier">args</span>)
1135
- <span class="ruby-identifier">result</span> = <span class="ruby-identifier">cli</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">cli_command</span>, <span class="ruby-identifier">args</span>)
1136
- <span class="ruby-identifier">result</span>.<span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">code</span>.<span class="ruby-identifier">success</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
1137
- <span class="ruby-keyword">end</span></pre>
1138
- </div><!-- cli_check-source -->
1139
-
1140
- </div>
1141
-
1142
-
1143
-
1144
-
1145
- </div><!-- cli_check-method -->
1146
-
1147
-
1148
- <div id="method-i-command" class="method-detail ">
1149
-
1150
- <div class="method-heading">
1151
- <span class="method-name">command</span><span
1152
- class="method-args">(command, options = {}) { |op, data| ... }</span>
1153
- <span class="method-click-advice">click to toggle source</span>
1154
- </div>
1155
-
1156
-
1157
- <div class="method-description">
1158
-
1159
-
1160
-
1161
-
1162
-
1163
- <div class="method-source-code" id="command-source">
1164
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 692</span>
1165
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">command</span>(<span class="ruby-identifier">command</span>, <span class="ruby-identifier">options</span> = {})
1166
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
1167
- <span class="ruby-identifier">as_admin</span> = <span class="ruby-identifier">config</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-value">:as_admin</span>, <span class="ruby-keyword">false</span>)
1168
-
1169
- <span class="ruby-keyword">unless</span> <span class="ruby-identifier">command</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">CORL</span><span class="ruby-operator">::</span><span class="ruby-constant">Plugin</span><span class="ruby-operator">::</span><span class="ruby-constant">Command</span>)
1170
- <span class="ruby-identifier">command</span> = <span class="ruby-constant">CORL</span>.<span class="ruby-identifier">command</span>(<span class="ruby-constant">Config</span>.<span class="ruby-identifier">new</span>({ <span class="ruby-value">:command</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">command</span> }).<span class="ruby-identifier">import</span>(<span class="ruby-identifier">config</span>), <span class="ruby-value">:bash</span>)
1171
- <span class="ruby-keyword">end</span>
1172
-
1173
- <span class="ruby-identifier">admin_command</span> = <span class="ruby-string">&#39;&#39;</span>
1174
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">as_admin</span>
1175
- <span class="ruby-identifier">admin_command</span> = <span class="ruby-string">&#39;sudo&#39;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">user</span>.<span class="ruby-identifier">to_s</span> <span class="ruby-operator">!=</span> <span class="ruby-string">&#39;root&#39;</span>
1176
- <span class="ruby-identifier">admin_command</span> = <span class="ruby-identifier">extension_set</span>(<span class="ruby-value">:admin_command</span>, <span class="ruby-identifier">admin_command</span>, <span class="ruby-identifier">config</span>)
1177
- <span class="ruby-keyword">end</span>
1178
-
1179
- <span class="ruby-identifier">results</span> = <span class="ruby-identifier">exec</span>({ <span class="ruby-value">:commands</span> =<span class="ruby-operator">&gt;</span> [ <span class="ruby-node">&quot;#{admin_command} #{command.to_s}&quot;</span>.<span class="ruby-identifier">strip</span> ] }) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">op</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
1180
- <span class="ruby-keyword">yield</span>(<span class="ruby-identifier">op</span>, <span class="ruby-identifier">data</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
1181
- <span class="ruby-keyword">end</span>
1182
-
1183
- <span class="ruby-constant">CORL</span>.<span class="ruby-identifier">remove_plugin</span>(<span class="ruby-identifier">command</span>)
1184
- <span class="ruby-identifier">results</span>.<span class="ruby-identifier">first</span>
1185
- <span class="ruby-keyword">end</span></pre>
1186
- </div><!-- command-source -->
1187
-
1188
- </div>
1189
-
1190
-
1191
-
1192
-
1193
- </div><!-- command-method -->
1194
-
1195
-
1196
- <div id="method-i-create" class="method-detail ">
1197
-
1198
- <div class="method-heading">
1199
- <span class="method-name">create</span><span
1200
- class="method-args">(options = {}) { |:config, config| ... }</span>
1201
- <span class="method-click-advice">click to toggle source</span>
1202
- </div>
1203
-
1204
-
1205
- <div class="method-description">
1206
-
1207
-
1208
-
1209
-
1210
-
1211
- <div class="method-source-code" id="create-source">
1212
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 479</span>
1213
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">create</span>(<span class="ruby-identifier">options</span> = {})
1214
- <span class="ruby-identifier">success</span> = <span class="ruby-keyword">true</span>
1215
-
1216
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine</span>
1217
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
1218
-
1219
- <span class="ruby-identifier">clear_cache</span>
1220
-
1221
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">extension_check</span>(<span class="ruby-value">:create</span>, { <span class="ruby-value">:config</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span> })
1222
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">&quot;Creating node: #{plugin_name}&quot;</span>)
1223
-
1224
- <span class="ruby-keyword">yield</span>(<span class="ruby-value">:config</span>, <span class="ruby-identifier">config</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
1225
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">create</span>(<span class="ruby-identifier">config</span>.<span class="ruby-identifier">export</span>)
1226
-
1227
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">block_given?</span>
1228
- <span class="ruby-identifier">process_success</span> = <span class="ruby-keyword">yield</span>(<span class="ruby-value">:process</span>, <span class="ruby-identifier">config</span>)
1229
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">process_success</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">process_success</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">false</span>
1230
- <span class="ruby-keyword">end</span>
1231
-
1232
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span>
1233
- <span class="ruby-identifier">extension</span>(<span class="ruby-value">:create_success</span>, { <span class="ruby-value">:config</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span> })
1234
- <span class="ruby-keyword">end</span>
1235
- <span class="ruby-keyword">end</span>
1236
- <span class="ruby-keyword">else</span>
1237
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span>(<span class="ruby-node">&quot;Node #{plugin_name} does not have an attached machine so cannot be created&quot;</span>)
1238
- <span class="ruby-keyword">end</span>
1239
- <span class="ruby-identifier">success</span>
1240
- <span class="ruby-keyword">end</span></pre>
1241
- </div><!-- create-source -->
1242
-
1243
- </div>
1244
-
1245
-
1246
-
1247
-
1248
- </div><!-- create-method -->
1249
-
1250
-
1251
- <div id="method-i-create_image" class="method-detail ">
1252
-
1253
- <div class="method-heading">
1254
- <span class="method-name">create_image</span><span
1255
- class="method-args">(options = {}) { |:config, config| ... }</span>
1256
- <span class="method-click-advice">click to toggle source</span>
1257
- </div>
1258
-
1259
-
1260
- <div class="method-description">
1261
-
1262
-
1263
-
1264
-
1265
-
1266
- <div class="method-source-code" id="create_image-source">
1267
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 1019</span>
1268
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">create_image</span>(<span class="ruby-identifier">options</span> = {})
1269
- <span class="ruby-identifier">success</span> = <span class="ruby-keyword">true</span>
1270
-
1271
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">running?</span>
1272
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
1273
-
1274
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">extension_check</span>(<span class="ruby-value">:create_image</span>, { <span class="ruby-value">:config</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span> })
1275
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">&quot;Executing node: #{plugin_name}&quot;</span>)
1276
-
1277
- <span class="ruby-keyword">yield</span>(<span class="ruby-value">:config</span>, <span class="ruby-identifier">config</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
1278
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">create_image</span>(<span class="ruby-identifier">config</span>.<span class="ruby-identifier">export</span>)
1279
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">save</span>(<span class="ruby-identifier">config</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span>
1280
-
1281
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">block_given?</span>
1282
- <span class="ruby-identifier">process_success</span> = <span class="ruby-keyword">yield</span>(<span class="ruby-value">:process</span>, <span class="ruby-identifier">config</span>)
1283
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">process_success</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">process_success</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">false</span>
1284
- <span class="ruby-keyword">end</span>
1285
-
1286
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span>
1287
- <span class="ruby-identifier">extension</span>(<span class="ruby-value">:create_image_success</span>, { <span class="ruby-value">:config</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span> })
1288
- <span class="ruby-keyword">end</span>
1289
- <span class="ruby-keyword">end</span>
1290
- <span class="ruby-keyword">else</span>
1291
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span>(<span class="ruby-node">&quot;Node #{plugin_name} does not have an attached machine or is not running so cannot create an image&quot;</span>)
1292
- <span class="ruby-keyword">end</span>
1293
- <span class="ruby-identifier">success</span>
1294
- <span class="ruby-keyword">end</span></pre>
1295
- </div><!-- create_image-source -->
1296
-
1297
- </div>
1298
-
1299
-
1300
-
1301
-
1302
- </div><!-- create_image-method -->
1303
-
1304
-
1305
- <div id="method-i-create_machine" class="method-detail ">
1306
-
1307
- <div class="method-heading">
1308
- <span class="method-name">create_machine</span><span
1309
- class="method-args">(name, provider, options = {})</span>
1310
- <span class="method-click-advice">click to toggle source</span>
1311
- </div>
1312
-
1313
-
1314
- <div class="method-description">
1315
-
1316
-
1317
-
1318
-
1319
-
1320
- <div class="method-source-code" id="create_machine-source">
1321
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 473</span>
1322
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">create_machine</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">provider</span>, <span class="ruby-identifier">options</span> = {})
1323
- <span class="ruby-constant">CORL</span>.<span class="ruby-identifier">create_plugin</span>(<span class="ruby-value">:machine</span>, <span class="ruby-identifier">provider</span>, <span class="ruby-identifier">extended_config</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">options</span>).<span class="ruby-identifier">import</span>({ <span class="ruby-value">:meta</span> =<span class="ruby-operator">&gt;</span> { <span class="ruby-value">:parent</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">myself</span> }}))
1324
- <span class="ruby-keyword">end</span></pre>
1325
- </div><!-- create_machine-source -->
1326
-
1327
- </div>
1328
-
1329
-
1330
-
1331
-
1332
- </div><!-- create_machine-method -->
1333
-
1334
-
1335
- <div id="method-i-custom_facts" class="method-detail ">
1336
-
1337
- <div class="method-heading">
1338
- <span class="method-name">custom_facts</span><span
1339
- class="method-args">()</span>
1340
- <span class="method-click-advice">click to toggle source</span>
1341
- </div>
1342
-
1343
-
1344
- <div class="method-description">
1345
-
1346
-
1347
-
1348
-
1349
-
1350
- <div class="method-source-code" id="custom_facts-source">
1351
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 300</span>
1352
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">custom_facts</span>
1353
- <span class="ruby-identifier">search</span>(<span class="ruby-value">:facts</span>, {}, <span class="ruby-value">:hash</span>)
1354
- <span class="ruby-keyword">end</span></pre>
1355
- </div><!-- custom_facts-source -->
1356
-
1357
- </div>
1358
-
1359
-
1360
-
1361
-
1362
- </div><!-- custom_facts-method -->
1363
-
1364
-
1365
- <div id="method-i-custom_facts-3D" class="method-detail ">
1366
-
1367
- <div class="method-heading">
1368
- <span class="method-name">custom_facts=</span><span
1369
- class="method-args">(facts)</span>
1370
- <span class="method-click-advice">click to toggle source</span>
1371
- </div>
1372
-
1373
-
1374
- <div class="method-description">
1375
-
1376
-
1377
-
1378
-
1379
-
1380
- <div class="method-source-code" id="custom_facts-3D-source">
1381
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 296</span>
1382
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">custom_facts=</span><span class="ruby-identifier">facts</span>
1383
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:facts</span>] = <span class="ruby-identifier">hash</span>(<span class="ruby-identifier">facts</span>)
1384
- <span class="ruby-keyword">end</span></pre>
1385
- </div><!-- custom_facts-3D-source -->
1386
-
1387
- </div>
1388
-
1389
-
1390
-
1391
-
1392
- </div><!-- custom_facts-3D-method -->
1393
-
1394
-
1395
- <div id="method-i-delete_keys" class="method-detail ">
1396
-
1397
- <div class="method-heading">
1398
- <span class="method-name">delete_keys</span><span
1399
- class="method-args">()</span>
1400
- <span class="method-click-advice">click to toggle source</span>
1401
- </div>
1402
-
1403
-
1404
- <div class="method-description">
1405
-
1406
-
1407
-
1408
-
1409
-
1410
- <div class="method-source-code" id="delete_keys-source">
1411
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 441</span>
1412
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">delete_keys</span>
1413
- <span class="ruby-identifier">private_key</span> = <span class="ruby-identifier">myself</span>[<span class="ruby-value">:private_key</span>]
1414
- <span class="ruby-identifier">public_key</span> = <span class="ruby-identifier">myself</span>[<span class="ruby-value">:public_key</span>]
1415
-
1416
- <span class="ruby-identifier">keys</span> = []
1417
- <span class="ruby-identifier">keys</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">private_key</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">private_key</span>
1418
- <span class="ruby-identifier">keys</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">public_key</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">public_key</span>
1419
-
1420
- <span class="ruby-identifier">success</span> = <span class="ruby-keyword">true</span>
1421
-
1422
- <span class="ruby-keyword">unless</span> <span class="ruby-identifier">keys</span>.<span class="ruby-identifier">empty?</span>
1423
- <span class="ruby-identifier">files</span> = <span class="ruby-identifier">network</span>.<span class="ruby-identifier">delete_attachments</span>(<span class="ruby-identifier">keys</span>)
1424
-
1425
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">files</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span> <span class="ruby-identifier">files</span>.<span class="ruby-identifier">empty?</span>
1426
- <span class="ruby-identifier">delete_setting</span>(<span class="ruby-value">:private_key</span>)
1427
- <span class="ruby-identifier">delete_setting</span>(<span class="ruby-value">:public_key</span>)
1428
-
1429
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">save</span>(<span class="ruby-identifier">extended_config</span>(<span class="ruby-value">:key_delete</span>, {
1430
- <span class="ruby-value">:files</span> =<span class="ruby-operator">&gt;</span> [ <span class="ruby-identifier">private_key</span>, <span class="ruby-identifier">public_key</span> ],
1431
- <span class="ruby-value">:pull</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>,
1432
- <span class="ruby-value">:push</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">false</span>,
1433
- <span class="ruby-value">:message</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;Removing SSH keys for node #{plugin_provider} (#{plugin_name})&quot;</span>
1434
- }))
1435
- <span class="ruby-keyword">else</span>
1436
- <span class="ruby-identifier">success</span> = <span class="ruby-keyword">false</span>
1437
- <span class="ruby-keyword">end</span>
1438
- <span class="ruby-keyword">end</span>
1439
- <span class="ruby-identifier">success</span>
1440
- <span class="ruby-keyword">end</span></pre>
1441
- </div><!-- delete_keys-source -->
1442
-
1443
- </div>
1444
-
1445
-
1446
-
1447
-
1448
- </div><!-- delete_keys-method -->
1449
-
1450
-
1451
- <div id="method-i-destroy" class="method-detail ">
1452
-
1453
- <div class="method-heading">
1454
- <span class="method-name">destroy</span><span
1455
- class="method-args">(options = {}) { |:config, config| ... }</span>
1456
- <span class="method-click-advice">click to toggle source</span>
1457
- </div>
1458
-
1459
-
1460
- <div class="method-description">
1461
-
1462
-
1463
-
1464
-
1465
-
1466
- <div class="method-source-code" id="destroy-source">
1467
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 1094</span>
1468
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">destroy</span>(<span class="ruby-identifier">options</span> = {})
1469
- <span class="ruby-identifier">success</span> = <span class="ruby-keyword">true</span>
1470
-
1471
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">created?</span>
1472
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
1473
-
1474
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">extension_check</span>(<span class="ruby-value">:destroy</span>, { <span class="ruby-value">:config</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span> })
1475
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">&quot;Destroying node: #{plugin_name}&quot;</span>)
1476
-
1477
- <span class="ruby-keyword">yield</span>(<span class="ruby-value">:config</span>, <span class="ruby-identifier">config</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
1478
-
1479
- <span class="ruby-comment"># Shut down machine </span>
1480
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">destroy</span>(<span class="ruby-identifier">config</span>.<span class="ruby-identifier">export</span>)
1481
-
1482
- <span class="ruby-identifier">myself</span>.<span class="ruby-identifier">machine</span> = <span class="ruby-keyword">nil</span>
1483
-
1484
- <span class="ruby-comment"># Remove SSH keys</span>
1485
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">delete_keys</span>
1486
- <span class="ruby-comment"># Remove node information</span>
1487
- <span class="ruby-identifier">network</span>.<span class="ruby-identifier">delete_node</span>(<span class="ruby-identifier">plugin_provider</span>, <span class="ruby-identifier">plugin_name</span>, <span class="ruby-keyword">false</span>)
1488
-
1489
- <span class="ruby-identifier">network</span>.<span class="ruby-identifier">save</span>({
1490
- <span class="ruby-value">:commit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">true</span>,
1491
- <span class="ruby-value">:remote</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value">:remote</span>, <span class="ruby-value">:edit</span>),
1492
- <span class="ruby-value">:push</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">true</span>
1493
- })
1494
- <span class="ruby-keyword">end</span>
1495
-
1496
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">block_given?</span>
1497
- <span class="ruby-identifier">process_success</span> = <span class="ruby-keyword">yield</span>(<span class="ruby-value">:process</span>, <span class="ruby-identifier">config</span>)
1498
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">process_success</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">process_success</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">false</span>
1499
- <span class="ruby-keyword">end</span>
1500
-
1501
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span>
1502
- <span class="ruby-identifier">extension</span>(<span class="ruby-value">:destroy_success</span>, { <span class="ruby-value">:config</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span> })
1503
- <span class="ruby-identifier">clear_cache</span>
1504
- <span class="ruby-keyword">end</span>
1505
- <span class="ruby-keyword">end</span>
1506
- <span class="ruby-keyword">else</span>
1507
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span>(<span class="ruby-node">&quot;Node #{plugin_name} does not have an attached machine or is not created so cannot be destroyed&quot;</span>)
1508
- <span class="ruby-keyword">end</span>
1509
- <span class="ruby-identifier">success</span>
1510
- <span class="ruby-keyword">end</span></pre>
1511
- </div><!-- destroy-source -->
1512
-
1513
- </div>
1514
-
1515
-
1516
-
1517
-
1518
- </div><!-- destroy-method -->
1519
-
1520
-
1521
- <div id="method-i-download" class="method-detail ">
1522
-
1523
- <div class="method-heading">
1524
- <span class="method-name">download</span><span
1525
- class="method-args">(remote_path, local_path, options = {}) { |:config, hook_config| ... }</span>
1526
- <span class="method-click-advice">click to toggle source</span>
1527
- </div>
1528
-
1529
-
1530
- <div class="method-description">
1531
-
1532
-
1533
-
1534
-
1535
-
1536
- <div class="method-source-code" id="download-source">
1537
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 510</span>
1538
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">download</span>(<span class="ruby-identifier">remote_path</span>, <span class="ruby-identifier">local_path</span>, <span class="ruby-identifier">options</span> = {})
1539
- <span class="ruby-identifier">success</span> = <span class="ruby-keyword">false</span>
1540
-
1541
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">running?</span>
1542
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
1543
- <span class="ruby-identifier">hook_config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">new</span>({ <span class="ruby-value">:local_path</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">local_path</span>, <span class="ruby-value">:remote_path</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">remote_path</span>, <span class="ruby-value">:config</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span> })
1544
-
1545
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">extension_check</span>(<span class="ruby-value">:download</span>, <span class="ruby-identifier">hook_config</span>)
1546
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">&quot;Downloading from #{plugin_name}&quot;</span>)
1547
-
1548
- <span class="ruby-identifier">render</span>(<span class="ruby-node">&quot;Starting download of #{remote_path} to #{local_path}&quot;</span>)
1549
- <span class="ruby-keyword">yield</span>(<span class="ruby-value">:config</span>, <span class="ruby-identifier">hook_config</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
1550
-
1551
- <span class="ruby-identifier">active_machine</span> = <span class="ruby-identifier">local?</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">local_machine</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">machine</span>
1552
-
1553
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">active_machine</span>.<span class="ruby-identifier">download</span>(<span class="ruby-identifier">remote_path</span>, <span class="ruby-identifier">local_path</span>, <span class="ruby-identifier">config</span>.<span class="ruby-identifier">export</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">name</span>, <span class="ruby-identifier">received</span>, <span class="ruby-identifier">total</span><span class="ruby-operator">|</span>
1554
- <span class="ruby-identifier">render</span>(<span class="ruby-node">&quot;#{name}: Sent #{received} of #{total}&quot;</span>)
1555
- <span class="ruby-keyword">yield</span>(<span class="ruby-value">:progress</span>, { <span class="ruby-value">:name</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">name</span>, <span class="ruby-value">:received</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">received</span>, <span class="ruby-value">:total</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">total</span> })
1556
- <span class="ruby-keyword">end</span>
1557
-
1558
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">block_given?</span>
1559
- <span class="ruby-identifier">render</span>(<span class="ruby-node">&quot;Successfully finished download of #{remote_path} to #{local_path}&quot;</span>)
1560
- <span class="ruby-identifier">process_success</span> = <span class="ruby-keyword">yield</span>(<span class="ruby-value">:process</span>, <span class="ruby-identifier">hook_config</span>)
1561
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">process_success</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">process_success</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">false</span>
1562
- <span class="ruby-keyword">end</span>
1563
-
1564
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span>
1565
- <span class="ruby-identifier">extension</span>(<span class="ruby-value">:download_success</span>, <span class="ruby-identifier">hook_config</span>)
1566
- <span class="ruby-keyword">end</span>
1567
- <span class="ruby-keyword">end</span>
1568
- <span class="ruby-keyword">else</span>
1569
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span>(<span class="ruby-node">&quot;Node #{plugin_name} does not have an attached machine or is not running so cannot download&quot;</span>)
1570
- <span class="ruby-keyword">end</span>
1571
- <span class="ruby-identifier">success</span>
1572
- <span class="ruby-keyword">end</span></pre>
1573
- </div><!-- download-source -->
1574
-
1575
- </div>
1576
-
1577
-
1578
-
1579
-
1580
- </div><!-- download-method -->
1581
-
1582
-
1583
- <div id="method-i-exec" class="method-detail ">
1584
-
1585
- <div class="method-heading">
1586
- <span class="method-name">exec</span><span
1587
- class="method-args">(options = {}) { |:config, config| ... }</span>
1588
- <span class="method-click-advice">click to toggle source</span>
1589
- </div>
1590
-
1591
-
1592
- <div class="method-description">
1593
-
1594
-
1595
-
1596
-
1597
-
1598
- <div class="method-source-code" id="exec-source">
1599
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 619</span>
1600
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">exec</span>(<span class="ruby-identifier">options</span> = {})
1601
- <span class="ruby-identifier">default_error</span> = <span class="ruby-constant">Util</span><span class="ruby-operator">::</span><span class="ruby-constant">Shell</span><span class="ruby-operator">::</span><span class="ruby-constant">Result</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">:error</span>, <span class="ruby-value">255</span>)
1602
- <span class="ruby-identifier">results</span> = [ <span class="ruby-identifier">default_error</span> ]
1603
-
1604
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">local?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">local_machine</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">machine</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">running?</span>
1605
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
1606
-
1607
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">extension_check</span>(<span class="ruby-value">:exec</span>, { <span class="ruby-value">:config</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span> })
1608
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">&quot;Executing node: #{plugin_name}&quot;</span>)
1609
-
1610
- <span class="ruby-keyword">yield</span>(<span class="ruby-value">:config</span>, <span class="ruby-identifier">config</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
1611
-
1612
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">local?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">local_machine</span>
1613
- <span class="ruby-identifier">active_machine</span> = <span class="ruby-identifier">local_machine</span>
1614
-
1615
- <span class="ruby-identifier">config</span>[<span class="ruby-value">:info_prefix</span>] = <span class="ruby-node">&quot;[#{hostname}] &quot;</span>
1616
- <span class="ruby-identifier">config</span>[<span class="ruby-value">:error_prefix</span>] = <span class="ruby-node">&quot;[#{hostname}] &quot;</span>
1617
- <span class="ruby-keyword">else</span>
1618
- <span class="ruby-identifier">active_machine</span> = <span class="ruby-identifier">machine</span>
1619
- <span class="ruby-keyword">end</span>
1620
-
1621
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">commands</span> = <span class="ruby-identifier">config</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value">:commands</span>, <span class="ruby-keyword">nil</span>)
1622
- <span class="ruby-keyword">begin</span>
1623
- <span class="ruby-identifier">test</span> = <span class="ruby-identifier">active_machine</span>.<span class="ruby-identifier">exec</span>(<span class="ruby-identifier">commands</span>, <span class="ruby-identifier">config</span>.<span class="ruby-identifier">export</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">type</span>, <span class="ruby-identifier">command</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
1624
- <span class="ruby-keyword">unless</span> <span class="ruby-identifier">local?</span>
1625
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">type</span> <span class="ruby-operator">==</span> <span class="ruby-value">:error</span>
1626
- <span class="ruby-identifier">alert</span>(<span class="ruby-identifier">filter_output</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">data</span>))
1627
- <span class="ruby-keyword">else</span>
1628
- <span class="ruby-identifier">render</span>(<span class="ruby-identifier">filter_output</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">data</span>))
1629
- <span class="ruby-keyword">end</span>
1630
- <span class="ruby-keyword">end</span>
1631
- <span class="ruby-keyword">yield</span>(<span class="ruby-value">:progress</span>, { <span class="ruby-value">:type</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">type</span>, <span class="ruby-value">:command</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">command</span>, <span class="ruby-value">:data</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">data</span> }) <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
1632
- <span class="ruby-keyword">end</span>
1633
- <span class="ruby-identifier">results</span> = <span class="ruby-identifier">test</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">test</span>
1634
-
1635
- <span class="ruby-keyword">rescue</span> <span class="ruby-constant">Exception</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">error</span>
1636
- <span class="ruby-identifier">default_error</span>.<span class="ruby-identifier">append_errors</span>(<span class="ruby-identifier">error</span>.<span class="ruby-identifier">message</span>)
1637
- <span class="ruby-keyword">end</span>
1638
- <span class="ruby-keyword">else</span>
1639
- <span class="ruby-identifier">default_error</span>.<span class="ruby-identifier">append_errors</span>(<span class="ruby-string">&quot;No execution command&quot;</span>)
1640
- <span class="ruby-keyword">end</span>
1641
-
1642
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">results</span>
1643
- <span class="ruby-identifier">success</span> = <span class="ruby-keyword">true</span>
1644
- <span class="ruby-identifier">results</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">result</span><span class="ruby-operator">|</span>
1645
- <span class="ruby-identifier">success</span> = <span class="ruby-keyword">false</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">result</span>.<span class="ruby-identifier">status</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">code</span>.<span class="ruby-identifier">success</span>
1646
- <span class="ruby-keyword">end</span>
1647
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span>
1648
- <span class="ruby-keyword">yield</span>(<span class="ruby-value">:process</span>, <span class="ruby-identifier">config</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
1649
- <span class="ruby-identifier">extension</span>(<span class="ruby-value">:exec_success</span>, { <span class="ruby-value">:config</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span>, <span class="ruby-value">:results</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">results</span> })
1650
- <span class="ruby-keyword">end</span>
1651
- <span class="ruby-keyword">else</span>
1652
- <span class="ruby-identifier">default_error</span>.<span class="ruby-identifier">append_errors</span>(<span class="ruby-string">&quot;No execution results&quot;</span>)
1653
- <span class="ruby-keyword">end</span>
1654
- <span class="ruby-keyword">else</span>
1655
- <span class="ruby-identifier">default_error</span>.<span class="ruby-identifier">append_errors</span>(<span class="ruby-string">&quot;Execution prevented by exec hook&quot;</span>)
1656
- <span class="ruby-keyword">end</span>
1657
- <span class="ruby-keyword">else</span>
1658
- <span class="ruby-identifier">default_error</span>.<span class="ruby-identifier">append_errors</span>(<span class="ruby-string">&quot;No attached machine&quot;</span>)
1659
-
1660
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span>(<span class="ruby-node">&quot;Node #{plugin_name} does not have an attached machine or is not running so cannot execute commands&quot;</span>)
1661
- <span class="ruby-keyword">end</span>
1662
- <span class="ruby-identifier">results</span>
1663
- <span class="ruby-keyword">end</span></pre>
1664
- </div><!-- exec-source -->
1665
-
1666
- </div>
1667
-
1668
-
1669
-
1670
-
1671
- </div><!-- exec-method -->
1672
-
1673
-
1674
- <div id="method-i-filter_output" class="method-detail ">
1675
-
1676
- <div class="method-heading">
1677
- <span class="method-name">filter_output</span><span
1678
- class="method-args">(type, data)</span>
1679
- <span class="method-click-advice">click to toggle source</span>
1680
- </div>
1681
-
1682
-
1683
- <div class="method-description">
1684
-
1685
-
1686
-
1687
-
1688
-
1689
- <div class="method-source-code" id="filter_output-source">
1690
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 1218</span>
1691
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">filter_output</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">data</span>)
1692
- <span class="ruby-identifier">data</span>
1693
- <span class="ruby-keyword">end</span></pre>
1694
- </div><!-- filter_output-source -->
1695
-
1696
- </div>
1697
-
1698
-
1699
-
1700
-
1701
- </div><!-- filter_output-method -->
1702
-
1703
-
1704
- <div id="method-i-hiera_facts" class="method-detail ">
1705
-
1706
- <div class="method-heading">
1707
- <span class="method-name">hiera_facts</span><span
1708
- class="method-args">()</span>
1709
- <span class="method-click-advice">click to toggle source</span>
1710
- </div>
1711
-
1712
-
1713
- <div class="method-description">
1714
-
1715
-
1716
-
1717
-
1718
-
1719
- <div class="method-source-code" id="hiera_facts-source">
1720
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 94</span>
1721
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">hiera_facts</span>
1722
- <span class="ruby-identifier">default_configs</span> = <span class="ruby-identifier">extended_config</span>(<span class="ruby-value">:hiera_default_facts</span>, {
1723
- <span class="ruby-value">:fqdn</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">hostname</span>,
1724
- <span class="ruby-value">:hostname</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">hostname</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-regexp">/\..*$/</span>, <span class="ruby-string">&#39;&#39;</span>),
1725
- <span class="ruby-value">:corl_provider</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">plugin_provider</span>.<span class="ruby-identifier">to_s</span>
1726
- })
1727
- <span class="ruby-constant">Config</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">lookup_facts</span>).<span class="ruby-identifier">defaults</span>(<span class="ruby-identifier">default_configs</span>).<span class="ruby-identifier">export</span>
1728
- <span class="ruby-keyword">end</span></pre>
1729
- </div><!-- hiera_facts-source -->
1730
-
1731
- </div>
1732
-
1733
-
1734
-
1735
-
1736
- </div><!-- hiera_facts-method -->
1737
-
1738
-
1739
- <div id="method-i-hiera_override_dir" class="method-detail ">
1740
-
1741
- <div class="method-heading">
1742
- <span class="method-name">hiera_override_dir</span><span
1743
- class="method-args">()</span>
1744
- <span class="method-click-advice">click to toggle source</span>
1745
- </div>
1746
-
1747
-
1748
- <div class="method-description">
1749
-
1750
-
1751
-
1752
-
1753
-
1754
- <div class="method-source-code" id="hiera_override_dir-source">
1755
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 88</span>
1756
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">hiera_override_dir</span>
1757
- <span class="ruby-identifier">network</span>.<span class="ruby-identifier">hiera_override_dir</span>
1758
- <span class="ruby-keyword">end</span></pre>
1759
- </div><!-- hiera_override_dir-source -->
1760
-
1761
- </div>
1762
-
1763
-
1764
-
1765
-
1766
- </div><!-- hiera_override_dir-method -->
1767
-
1768
-
1769
- <div id="method-i-home" class="method-detail ">
1770
-
1771
- <div class="method-heading">
1772
- <span class="method-name">home</span><span
1773
- class="method-args">(env_var = 'HOME', reset = false)</span>
1774
- <span class="method-click-advice">click to toggle source</span>
1775
- </div>
1776
-
1777
-
1778
- <div class="method-description">
1779
-
1780
-
1781
-
1782
-
1783
-
1784
- <div class="method-source-code" id="home-source">
1785
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 185</span>
1786
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">home</span>(<span class="ruby-identifier">env_var</span> = <span class="ruby-string">&#39;HOME&#39;</span>, <span class="ruby-identifier">reset</span> = <span class="ruby-keyword">false</span>)
1787
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">reset</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">myself</span>[<span class="ruby-value">:user_home</span>].<span class="ruby-identifier">nil?</span>
1788
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:user_home</span>] = <span class="ruby-identifier">cli_capture</span>(<span class="ruby-value">:echo</span>, <span class="ruby-string">&#39;$&#39;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">env_var</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-keyword">if</span> <span class="ruby-identifier">machine</span>
1789
- <span class="ruby-keyword">end</span>
1790
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:user_home</span>]
1791
- <span class="ruby-keyword">end</span></pre>
1792
- </div><!-- home-source -->
1793
-
1794
- </div>
1795
-
1796
-
1797
-
1798
-
1799
- </div><!-- home-method -->
1800
-
1801
-
1802
- <div id="method-i-hostname" class="method-detail ">
1803
-
1804
- <div class="method-heading">
1805
- <span class="method-name">hostname</span><span
1806
- class="method-args">()</span>
1807
- <span class="method-click-advice">click to toggle source</span>
1808
- </div>
1809
-
1810
-
1811
- <div class="method-description">
1812
-
1813
-
1814
-
1815
-
1816
-
1817
- <div class="method-source-code" id="hostname-source">
1818
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 144</span>
1819
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">hostname</span>
1820
- <span class="ruby-identifier">hostname</span> = <span class="ruby-identifier">setting</span>(<span class="ruby-value">:hostname</span>)
1821
-
1822
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">hostname</span>.<span class="ruby-identifier">to_s</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">ui</span>.<span class="ruby-identifier">resource</span>.<span class="ruby-identifier">to_s</span>
1823
- <span class="ruby-identifier">ui</span>.<span class="ruby-identifier">resource</span> = <span class="ruby-constant">Util</span><span class="ruby-operator">::</span><span class="ruby-constant">Console</span>.<span class="ruby-identifier">colorize</span>(<span class="ruby-identifier">hostname</span>, <span class="ruby-ivar">@class_color</span>)
1824
- <span class="ruby-identifier">logger</span> = <span class="ruby-identifier">hostname</span>
1825
- <span class="ruby-keyword">end</span>
1826
- <span class="ruby-identifier">hostname</span>
1827
- <span class="ruby-keyword">end</span></pre>
1828
- </div><!-- hostname-source -->
1829
-
1830
- </div>
1831
-
1832
-
1833
-
1834
-
1835
- </div><!-- hostname-method -->
1836
-
1837
-
1838
- <div id="method-i-id" class="method-detail ">
1839
-
1840
- <div class="method-heading">
1841
- <span class="method-name">id</span><span
1842
- class="method-args">(reset = false)</span>
1843
- <span class="method-click-advice">click to toggle source</span>
1844
- </div>
1845
-
1846
-
1847
- <div class="method-description">
1848
-
1849
-
1850
-
1851
-
1852
-
1853
- <div class="method-source-code" id="id-source">
1854
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 125</span>
1855
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">id</span>(<span class="ruby-identifier">reset</span> = <span class="ruby-keyword">false</span>)
1856
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:id</span>] = <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">plugin_name</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine</span> <span class="ruby-operator">&amp;&amp;</span> ( <span class="ruby-identifier">reset</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">setting</span>(<span class="ruby-value">:id</span>).<span class="ruby-identifier">nil?</span> )
1857
- <span class="ruby-identifier">setting</span>(<span class="ruby-value">:id</span>)
1858
- <span class="ruby-keyword">end</span></pre>
1859
- </div><!-- id-source -->
1860
-
1861
- </div>
1862
-
1863
-
1864
-
1865
-
1866
- </div><!-- id-method -->
1867
-
1868
-
1869
- <div id="method-i-image" class="method-detail ">
1870
-
1871
- <div class="method-heading">
1872
- <span class="method-name">image</span><span
1873
- class="method-args">(reset = false)</span>
1874
- <span class="method-click-advice">click to toggle source</span>
1875
- </div>
1876
-
1877
-
1878
- <div class="method-description">
1879
-
1880
-
1881
-
1882
-
1883
-
1884
- <div class="method-source-code" id="image-source">
1885
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 289</span>
1886
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">image</span>(<span class="ruby-identifier">reset</span> = <span class="ruby-keyword">false</span>)
1887
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:image</span>] = <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">image</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine</span> <span class="ruby-operator">&amp;&amp;</span> ( <span class="ruby-identifier">reset</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">myself</span>[<span class="ruby-value">:image</span>].<span class="ruby-identifier">nil?</span> )
1888
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:image</span>]
1889
- <span class="ruby-keyword">end</span></pre>
1890
- </div><!-- image-source -->
1891
-
1892
- </div>
1893
-
1894
-
1895
-
1896
-
1897
- </div><!-- image-method -->
1898
-
1899
-
1900
- <div id="method-i-image-3D" class="method-detail ">
1901
-
1902
- <div class="method-heading">
1903
- <span class="method-name">image=</span><span
1904
- class="method-args">(image)</span>
1905
- <span class="method-click-advice">click to toggle source</span>
1906
- </div>
1907
-
1908
-
1909
- <div class="method-description">
1910
-
1911
-
1912
-
1913
-
1914
-
1915
- <div class="method-source-code" id="image-3D-source">
1916
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 285</span>
1917
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">image=</span><span class="ruby-identifier">image</span>
1918
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:image</span>] = <span class="ruby-identifier">image</span>
1919
- <span class="ruby-keyword">end</span></pre>
1920
- </div><!-- image-3D-source -->
1921
-
1922
- </div>
1923
-
1924
-
1925
-
1926
-
1927
- </div><!-- image-3D-method -->
1928
-
1929
-
1930
- <div id="method-i-image_id" class="method-detail ">
1931
-
1932
- <div class="method-heading">
1933
- <span class="method-name">image_id</span><span
1934
- class="method-args">(image)</span>
1935
- <span class="method-click-advice">click to toggle source</span>
1936
- </div>
1937
-
1938
-
1939
- <div class="method-description">
1940
-
1941
-
1942
-
1943
-
1944
-
1945
- <div class="method-source-code" id="image_id-source">
1946
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 1238</span>
1947
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">image_id</span>(<span class="ruby-identifier">image</span>)
1948
- <span class="ruby-identifier">image</span>.<span class="ruby-identifier">id</span>
1949
- <span class="ruby-keyword">end</span></pre>
1950
- </div><!-- image_id-source -->
1951
-
1952
- </div>
1953
-
1954
-
1955
-
1956
-
1957
- </div><!-- image_id-method -->
1958
-
1959
-
1960
- <div id="method-i-image_search_text" class="method-detail ">
1961
-
1962
- <div class="method-heading">
1963
- <span class="method-name">image_search_text</span><span
1964
- class="method-args">(image)</span>
1965
- <span class="method-click-advice">click to toggle source</span>
1966
- </div>
1967
-
1968
-
1969
- <div class="method-description">
1970
-
1971
-
1972
-
1973
-
1974
-
1975
- <div class="method-source-code" id="image_search_text-source">
1976
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 1250</span>
1977
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">image_search_text</span>(<span class="ruby-identifier">image</span>)
1978
- <span class="ruby-identifier">image</span>.<span class="ruby-identifier">to_s</span>
1979
- <span class="ruby-keyword">end</span></pre>
1980
- </div><!-- image_search_text-source -->
1981
-
1982
- </div>
1983
-
1984
-
1985
-
1986
-
1987
- </div><!-- image_search_text-method -->
1988
-
1989
-
1990
- <div id="method-i-images" class="method-detail ">
1991
-
1992
- <div class="method-heading">
1993
- <span class="method-name">images</span><span
1994
- class="method-args">(search_terms = [], options = {})</span>
1995
- <span class="method-click-advice">click to toggle source</span>
1996
- </div>
1997
-
1998
-
1999
- <div class="method-description">
2000
-
2001
-
2002
-
2003
-
2004
-
2005
- <div class="method-source-code" id="images-source">
2006
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 246</span>
2007
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">images</span>(<span class="ruby-identifier">search_terms</span> = [], <span class="ruby-identifier">options</span> = {})
2008
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
2009
- <span class="ruby-identifier">images</span> = []
2010
-
2011
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine</span>
2012
- <span class="ruby-identifier">loaded_images</span> = <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">images</span>
2013
-
2014
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">loaded_images</span>
2015
- <span class="ruby-identifier">require_all</span> = <span class="ruby-identifier">config</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value">:require_all</span>, <span class="ruby-keyword">false</span>)
2016
-
2017
- <span class="ruby-identifier">loaded_images</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">image</span><span class="ruby-operator">|</span>
2018
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">usable_image?</span>(<span class="ruby-identifier">image</span>)
2019
- <span class="ruby-identifier">include_image</span> = ( <span class="ruby-identifier">search_terms</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">require_all</span> )
2020
- <span class="ruby-identifier">image_text</span> = <span class="ruby-identifier">image_search_text</span>(<span class="ruby-identifier">image</span>)
2021
-
2022
- <span class="ruby-identifier">search_terms</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">term</span><span class="ruby-operator">|</span>
2023
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">config</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value">:match_case</span>, <span class="ruby-keyword">false</span>)
2024
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">image_text</span>.<span class="ruby-identifier">match</span>(<span class="ruby-node">/#{term}/</span>)
2025
- <span class="ruby-keyword">else</span>
2026
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">image_text</span>.<span class="ruby-identifier">match</span>(<span class="ruby-node">/#{term}/</span>)
2027
- <span class="ruby-keyword">end</span>
2028
-
2029
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">require_all</span>
2030
- <span class="ruby-identifier">include_image</span> = <span class="ruby-keyword">false</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">success</span>
2031
- <span class="ruby-keyword">else</span>
2032
- <span class="ruby-identifier">include_image</span> = <span class="ruby-keyword">true</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span>
2033
- <span class="ruby-keyword">end</span>
2034
- <span class="ruby-keyword">end</span>
2035
-
2036
- <span class="ruby-identifier">images</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">image</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">include_image</span>
2037
- <span class="ruby-keyword">end</span>
2038
- <span class="ruby-keyword">end</span>
2039
- <span class="ruby-keyword">end</span>
2040
- <span class="ruby-keyword">end</span>
2041
- <span class="ruby-identifier">images</span>
2042
- <span class="ruby-keyword">end</span></pre>
2043
- </div><!-- images-source -->
2044
-
2045
- </div>
2046
-
2047
-
2048
-
2049
-
2050
- </div><!-- images-method -->
2051
-
2052
-
2053
- <div id="method-i-local-3F" class="method-detail ">
2054
-
2055
- <div class="method-heading">
2056
- <span class="method-name">local?</span><span
2057
- class="method-args">()</span>
2058
- <span class="method-click-advice">click to toggle source</span>
2059
- </div>
2060
-
2061
-
2062
- <div class="method-description">
2063
-
2064
-
2065
-
2066
-
2067
-
2068
- <div class="method-source-code" id="local-3F-source">
2069
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 71</span>
2070
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">local?</span>
2071
- <span class="ruby-ivar">@local_context</span> <span class="ruby-operator">?</span> <span class="ruby-keyword">true</span> <span class="ruby-operator">:</span> <span class="ruby-keyword">false</span>
2072
- <span class="ruby-keyword">end</span></pre>
2073
- </div><!-- local-3F-source -->
2074
-
2075
- </div>
2076
-
2077
-
2078
-
2079
-
2080
- </div><!-- local-3F-method -->
2081
-
2082
-
2083
- <div id="method-i-local_machine" class="method-detail ">
2084
-
2085
- <div class="method-heading">
2086
- <span class="method-name">local_machine</span><span
2087
- class="method-args">()</span>
2088
- <span class="method-click-advice">click to toggle source</span>
2089
- </div>
2090
-
2091
-
2092
- <div class="method-description">
2093
-
2094
-
2095
-
2096
-
2097
-
2098
- <div class="method-source-code" id="local_machine-source">
2099
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 115</span>
2100
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">local_machine</span>
2101
- <span class="ruby-ivar">@local_machine</span>
2102
- <span class="ruby-keyword">end</span></pre>
2103
- </div><!-- local_machine-source -->
2104
-
2105
- </div>
2106
-
2107
-
2108
-
2109
-
2110
- </div><!-- local_machine-method -->
2111
-
2112
-
2113
- <div id="method-i-local_machine-3D" class="method-detail ">
2114
-
2115
- <div class="method-heading">
2116
- <span class="method-name">local_machine=</span><span
2117
- class="method-args">(local_machine)</span>
2118
- <span class="method-click-advice">click to toggle source</span>
2119
- </div>
2120
-
2121
-
2122
- <div class="method-description">
2123
-
2124
-
2125
-
2126
-
2127
-
2128
- <div class="method-source-code" id="local_machine-3D-source">
2129
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 119</span>
2130
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">local_machine=</span><span class="ruby-identifier">local_machine</span>
2131
- <span class="ruby-ivar">@local_machine</span> = <span class="ruby-identifier">local_machine</span>
2132
- <span class="ruby-keyword">end</span></pre>
2133
- </div><!-- local_machine-3D-source -->
2134
-
2135
- </div>
2136
-
2137
-
2138
-
2139
-
2140
- </div><!-- local_machine-3D-method -->
2141
-
2142
-
2143
- <div id="method-i-localize" class="method-detail ">
2144
-
2145
- <div class="method-heading">
2146
- <span class="method-name">localize</span><span
2147
- class="method-args">()</span>
2148
- <span class="method-click-advice">click to toggle source</span>
2149
- </div>
2150
-
2151
-
2152
- <div class="method-description">
2153
-
2154
-
2155
-
2156
-
2157
-
2158
- <div class="method-source-code" id="localize-source">
2159
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 56</span>
2160
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">localize</span>
2161
- <span class="ruby-ivar">@local_context</span> = <span class="ruby-keyword">true</span>
2162
- <span class="ruby-identifier">myself</span>.<span class="ruby-identifier">local_machine</span> = <span class="ruby-identifier">create_machine</span>(<span class="ruby-value">:local_machine</span>, <span class="ruby-value">:physical</span>)
2163
- <span class="ruby-keyword">end</span></pre>
2164
- </div><!-- localize-source -->
2165
-
2166
- </div>
2167
-
2168
-
2169
-
2170
-
2171
- </div><!-- localize-method -->
2172
-
2173
-
2174
- <div id="method-i-lookup_array" class="method-detail ">
2175
-
2176
- <div class="method-heading">
2177
- <span class="method-name">lookup_array</span><span
2178
- class="method-args">(property, default = [], options = {})</span>
2179
- <span class="method-click-advice">click to toggle source</span>
2180
- </div>
2181
-
2182
-
2183
- <div class="method-description">
2184
-
2185
-
2186
-
2187
-
2188
-
2189
- <div class="method-source-code" id="lookup_array-source">
2190
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 816</span>
2191
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">lookup_array</span>(<span class="ruby-identifier">property</span>, <span class="ruby-identifier">default</span> = [], <span class="ruby-identifier">options</span> = {})
2192
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>).<span class="ruby-identifier">import</span>({ <span class="ruby-value">:context</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">:array</span> })
2193
- <span class="ruby-identifier">lookup_config</span>(<span class="ruby-identifier">property</span>, <span class="ruby-identifier">default</span>, <span class="ruby-identifier">config</span>)
2194
- <span class="ruby-keyword">end</span></pre>
2195
- </div><!-- lookup_array-source -->
2196
-
2197
- </div>
2198
-
2199
-
2200
-
2201
-
2202
- </div><!-- lookup_array-method -->
2203
-
2204
-
2205
- <div id="method-i-lookup_config" class="method-detail ">
2206
-
2207
- <div class="method-heading">
2208
- <span class="method-name">lookup_config</span><span
2209
- class="method-args">(property, default = nil, options = {})</span>
2210
- <span class="method-click-advice">click to toggle source</span>
2211
- </div>
2212
-
2213
-
2214
- <div class="method-description">
2215
-
2216
-
2217
-
2218
-
2219
-
2220
- <div class="method-source-code" id="lookup_config-source">
2221
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 800</span>
2222
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">lookup_config</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> = {})
2223
- <span class="ruby-keyword">if</span> <span class="ruby-operator">!</span> <span class="ruby-identifier">local?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">bootstrap_script</span>
2224
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>).<span class="ruby-identifier">import</span>({ <span class="ruby-value">:property</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">property</span> })
2225
- <span class="ruby-identifier">result</span> = <span class="ruby-identifier">run</span>.<span class="ruby-identifier">lookup</span>(<span class="ruby-identifier">config</span>)
2226
-
2227
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">result</span>.<span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">code</span>.<span class="ruby-identifier">success</span>
2228
- <span class="ruby-keyword">return</span> <span class="ruby-constant">Util</span><span class="ruby-operator">::</span><span class="ruby-constant">Data</span>.<span class="ruby-identifier">value</span>(<span class="ruby-constant">Util</span><span class="ruby-operator">::</span><span class="ruby-constant">Data</span>.<span class="ruby-identifier">parse_json</span>(<span class="ruby-identifier">result</span>.<span class="ruby-identifier">output</span>), <span class="ruby-identifier">default</span>)
2229
- <span class="ruby-keyword">end</span>
2230
- <span class="ruby-keyword">return</span> <span class="ruby-identifier">default</span>
2231
- <span class="ruby-keyword">end</span>
2232
- <span class="ruby-identifier">options</span>[<span class="ruby-value">:hiera_scope</span>] = <span class="ruby-constant">Util</span><span class="ruby-operator">::</span><span class="ruby-constant">Data</span>.<span class="ruby-identifier">prefix</span>(<span class="ruby-string">&#39;::&#39;</span>, <span class="ruby-identifier">lookup_facts</span>, <span class="ruby-string">&#39;&#39;</span>)
2233
- <span class="ruby-identifier">lookup</span>(<span class="ruby-identifier">property</span>, <span class="ruby-identifier">default</span>, <span class="ruby-identifier">options</span>)
2234
- <span class="ruby-keyword">end</span></pre>
2235
- </div><!-- lookup_config-source -->
2236
-
2237
- </div>
2238
-
2239
-
2240
-
2241
-
2242
- </div><!-- lookup_config-method -->
2243
-
2244
-
2245
- <div id="method-i-lookup_facts" class="method-detail ">
2246
-
2247
- <div class="method-heading">
2248
- <span class="method-name">lookup_facts</span><span
2249
- class="method-args">()</span>
2250
- <span class="method-click-advice">click to toggle source</span>
2251
- </div>
2252
-
2253
-
2254
- <div class="method-description">
2255
-
2256
-
2257
-
2258
-
2259
-
2260
- <div class="method-source-code" id="lookup_facts-source">
2261
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 787</span>
2262
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">lookup_facts</span>
2263
- <span class="ruby-keyword">if</span> <span class="ruby-operator">!</span> <span class="ruby-identifier">local?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">bootstrap_script</span>
2264
- <span class="ruby-identifier">result</span> = <span class="ruby-identifier">run</span>.<span class="ruby-identifier">facts</span>
2265
-
2266
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">result</span>.<span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">code</span>.<span class="ruby-identifier">success</span>
2267
- <span class="ruby-keyword">return</span> <span class="ruby-constant">Util</span><span class="ruby-operator">::</span><span class="ruby-constant">Data</span>.<span class="ruby-identifier">symbol_map</span>(<span class="ruby-constant">Util</span><span class="ruby-operator">::</span><span class="ruby-constant">Data</span>.<span class="ruby-identifier">parse_json</span>(<span class="ruby-identifier">result</span>.<span class="ruby-identifier">output</span>))
2268
- <span class="ruby-keyword">end</span>
2269
- <span class="ruby-keyword">end</span>
2270
- <span class="ruby-identifier">local?</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">facts</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">custom_facts</span>
2271
- <span class="ruby-keyword">end</span></pre>
2272
- </div><!-- lookup_facts-source -->
2273
-
2274
- </div>
2275
-
2276
-
2277
-
2278
-
2279
- </div><!-- lookup_facts-method -->
2280
-
2281
-
2282
- <div id="method-i-lookup_hash" class="method-detail ">
2283
-
2284
- <div class="method-heading">
2285
- <span class="method-name">lookup_hash</span><span
2286
- class="method-args">(property, default = {}, options = {})</span>
2287
- <span class="method-click-advice">click to toggle source</span>
2288
- </div>
2289
-
2290
-
2291
- <div class="method-description">
2292
-
2293
-
2294
-
2295
-
2296
-
2297
- <div class="method-source-code" id="lookup_hash-source">
2298
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 823</span>
2299
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">lookup_hash</span>(<span class="ruby-identifier">property</span>, <span class="ruby-identifier">default</span> = {}, <span class="ruby-identifier">options</span> = {})
2300
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>).<span class="ruby-identifier">import</span>({ <span class="ruby-value">:context</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">:hash</span> })
2301
- <span class="ruby-identifier">lookup_config</span>(<span class="ruby-identifier">property</span>, <span class="ruby-identifier">default</span>, <span class="ruby-identifier">config</span>)
2302
- <span class="ruby-keyword">end</span></pre>
2303
- </div><!-- lookup_hash-source -->
2304
-
2305
- </div>
2306
-
2307
-
2308
-
2309
-
2310
- </div><!-- lookup_hash-method -->
2311
-
2312
-
2313
- <div id="method-i-machine" class="method-detail ">
2314
-
2315
- <div class="method-heading">
2316
- <span class="method-name">machine</span><span
2317
- class="method-args">()</span>
2318
- <span class="method-click-advice">click to toggle source</span>
2319
- </div>
2320
-
2321
-
2322
- <div class="method-description">
2323
-
2324
-
2325
-
2326
-
2327
-
2328
- <div class="method-source-code" id="machine-source">
2329
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 105</span>
2330
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">machine</span>
2331
- <span class="ruby-ivar">@machine</span>
2332
- <span class="ruby-keyword">end</span></pre>
2333
- </div><!-- machine-source -->
2334
-
2335
- </div>
2336
-
2337
-
2338
-
2339
-
2340
- </div><!-- machine-method -->
2341
-
2342
-
2343
- <div id="method-i-machine-3D" class="method-detail ">
2344
-
2345
- <div class="method-heading">
2346
- <span class="method-name">machine=</span><span
2347
- class="method-args">(machine)</span>
2348
- <span class="method-click-advice">click to toggle source</span>
2349
- </div>
2350
-
2351
-
2352
- <div class="method-description">
2353
-
2354
-
2355
-
2356
-
2357
-
2358
- <div class="method-source-code" id="machine-3D-source">
2359
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 109</span>
2360
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">machine=</span><span class="ruby-identifier">machine</span>
2361
- <span class="ruby-ivar">@machine</span> = <span class="ruby-identifier">machine</span>
2362
- <span class="ruby-keyword">end</span></pre>
2363
- </div><!-- machine-3D-source -->
2364
-
2365
- </div>
2366
-
2367
-
2368
-
2369
-
2370
- </div><!-- machine-3D-method -->
2371
-
2372
-
2373
- <div id="method-i-machine_config" class="method-detail ">
2374
-
2375
- <div class="method-heading">
2376
- <span class="method-name">machine_config</span><span
2377
- class="method-args">() { |config| ... }</span>
2378
- <span class="method-click-advice">click to toggle source</span>
2379
- </div>
2380
-
2381
-
2382
- <div class="method-description">
2383
-
2384
-
2385
-
2386
-
2387
-
2388
- <div class="method-source-code" id="machine_config-source">
2389
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 364</span>
2390
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">machine_config</span>
2391
- <span class="ruby-identifier">name</span> = <span class="ruby-identifier">setting</span>(<span class="ruby-value">:id</span>)
2392
- <span class="ruby-identifier">name</span> = <span class="ruby-identifier">setting</span>(<span class="ruby-value">:hostname</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">name</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">name</span>.<span class="ruby-identifier">empty?</span>
2393
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">new</span>({ <span class="ruby-value">:name</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">name</span> })
2394
-
2395
- <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>
2396
- <span class="ruby-identifier">config</span>
2397
- <span class="ruby-keyword">end</span></pre>
2398
- </div><!-- machine_config-source -->
2399
-
2400
- </div>
2401
-
2402
-
2403
-
2404
-
2405
- </div><!-- machine_config-method -->
2406
-
2407
-
2408
- <div id="method-i-machine_type" class="method-detail ">
2409
-
2410
- <div class="method-heading">
2411
- <span class="method-name">machine_type</span><span
2412
- class="method-args">(reset = false)</span>
2413
- <span class="method-click-advice">click to toggle source</span>
2414
- </div>
2415
-
2416
-
2417
- <div class="method-description">
2418
-
2419
-
2420
-
2421
-
2422
-
2423
- <div class="method-source-code" id="machine_type-source">
2424
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 228</span>
2425
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">machine_type</span>(<span class="ruby-identifier">reset</span> = <span class="ruby-keyword">false</span>)
2426
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:machine_type</span>] = <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">machine_type</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine</span> <span class="ruby-operator">&amp;&amp;</span> ( <span class="ruby-identifier">reset</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">myself</span>[<span class="ruby-value">:machine_type</span>].<span class="ruby-identifier">nil?</span> )
2427
- <span class="ruby-identifier">machine_type</span> = <span class="ruby-identifier">myself</span>[<span class="ruby-value">:machine_type</span>]
2428
-
2429
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine_type</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">machine</span>
2430
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">types</span> = <span class="ruby-identifier">machine_types</span>
2431
- <span class="ruby-keyword">unless</span> <span class="ruby-identifier">types</span>.<span class="ruby-identifier">empty?</span>
2432
- <span class="ruby-identifier">machine_type</span> = <span class="ruby-identifier">machine_type_id</span>(<span class="ruby-identifier">types</span>.<span class="ruby-identifier">first</span>)
2433
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:machine_type</span>] = <span class="ruby-identifier">machine_type</span>
2434
- <span class="ruby-keyword">end</span>
2435
- <span class="ruby-keyword">end</span>
2436
- <span class="ruby-keyword">end</span>
2437
-
2438
- <span class="ruby-identifier">machine_type</span>
2439
- <span class="ruby-keyword">end</span></pre>
2440
- </div><!-- machine_type-source -->
2441
-
2442
- </div>
2443
-
2444
-
2445
-
2446
-
2447
- </div><!-- machine_type-method -->
2448
-
2449
-
2450
- <div id="method-i-machine_type_id" class="method-detail ">
2451
-
2452
- <div class="method-heading">
2453
- <span class="method-name">machine_type_id</span><span
2454
- class="method-args">(machine_type)</span>
2455
- <span class="method-click-advice">click to toggle source</span>
2456
- </div>
2457
-
2458
-
2459
- <div class="method-description">
2460
-
2461
-
2462
-
2463
-
2464
-
2465
- <div class="method-source-code" id="machine_type_id-source">
2466
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 1225</span>
2467
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">machine_type_id</span>(<span class="ruby-identifier">machine_type</span>)
2468
- <span class="ruby-identifier">machine_type</span>.<span class="ruby-identifier">id</span>
2469
- <span class="ruby-keyword">end</span></pre>
2470
- </div><!-- machine_type_id-source -->
2471
-
2472
- </div>
2473
-
2474
-
2475
-
2476
-
2477
- </div><!-- machine_type_id-method -->
2478
-
2479
-
2480
- <div id="method-i-machine_types" class="method-detail ">
2481
-
2482
- <div class="method-heading">
2483
- <span class="method-name">machine_types</span><span
2484
- class="method-args">()</span>
2485
- <span class="method-click-advice">click to toggle source</span>
2486
- </div>
2487
-
2488
-
2489
- <div class="method-description">
2490
-
2491
-
2492
-
2493
-
2494
-
2495
- <div class="method-source-code" id="machine_types-source">
2496
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 224</span>
2497
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">machine_types</span> <span class="ruby-comment"># Must be set at machine level (queried)</span>
2498
- <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">machine_types</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine</span>
2499
- <span class="ruby-keyword">end</span></pre>
2500
- </div><!-- machine_types-source -->
2501
-
2502
- </div>
2503
-
2504
-
2505
-
2506
-
2507
- </div><!-- machine_types-method -->
2508
-
2509
-
2510
- <div id="method-i-method_missing" class="method-detail ">
2511
-
2512
- <div class="method-heading">
2513
- <span class="method-name">method_missing</span><span
2514
- class="method-args">(method, *args, &code)</span>
2515
- <span class="method-click-advice">click to toggle source</span>
2516
- </div>
2517
-
2518
-
2519
- <div class="method-description">
2520
-
2521
-
2522
-
2523
-
2524
-
2525
- <div class="method-source-code" id="method_missing-source">
2526
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 48</span>
2527
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">method_missing</span>(<span class="ruby-identifier">method</span>, *<span class="ruby-identifier">args</span>, &amp;<span class="ruby-identifier">code</span>)
2528
- <span class="ruby-identifier">action</span>(<span class="ruby-identifier">method</span>, *<span class="ruby-identifier">args</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">op</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
2529
- <span class="ruby-identifier">code</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">op</span>, <span class="ruby-identifier">data</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">code</span>
2530
- <span class="ruby-keyword">end</span>
2531
- <span class="ruby-keyword">end</span></pre>
2532
- </div><!-- method_missing-source -->
2533
-
2534
- </div>
2535
-
2536
-
2537
-
2538
-
2539
- </div><!-- method_missing-method -->
2540
-
2541
-
2542
- <div id="method-i-normalize" class="method-detail ">
2543
-
2544
- <div class="method-heading">
2545
- <span class="method-name">normalize</span><span
2546
- class="method-args">(reload)</span>
2547
- <span class="method-click-advice">click to toggle source</span>
2548
- </div>
2549
-
2550
-
2551
- <div class="method-description">
2552
-
2553
-
2554
-
2555
-
2556
-
2557
- <div class="method-source-code" id="normalize-source">
2558
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 12</span>
2559
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">normalize</span>(<span class="ruby-identifier">reload</span>)
2560
- <span class="ruby-keyword">super</span>
2561
-
2562
- <span class="ruby-ivar">@class_color</span> = <span class="ruby-value">:purple</span>
2563
-
2564
- <span class="ruby-identifier">export</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">value</span><span class="ruby-operator">|</span>
2565
- <span class="ruby-identifier">myself</span>[<span class="ruby-identifier">name</span>] = <span class="ruby-identifier">value</span>
2566
- <span class="ruby-keyword">end</span>
2567
-
2568
- <span class="ruby-identifier">ui</span>.<span class="ruby-identifier">resource</span> = <span class="ruby-constant">Util</span><span class="ruby-operator">::</span><span class="ruby-constant">Console</span>.<span class="ruby-identifier">colorize</span>(<span class="ruby-identifier">hostname</span>, <span class="ruby-ivar">@class_color</span>)
2569
- <span class="ruby-identifier">logger</span> = <span class="ruby-identifier">hostname</span>
2570
-
2571
- <span class="ruby-identifier">add_groups</span>([ <span class="ruby-string">&quot;all&quot;</span>, <span class="ruby-identifier">plugin_provider</span>.<span class="ruby-identifier">to_s</span>, <span class="ruby-identifier">plugin_name</span>.<span class="ruby-identifier">to_s</span> ])
2572
-
2573
- <span class="ruby-keyword">unless</span> <span class="ruby-identifier">reload</span>
2574
- <span class="ruby-ivar">@cli_interface</span> = <span class="ruby-constant">Util</span><span class="ruby-operator">::</span><span class="ruby-constant">Liquid</span>.<span class="ruby-identifier">new</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">method</span>, <span class="ruby-identifier">args</span>, &amp;<span class="ruby-identifier">code</span><span class="ruby-operator">|</span>
2575
- <span class="ruby-identifier">result</span> = <span class="ruby-identifier">exec</span>({ <span class="ruby-value">:commands</span> =<span class="ruby-operator">&gt;</span> [ [ <span class="ruby-identifier">method</span>, <span class="ruby-identifier">args</span> ].<span class="ruby-identifier">flatten</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">&#39; &#39;</span>) ] }) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">op</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
2576
- <span class="ruby-identifier">code</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">op</span>, <span class="ruby-identifier">data</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">code</span>
2577
- <span class="ruby-keyword">end</span>
2578
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">result</span>
2579
- <span class="ruby-identifier">result</span> = <span class="ruby-identifier">result</span>.<span class="ruby-identifier">first</span>
2580
- <span class="ruby-identifier">alert</span>(<span class="ruby-identifier">result</span>.<span class="ruby-identifier">errors</span>) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">result</span>.<span class="ruby-identifier">errors</span>.<span class="ruby-identifier">empty?</span>
2581
- <span class="ruby-keyword">end</span>
2582
- <span class="ruby-identifier">result</span>
2583
- <span class="ruby-keyword">end</span>
2584
-
2585
- <span class="ruby-ivar">@action_interface</span> = <span class="ruby-constant">Util</span><span class="ruby-operator">::</span><span class="ruby-constant">Liquid</span>.<span class="ruby-identifier">new</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">method</span>, <span class="ruby-identifier">args</span>, &amp;<span class="ruby-identifier">code</span><span class="ruby-operator">|</span>
2586
- <span class="ruby-identifier">action</span>(<span class="ruby-identifier">method</span>, *<span class="ruby-identifier">args</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">op</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
2587
- <span class="ruby-identifier">code</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">op</span>, <span class="ruby-identifier">data</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">code</span>
2588
- <span class="ruby-keyword">end</span>
2589
- <span class="ruby-keyword">end</span>
2590
- <span class="ruby-keyword">end</span>
2591
- <span class="ruby-keyword">end</span></pre>
2592
- </div><!-- normalize-source -->
2593
-
2594
- </div>
2595
-
2596
-
2597
-
2598
-
2599
- </div><!-- normalize-method -->
2600
-
2601
-
2602
- <div id="method-i-private_ip" class="method-detail ">
2603
-
2604
- <div class="method-heading">
2605
- <span class="method-name">private_ip</span><span
2606
- class="method-args">(reset = false)</span>
2607
- <span class="method-click-advice">click to toggle source</span>
2608
- </div>
2609
-
2610
-
2611
- <div class="method-description">
2612
-
2613
-
2614
-
2615
-
2616
-
2617
- <div class="method-source-code" id="private_ip-source">
2618
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 137</span>
2619
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">private_ip</span>(<span class="ruby-identifier">reset</span> = <span class="ruby-keyword">false</span>)
2620
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:private_ip</span>] = <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">private_ip</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine</span> <span class="ruby-operator">&amp;&amp;</span> ( <span class="ruby-identifier">reset</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">setting</span>(<span class="ruby-value">:private_ip</span>).<span class="ruby-identifier">nil?</span> )
2621
- <span class="ruby-identifier">setting</span>(<span class="ruby-value">:private_ip</span>)
2622
- <span class="ruby-keyword">end</span></pre>
2623
- </div><!-- private_ip-source -->
2624
-
2625
- </div>
2626
-
2627
-
2628
-
2629
-
2630
- </div><!-- private_ip-method -->
2631
-
2632
-
2633
- <div id="method-i-private_key" class="method-detail ">
2634
-
2635
- <div class="method-heading">
2636
- <span class="method-name">private_key</span><span
2637
- class="method-args">()</span>
2638
- <span class="method-click-advice">click to toggle source</span>
2639
- </div>
2640
-
2641
-
2642
- <div class="method-description">
2643
-
2644
-
2645
-
2646
-
2647
-
2648
- <div class="method-source-code" id="private_key-source">
2649
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 205</span>
2650
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">private_key</span>
2651
- <span class="ruby-identifier">config_key</span> = <span class="ruby-identifier">myself</span>[<span class="ruby-value">:private_key</span>]
2652
- <span class="ruby-keyword">return</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">expand_path</span>(<span class="ruby-identifier">config_key</span>, <span class="ruby-identifier">network</span>.<span class="ruby-identifier">directory</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">config_key</span>
2653
- <span class="ruby-keyword">nil</span>
2654
- <span class="ruby-keyword">end</span></pre>
2655
- </div><!-- private_key-source -->
2656
-
2657
- </div>
2658
-
2659
-
2660
-
2661
-
2662
- </div><!-- private_key-method -->
2663
-
2664
-
2665
- <div id="method-i-private_key-3D" class="method-detail ">
2666
-
2667
- <div class="method-heading">
2668
- <span class="method-name">private_key=</span><span
2669
- class="method-args">(private_key)</span>
2670
- <span class="method-click-advice">click to toggle source</span>
2671
- </div>
2672
-
2673
-
2674
- <div class="method-description">
2675
-
2676
-
2677
-
2678
-
2679
-
2680
- <div class="method-source-code" id="private_key-3D-source">
2681
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 201</span>
2682
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">private_key=</span><span class="ruby-identifier">private_key</span>
2683
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:private_key</span>] = <span class="ruby-identifier">private_key</span>
2684
- <span class="ruby-keyword">end</span></pre>
2685
- </div><!-- private_key-3D-source -->
2686
-
2687
- </div>
2688
-
2689
-
2690
-
2691
-
2692
- </div><!-- private_key-3D-method -->
2693
-
2694
-
2695
- <div id="method-i-profiles" class="method-detail ">
2696
-
2697
- <div class="method-heading">
2698
- <span class="method-name">profiles</span><span
2699
- class="method-args">()</span>
2700
- <span class="method-click-advice">click to toggle source</span>
2701
- </div>
2702
-
2703
-
2704
- <div class="method-description">
2705
-
2706
-
2707
-
2708
-
2709
-
2710
- <div class="method-source-code" id="profiles-source">
2711
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 310</span>
2712
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">profiles</span>
2713
- [ <span class="ruby-identifier">array</span>(<span class="ruby-identifier">myself</span>[<span class="ruby-value">:profiles</span>]), <span class="ruby-identifier">lookup_array</span>(<span class="ruby-value">:profiles</span>).<span class="ruby-identifier">reverse</span> ].<span class="ruby-identifier">flatten</span>
2714
- <span class="ruby-keyword">end</span></pre>
2715
- </div><!-- profiles-source -->
2716
-
2717
- </div>
2718
-
2719
-
2720
-
2721
-
2722
- </div><!-- profiles-method -->
2723
-
2724
-
2725
- <div id="method-i-profiles-3D" class="method-detail ">
2726
-
2727
- <div class="method-heading">
2728
- <span class="method-name">profiles=</span><span
2729
- class="method-args">(profiles)</span>
2730
- <span class="method-click-advice">click to toggle source</span>
2731
- </div>
2732
-
2733
-
2734
- <div class="method-description">
2735
-
2736
-
2737
-
2738
-
2739
-
2740
- <div class="method-source-code" id="profiles-3D-source">
2741
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 306</span>
2742
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">profiles=</span><span class="ruby-identifier">profiles</span>
2743
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:profiles</span>] = <span class="ruby-identifier">array</span>(<span class="ruby-identifier">profiles</span>)
2744
- <span class="ruby-keyword">end</span></pre>
2745
- </div><!-- profiles-3D-source -->
2746
-
2747
- </div>
2748
-
2749
-
2750
-
2751
-
2752
- </div><!-- profiles-3D-method -->
2753
-
2754
-
2755
- <div id="method-i-provisioner_info" class="method-detail ">
2756
-
2757
- <div class="method-heading">
2758
- <span class="method-name">provisioner_info</span><span
2759
- class="method-args">()</span>
2760
- <span class="method-click-advice">click to toggle source</span>
2761
- </div>
2762
-
2763
-
2764
- <div class="method-description">
2765
-
2766
-
2767
-
2768
-
2769
-
2770
- <div class="method-source-code" id="provisioner_info-source">
2771
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 316</span>
2772
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">provisioner_info</span>
2773
- <span class="ruby-identifier">provisioner_info</span> = {}
2774
-
2775
- <span class="ruby-comment"># Compose needed provisioners and profiles</span>
2776
- <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</span><span class="ruby-operator">|</span>
2777
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">info</span> = <span class="ruby-constant">Plugin</span><span class="ruby-operator">::</span><span class="ruby-constant">Provisioner</span>.<span class="ruby-identifier">translate_reference</span>(<span class="ruby-identifier">profile</span>)
2778
- <span class="ruby-identifier">provider</span> = <span class="ruby-identifier">info</span>[<span class="ruby-value">:provider</span>]
2779
-
2780
- <span class="ruby-identifier">provisioner_info</span>[<span class="ruby-identifier">provider</span>] = { <span class="ruby-value">:profiles</span> =<span class="ruby-operator">&gt;</span> [] } <span class="ruby-keyword">unless</span> <span class="ruby-identifier">provisioner_info</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">provider</span>)
2781
- <span class="ruby-identifier">provisioner_info</span>[<span class="ruby-identifier">provider</span>][<span class="ruby-value">:profiles</span>] <span class="ruby-operator">+=</span> <span class="ruby-identifier">info</span>[<span class="ruby-value">:profiles</span>]
2782
- <span class="ruby-keyword">end</span>
2783
- <span class="ruby-keyword">end</span>
2784
- <span class="ruby-identifier">provisioner_info</span>
2785
- <span class="ruby-keyword">end</span></pre>
2786
- </div><!-- provisioner_info-source -->
2787
-
2788
- </div>
2789
-
2790
-
2791
-
2792
-
2793
- </div><!-- provisioner_info-method -->
2794
-
2795
-
2796
- <div id="method-i-provisioners" class="method-detail ">
2797
-
2798
- <div class="method-heading">
2799
- <span class="method-name">provisioners</span><span
2800
- class="method-args">()</span>
2801
- <span class="method-click-advice">click to toggle source</span>
2802
- </div>
2803
-
2804
-
2805
- <div class="method-description">
2806
-
2807
-
2808
-
2809
-
2810
-
2811
- <div class="method-source-code" id="provisioners-source">
2812
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 333</span>
2813
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">provisioners</span>
2814
- <span class="ruby-identifier">provisioners</span> = {}
2815
- <span class="ruby-identifier">provisioner_info</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">provider</span>, <span class="ruby-identifier">node_profiles</span><span class="ruby-operator">|</span>
2816
- <span class="ruby-identifier">provisioners</span>[<span class="ruby-identifier">provider</span>] = <span class="ruby-identifier">network</span>.<span class="ruby-identifier">provisioners</span>(<span class="ruby-identifier">provider</span>)
2817
- <span class="ruby-keyword">end</span>
2818
- <span class="ruby-identifier">provisioners</span>
2819
- <span class="ruby-keyword">end</span></pre>
2820
- </div><!-- provisioners-source -->
2821
-
2822
- </div>
2823
-
2824
-
2825
-
2826
-
2827
- </div><!-- provisioners-method -->
2828
-
2829
-
2830
- <div id="method-i-public_ip" class="method-detail ">
2831
-
2832
- <div class="method-heading">
2833
- <span class="method-name">public_ip</span><span
2834
- class="method-args">(reset = false)</span>
2835
- <span class="method-click-advice">click to toggle source</span>
2836
- </div>
2837
-
2838
-
2839
- <div class="method-description">
2840
-
2841
-
2842
-
2843
-
2844
-
2845
- <div class="method-source-code" id="public_ip-source">
2846
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 132</span>
2847
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">public_ip</span>(<span class="ruby-identifier">reset</span> = <span class="ruby-keyword">false</span>)
2848
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:public_ip</span>] = <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">public_ip</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine</span> <span class="ruby-operator">&amp;&amp;</span> ( <span class="ruby-identifier">reset</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">setting</span>(<span class="ruby-value">:public_ip</span>).<span class="ruby-identifier">nil?</span> )
2849
- <span class="ruby-identifier">setting</span>(<span class="ruby-value">:public_ip</span>)
2850
- <span class="ruby-keyword">end</span></pre>
2851
- </div><!-- public_ip-source -->
2852
-
2853
- </div>
2854
-
2855
-
2856
-
2857
-
2858
- </div><!-- public_ip-method -->
2859
-
2860
-
2861
- <div id="method-i-public_key" class="method-detail ">
2862
-
2863
- <div class="method-heading">
2864
- <span class="method-name">public_key</span><span
2865
- class="method-args">()</span>
2866
- <span class="method-click-advice">click to toggle source</span>
2867
- </div>
2868
-
2869
-
2870
- <div class="method-description">
2871
-
2872
-
2873
-
2874
-
2875
-
2876
- <div class="method-source-code" id="public_key-source">
2877
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 217</span>
2878
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">public_key</span>
2879
- <span class="ruby-identifier">config_key</span> = <span class="ruby-identifier">myself</span>[<span class="ruby-value">:public_key</span>]
2880
- <span class="ruby-keyword">return</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">expand_path</span>(<span class="ruby-identifier">config_key</span>, <span class="ruby-identifier">network</span>.<span class="ruby-identifier">directory</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">config_key</span>
2881
- <span class="ruby-keyword">end</span></pre>
2882
- </div><!-- public_key-source -->
2883
-
2884
- </div>
2885
-
2886
-
2887
-
2888
-
2889
- </div><!-- public_key-method -->
2890
-
2891
-
2892
- <div id="method-i-public_key-3D" class="method-detail ">
2893
-
2894
- <div class="method-heading">
2895
- <span class="method-name">public_key=</span><span
2896
- class="method-args">(public_key)</span>
2897
- <span class="method-click-advice">click to toggle source</span>
2898
- </div>
2899
-
2900
-
2901
- <div class="method-description">
2902
-
2903
-
2904
-
2905
-
2906
-
2907
- <div class="method-source-code" id="public_key-3D-source">
2908
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 213</span>
2909
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">public_key=</span><span class="ruby-identifier">public_key</span>
2910
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:public_key</span>] = <span class="ruby-identifier">public_key</span>
2911
- <span class="ruby-keyword">end</span></pre>
2912
- </div><!-- public_key-3D-source -->
2913
-
2914
- </div>
2915
-
2916
-
2917
-
2918
-
2919
- </div><!-- public_key-3D-method -->
2920
-
2921
-
2922
- <div id="method-i-reload" class="method-detail ">
2923
-
2924
- <div class="method-heading">
2925
- <span class="method-name">reload</span><span
2926
- class="method-args">(options = {}) { |:config, config| ... }</span>
2927
- <span class="method-click-advice">click to toggle source</span>
2928
- </div>
2929
-
2930
-
2931
- <div class="method-description">
2932
-
2933
-
2934
-
2935
-
2936
-
2937
- <div class="method-source-code" id="reload-source">
2938
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 990</span>
2939
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">reload</span>(<span class="ruby-identifier">options</span> = {})
2940
- <span class="ruby-identifier">success</span> = <span class="ruby-keyword">true</span>
2941
-
2942
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">created?</span>
2943
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
2944
-
2945
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">extension_check</span>(<span class="ruby-value">:reload</span>, { <span class="ruby-value">:config</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span> })
2946
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">&quot;Reloading node: #{plugin_name}&quot;</span>)
2947
-
2948
- <span class="ruby-keyword">yield</span>(<span class="ruby-value">:config</span>, <span class="ruby-identifier">config</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
2949
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">reload</span>(<span class="ruby-identifier">config</span>.<span class="ruby-identifier">export</span>)
2950
-
2951
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">block_given?</span>
2952
- <span class="ruby-identifier">process_success</span> = <span class="ruby-keyword">yield</span>(<span class="ruby-value">:process</span>, <span class="ruby-identifier">config</span>)
2953
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">process_success</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">process_success</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">false</span>
2954
- <span class="ruby-keyword">end</span>
2955
-
2956
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span>
2957
- <span class="ruby-identifier">extension</span>(<span class="ruby-value">:reload_success</span>, { <span class="ruby-value">:config</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span> })
2958
- <span class="ruby-keyword">end</span>
2959
- <span class="ruby-keyword">end</span>
2960
- <span class="ruby-keyword">else</span>
2961
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span>(<span class="ruby-node">&quot;Node #{plugin_name} does not have an attached machine or is not created so cannot be reloaded&quot;</span>)
2962
- <span class="ruby-keyword">end</span>
2963
- <span class="ruby-identifier">success</span>
2964
- <span class="ruby-keyword">end</span></pre>
2965
- </div><!-- reload-source -->
2966
-
2967
- </div>
2968
-
2969
-
2970
-
2971
-
2972
- </div><!-- reload-method -->
2973
-
2974
-
2975
- <div id="method-i-remove_plugin" class="method-detail ">
2976
-
2977
- <div class="method-heading">
2978
- <span class="method-name">remove_plugin</span><span
2979
- class="method-args">()</span>
2980
- <span class="method-click-advice">click to toggle source</span>
2981
- </div>
2982
-
2983
-
2984
- <div class="method-description">
2985
-
2986
-
2987
-
2988
-
2989
-
2990
- <div class="method-source-code" id="remove_plugin-source">
2991
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 63</span>
2992
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">remove_plugin</span>
2993
- <span class="ruby-constant">CORL</span>.<span class="ruby-identifier">remove_plugin</span>(<span class="ruby-identifier">local_machine</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">local_machine</span>
2994
- <span class="ruby-constant">CORL</span>.<span class="ruby-identifier">remove_plugin</span>(<span class="ruby-identifier">machine</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine</span>
2995
- <span class="ruby-keyword">end</span></pre>
2996
- </div><!-- remove_plugin-source -->
2997
-
2998
- </div>
2999
-
3000
-
3001
-
3002
-
3003
- </div><!-- remove_plugin-method -->
3004
-
3005
-
3006
- <div id="method-i-render_image" class="method-detail ">
3007
-
3008
- <div class="method-heading">
3009
- <span class="method-name">render_image</span><span
3010
- class="method-args">(image)</span>
3011
- <span class="method-click-advice">click to toggle source</span>
3012
- </div>
3013
-
3014
-
3015
- <div class="method-description">
3016
-
3017
-
3018
-
3019
-
3020
-
3021
- <div class="method-source-code" id="render_image-source">
3022
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 1244</span>
3023
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">render_image</span>(<span class="ruby-identifier">image</span>)
3024
- <span class="ruby-string">&#39;&#39;</span>
3025
- <span class="ruby-keyword">end</span></pre>
3026
- </div><!-- render_image-source -->
3027
-
3028
- </div>
3029
-
3030
-
3031
-
3032
-
3033
- </div><!-- render_image-method -->
3034
-
3035
-
3036
- <div id="method-i-render_machine_type" class="method-detail ">
3037
-
3038
- <div class="method-heading">
3039
- <span class="method-name">render_machine_type</span><span
3040
- class="method-args">(machine_type)</span>
3041
- <span class="method-click-advice">click to toggle source</span>
3042
- </div>
3043
-
3044
-
3045
- <div class="method-description">
3046
-
3047
-
3048
-
3049
-
3050
-
3051
- <div class="method-source-code" id="render_machine_type-source">
3052
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 1231</span>
3053
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">render_machine_type</span>(<span class="ruby-identifier">machine_type</span>)
3054
- <span class="ruby-string">&#39;&#39;</span>
3055
- <span class="ruby-keyword">end</span></pre>
3056
- </div><!-- render_machine_type-source -->
3057
-
3058
- </div>
3059
-
3060
-
3061
-
3062
-
3063
- </div><!-- render_machine_type-method -->
3064
-
3065
-
3066
- <div id="method-i-run" class="method-detail ">
3067
-
3068
- <div class="method-heading">
3069
- <span class="method-name">run</span><span
3070
- class="method-args">()</span>
3071
- <span class="method-click-advice">click to toggle source</span>
3072
- </div>
3073
-
3074
-
3075
- <div class="method-description">
3076
-
3077
-
3078
-
3079
-
3080
-
3081
- <div class="method-source-code" id="run-source">
3082
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 746</span>
3083
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">run</span>
3084
- <span class="ruby-ivar">@action_interface</span>
3085
- <span class="ruby-keyword">end</span></pre>
3086
- </div><!-- run-source -->
3087
-
3088
- </div>
3089
-
3090
-
3091
-
3092
-
3093
- </div><!-- run-method -->
3094
-
3095
-
3096
- <div id="method-i-save" class="method-detail ">
3097
-
3098
- <div class="method-heading">
3099
- <span class="method-name">save</span><span
3100
- class="method-args">(options = {}) { |config| ... }</span>
3101
- <span class="method-click-advice">click to toggle source</span>
3102
- </div>
3103
-
3104
-
3105
- <div class="method-description">
3106
-
3107
-
3108
-
3109
-
3110
-
3111
- <div class="method-source-code" id="save-source">
3112
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 922</span>
3113
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">save</span>(<span class="ruby-identifier">options</span> = {})
3114
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
3115
-
3116
- <span class="ruby-comment"># Record machine parameters</span>
3117
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
3118
- <span class="ruby-comment"># Provider or external configuration preparation</span>
3119
- <span class="ruby-keyword">yield</span>(<span class="ruby-identifier">config</span>)
3120
- <span class="ruby-keyword">else</span>
3121
- <span class="ruby-comment"># Default configuration preparation</span>
3122
- <span class="ruby-identifier">id</span>(<span class="ruby-keyword">true</span>)
3123
- <span class="ruby-identifier">public_ip</span>(<span class="ruby-keyword">true</span>)
3124
- <span class="ruby-identifier">private_ip</span>(<span class="ruby-keyword">true</span>)
3125
- <span class="ruby-identifier">state</span>(<span class="ruby-keyword">true</span>)
3126
-
3127
- <span class="ruby-identifier">machine_type</span>(<span class="ruby-keyword">false</span>)
3128
- <span class="ruby-identifier">image</span>(<span class="ruby-keyword">false</span>)
3129
- <span class="ruby-keyword">end</span>
3130
-
3131
- <span class="ruby-identifier">network</span>.<span class="ruby-identifier">save</span>(<span class="ruby-identifier">config</span>.<span class="ruby-identifier">import</span>({
3132
- <span class="ruby-value">:commit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">true</span>,
3133
- <span class="ruby-value">:allow_empty</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">true</span>,
3134
- <span class="ruby-value">:message</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value">:message</span>, <span class="ruby-node">&quot;Saving #{plugin_provider} node #{plugin_name}&quot;</span>),
3135
- <span class="ruby-value">:remote</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value">:remote</span>, <span class="ruby-value">:edit</span>)
3136
- }))
3137
- <span class="ruby-keyword">end</span></pre>
3138
- </div><!-- save-source -->
3139
-
3140
- </div>
3141
-
3142
-
3143
-
3144
-
3145
- </div><!-- save-method -->
3146
-
3147
-
3148
- <div id="method-i-send_files" class="method-detail ">
3149
-
3150
- <div class="method-heading">
3151
- <span class="method-name">send_files</span><span
3152
- class="method-args">(local_path, remote_path, files = nil, permission = '0644', &code)</span>
3153
- <span class="method-click-advice">click to toggle source</span>
3154
- </div>
3155
-
3156
-
3157
- <div class="method-description">
3158
-
3159
-
3160
-
3161
-
3162
-
3163
- <div class="method-source-code" id="send_files-source">
3164
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 586</span>
3165
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">send_files</span>(<span class="ruby-identifier">local_path</span>, <span class="ruby-identifier">remote_path</span>, <span class="ruby-identifier">files</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">permission</span> = <span class="ruby-string">&#39;0644&#39;</span>, &amp;<span class="ruby-identifier">code</span>)
3166
- <span class="ruby-identifier">local_path</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">expand_path</span>(<span class="ruby-identifier">local_path</span>)
3167
- <span class="ruby-keyword">return</span> <span class="ruby-keyword">false</span> <span class="ruby-keyword">unless</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">directory?</span>(<span class="ruby-identifier">local_path</span>)
3168
-
3169
- <span class="ruby-identifier">success</span> = <span class="ruby-keyword">true</span>
3170
-
3171
- <span class="ruby-identifier">send_file</span> = <span class="ruby-identifier">lambda</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">local_file</span>, <span class="ruby-identifier">remote_file</span><span class="ruby-operator">|</span>
3172
- <span class="ruby-identifier">send_success</span> = <span class="ruby-identifier">upload</span>(<span class="ruby-identifier">local_file</span>, <span class="ruby-identifier">remote_file</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">op</span>, <span class="ruby-identifier">options</span><span class="ruby-operator">|</span>
3173
- <span class="ruby-identifier">code</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">op</span>, <span class="ruby-identifier">options</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">code</span>
3174
- <span class="ruby-keyword">end</span>
3175
- <span class="ruby-identifier">send_success</span> = <span class="ruby-identifier">cli_check</span>(<span class="ruby-value">:chmod</span>, <span class="ruby-identifier">permission</span>, <span class="ruby-identifier">remote_file</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">send_success</span>
3176
- <span class="ruby-identifier">send_success</span>
3177
- <span class="ruby-keyword">end</span>
3178
-
3179
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">files</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">files</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Array</span>)
3180
- <span class="ruby-identifier">files</span>.<span class="ruby-identifier">flatten</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">rel_file_name</span><span class="ruby-operator">|</span>
3181
- <span class="ruby-identifier">local_file</span> = <span class="ruby-node">&quot;#{local_path}/#{rel_file_name}&quot;</span>
3182
- <span class="ruby-identifier">remote_file</span> = <span class="ruby-node">&quot;#{remote_path}/#{rel_file_name}&quot;</span>
3183
-
3184
- <span class="ruby-keyword">if</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">exists?</span>(<span class="ruby-identifier">local_file</span>)
3185
- <span class="ruby-identifier">send_success</span> = <span class="ruby-identifier">send_file</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">local_file</span>, <span class="ruby-identifier">remote_file</span>)
3186
- <span class="ruby-identifier">success</span> = <span class="ruby-keyword">false</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">send_success</span>
3187
- <span class="ruby-keyword">end</span>
3188
- <span class="ruby-keyword">end</span>
3189
- <span class="ruby-keyword">else</span>
3190
- <span class="ruby-identifier">send_success</span> = <span class="ruby-identifier">send_file</span>.<span class="ruby-identifier">call</span>(<span class="ruby-identifier">local_path</span>, <span class="ruby-identifier">remote_path</span>)
3191
- <span class="ruby-identifier">success</span> = <span class="ruby-keyword">false</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">send_success</span>
3192
- <span class="ruby-keyword">end</span>
3193
- <span class="ruby-identifier">success</span>
3194
- <span class="ruby-keyword">end</span></pre>
3195
- </div><!-- send_files-source -->
3196
-
3197
- </div>
3198
-
3199
-
3200
-
3201
-
3202
- </div><!-- send_files-method -->
3203
-
3204
-
3205
- <div id="method-i-ssh_path" class="method-detail ">
3206
-
3207
- <div class="method-heading">
3208
- <span class="method-name">ssh_path</span><span
3209
- class="method-args">(home_env_var = 'HOME', reset = false)</span>
3210
- <span class="method-click-advice">click to toggle source</span>
3211
- </div>
3212
-
3213
-
3214
- <div class="method-description">
3215
-
3216
-
3217
-
3218
-
3219
-
3220
- <div class="method-source-code" id="ssh_path-source">
3221
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 194</span>
3222
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_path</span>(<span class="ruby-identifier">home_env_var</span> = <span class="ruby-string">&#39;HOME&#39;</span>, <span class="ruby-identifier">reset</span> = <span class="ruby-keyword">false</span>)
3223
- <span class="ruby-identifier">home</span> = <span class="ruby-identifier">home</span>(<span class="ruby-identifier">home_env_var</span>, <span class="ruby-identifier">reset</span>)
3224
- <span class="ruby-identifier">home</span> <span class="ruby-operator">?</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">home</span>, <span class="ruby-string">&#39;.ssh&#39;</span>) <span class="ruby-operator">:</span> <span class="ruby-keyword">nil</span>
3225
- <span class="ruby-keyword">end</span></pre>
3226
- </div><!-- ssh_path-source -->
3227
-
3228
- </div>
3229
-
3230
-
3231
-
3232
-
3233
- </div><!-- ssh_path-method -->
3234
-
3235
-
3236
- <div id="method-i-ssh_port" class="method-detail ">
3237
-
3238
- <div class="method-heading">
3239
- <span class="method-name">ssh_port</span><span
3240
- class="method-args">()</span>
3241
- <span class="method-click-advice">click to toggle source</span>
3242
- </div>
3243
-
3244
-
3245
- <div class="method-description">
3246
-
3247
-
3248
-
3249
-
3250
-
3251
- <div class="method-source-code" id="ssh_port-source">
3252
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 178</span>
3253
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_port</span>
3254
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:ssh_port</span>] = <span class="ruby-value">22</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">myself</span>[<span class="ruby-value">:ssh_port</span>].<span class="ruby-identifier">nil?</span>
3255
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:ssh_port</span>]
3256
- <span class="ruby-keyword">end</span></pre>
3257
- </div><!-- ssh_port-source -->
3258
-
3259
- </div>
3260
-
3261
-
3262
-
3263
-
3264
- </div><!-- ssh_port-method -->
3265
-
3266
-
3267
- <div id="method-i-ssh_port-3D" class="method-detail ">
3268
-
3269
- <div class="method-heading">
3270
- <span class="method-name">ssh_port=</span><span
3271
- class="method-args">(ssh_port)</span>
3272
- <span class="method-click-advice">click to toggle source</span>
3273
- </div>
3274
-
3275
-
3276
- <div class="method-description">
3277
-
3278
-
3279
-
3280
-
3281
-
3282
- <div class="method-source-code" id="ssh_port-3D-source">
3283
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 173</span>
3284
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_port=</span><span class="ruby-identifier">ssh_port</span>
3285
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:ssh_port</span>] = <span class="ruby-identifier">ssh_port</span>
3286
- <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">init_ssh</span>(<span class="ruby-identifier">ssh_port</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine</span>
3287
- <span class="ruby-keyword">end</span></pre>
3288
- </div><!-- ssh_port-3D-source -->
3289
-
3290
- </div>
3291
-
3292
-
3293
-
3294
-
3295
- </div><!-- ssh_port-3D-method -->
3296
-
3297
-
3298
- <div id="method-i-start" class="method-detail ">
3299
-
3300
- <div class="method-heading">
3301
- <span class="method-name">start</span><span
3302
- class="method-args">(options = {}) { |:config, config| ... }</span>
3303
- <span class="method-click-advice">click to toggle source</span>
3304
- </div>
3305
-
3306
-
3307
- <div class="method-description">
3308
-
3309
-
3310
-
3311
-
3312
-
3313
- <div class="method-source-code" id="start-source">
3314
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 950</span>
3315
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">start</span>(<span class="ruby-identifier">options</span> = {})
3316
- <span class="ruby-identifier">success</span> = <span class="ruby-keyword">true</span>
3317
-
3318
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine</span>
3319
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
3320
-
3321
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">extension_check</span>(<span class="ruby-value">:start</span>, { <span class="ruby-value">:config</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span> })
3322
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">&quot;Starting node: #{plugin_name}&quot;</span>)
3323
-
3324
- <span class="ruby-keyword">yield</span>(<span class="ruby-value">:config</span>, <span class="ruby-identifier">config</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
3325
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">start</span>(<span class="ruby-identifier">config</span>.<span class="ruby-identifier">export</span>)
3326
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">save</span>(<span class="ruby-identifier">config</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span>
3327
-
3328
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span>
3329
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">config</span>.<span class="ruby-identifier">get</span>(<span class="ruby-value">:bootstrap</span>, <span class="ruby-keyword">true</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">bootstrap_script</span>
3330
- <span class="ruby-identifier">result</span> = <span class="ruby-identifier">command</span>(<span class="ruby-node">&quot;HOSTNAME=&#39;#{hostname}&#39; #{bootstrap_script}&quot;</span>, { <span class="ruby-value">:as_admin</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">true</span> }) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">op</span>, <span class="ruby-identifier">data</span><span class="ruby-operator">|</span>
3331
- <span class="ruby-keyword">yield</span>(<span class="ruby-node">&quot;bootstrap_#{op}&quot;</span>.<span class="ruby-identifier">to_sym</span>, <span class="ruby-identifier">data</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
3332
- <span class="ruby-identifier">data</span>
3333
- <span class="ruby-keyword">end</span>
3334
- <span class="ruby-identifier">success</span> = <span class="ruby-keyword">false</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">result</span>.<span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">code</span>.<span class="ruby-identifier">success</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">reload</span>
3335
- <span class="ruby-keyword">end</span>
3336
- <span class="ruby-keyword">end</span>
3337
-
3338
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">block_given?</span>
3339
- <span class="ruby-identifier">process_success</span> = <span class="ruby-keyword">yield</span>(<span class="ruby-value">:process</span>, <span class="ruby-identifier">config</span>)
3340
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">process_success</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">process_success</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">false</span>
3341
- <span class="ruby-keyword">end</span>
3342
-
3343
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span>
3344
- <span class="ruby-identifier">extension</span>(<span class="ruby-value">:start_success</span>, { <span class="ruby-value">:config</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span> })
3345
- <span class="ruby-keyword">end</span>
3346
- <span class="ruby-keyword">end</span>
3347
- <span class="ruby-keyword">else</span>
3348
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span>(<span class="ruby-node">&quot;Node #{plugin_name} does not have an attached machine so cannot be started&quot;</span>)
3349
- <span class="ruby-keyword">end</span>
3350
- <span class="ruby-identifier">success</span>
3351
- <span class="ruby-keyword">end</span></pre>
3352
- </div><!-- start-source -->
3353
-
3354
- </div>
3355
-
3356
-
3357
-
3358
-
3359
- </div><!-- start-method -->
3360
-
3361
-
3362
- <div id="method-i-state" class="method-detail ">
3363
-
3364
- <div class="method-heading">
3365
- <span class="method-name">state</span><span
3366
- class="method-args">(reset = false)</span>
3367
- <span class="method-click-advice">click to toggle source</span>
3368
- </div>
3369
-
3370
-
3371
- <div class="method-description">
3372
-
3373
-
3374
-
3375
-
3376
-
3377
- <div class="method-source-code" id="state-source">
3378
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 156</span>
3379
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">state</span>(<span class="ruby-identifier">reset</span> = <span class="ruby-keyword">false</span>)
3380
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:state</span>] = <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">state</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine</span> <span class="ruby-operator">&amp;&amp;</span> ( <span class="ruby-identifier">reset</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">setting</span>(<span class="ruby-value">:state</span>).<span class="ruby-identifier">nil?</span> )
3381
- <span class="ruby-identifier">setting</span>(<span class="ruby-value">:state</span>)
3382
- <span class="ruby-keyword">end</span></pre>
3383
- </div><!-- state-source -->
3384
-
3385
- </div>
3386
-
3387
-
3388
-
3389
-
3390
- </div><!-- state-method -->
3391
-
3392
-
3393
- <div id="method-i-stop" class="method-detail ">
3394
-
3395
- <div class="method-heading">
3396
- <span class="method-name">stop</span><span
3397
- class="method-args">(options = {}) { |:config, config| ... }</span>
3398
- <span class="method-click-advice">click to toggle source</span>
3399
- </div>
3400
-
3401
-
3402
- <div class="method-description">
3403
-
3404
-
3405
-
3406
-
3407
-
3408
- <div class="method-source-code" id="stop-source">
3409
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 1049</span>
3410
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">stop</span>(<span class="ruby-identifier">options</span> = {})
3411
- <span class="ruby-identifier">success</span> = <span class="ruby-keyword">true</span>
3412
-
3413
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">running?</span>
3414
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
3415
-
3416
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">extension_check</span>(<span class="ruby-value">:stop</span>, { <span class="ruby-value">:config</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span> })
3417
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">&quot;Stopping node: #{plugin_name}&quot;</span>)
3418
-
3419
- <span class="ruby-keyword">yield</span>(<span class="ruby-value">:config</span>, <span class="ruby-identifier">config</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
3420
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">stop</span>(<span class="ruby-identifier">config</span>.<span class="ruby-identifier">export</span>)
3421
-
3422
- <span class="ruby-identifier">myself</span>.<span class="ruby-identifier">machine</span> = <span class="ruby-keyword">nil</span>
3423
-
3424
- <span class="ruby-identifier">override_settings</span> = <span class="ruby-keyword">false</span>
3425
- <span class="ruby-identifier">override_settings</span> = <span class="ruby-keyword">yield</span>(<span class="ruby-value">:finalize</span>, <span class="ruby-identifier">config</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">block_given?</span>
3426
-
3427
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span> <span class="ruby-identifier">override_settings</span>
3428
- <span class="ruby-identifier">delete_setting</span>(<span class="ruby-value">:id</span>)
3429
- <span class="ruby-identifier">delete_setting</span>(<span class="ruby-value">:public_ip</span>)
3430
- <span class="ruby-identifier">delete_setting</span>(<span class="ruby-value">:private_ip</span>)
3431
- <span class="ruby-identifier">delete_setting</span>(<span class="ruby-value">:ssh_port</span>)
3432
- <span class="ruby-identifier">delete_setting</span>(<span class="ruby-value">:build</span>)
3433
-
3434
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:state</span>] = <span class="ruby-value">:stopped</span>
3435
- <span class="ruby-keyword">end</span>
3436
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">save</span>(<span class="ruby-identifier">config</span>)
3437
-
3438
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">block_given?</span>
3439
- <span class="ruby-identifier">process_success</span> = <span class="ruby-keyword">yield</span>(<span class="ruby-value">:process</span>, <span class="ruby-identifier">config</span>)
3440
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">process_success</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">process_success</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">false</span>
3441
- <span class="ruby-keyword">end</span>
3442
-
3443
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span>
3444
- <span class="ruby-identifier">extension</span>(<span class="ruby-value">:stop_success</span>, { <span class="ruby-value">:config</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span> })
3445
- <span class="ruby-keyword">end</span>
3446
- <span class="ruby-keyword">end</span>
3447
- <span class="ruby-keyword">else</span>
3448
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span>(<span class="ruby-node">&quot;Node #{plugin_name} does not have an attached machine or is not running so cannot be stopped&quot;</span>)
3449
- <span class="ruby-keyword">end</span>
3450
- <span class="ruby-identifier">success</span>
3451
- <span class="ruby-keyword">end</span></pre>
3452
- </div><!-- stop-source -->
3453
-
3454
- </div>
3455
-
3456
-
3457
-
3458
-
3459
- </div><!-- stop-method -->
3460
-
3461
-
3462
- <div id="method-i-terminal" class="method-detail ">
3463
-
3464
- <div class="method-heading">
3465
- <span class="method-name">terminal</span><span
3466
- class="method-args">(options = {})</span>
3467
- <span class="method-click-advice">click to toggle source</span>
3468
- </div>
3469
-
3470
-
3471
- <div class="method-description">
3472
-
3473
-
3474
-
3475
-
3476
-
3477
- <div class="method-source-code" id="terminal-source">
3478
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 752</span>
3479
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">terminal</span>(<span class="ruby-identifier">options</span> = {})
3480
- <span class="ruby-identifier">myself</span>.<span class="ruby-identifier">status</span> = <span class="ruby-identifier">code</span>.<span class="ruby-identifier">unknown_status</span>
3481
-
3482
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">running?</span>
3483
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
3484
-
3485
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">extension_check</span>(<span class="ruby-value">:terminal</span>, { <span class="ruby-value">:config</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span> })
3486
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">&quot;Launching terminal for node: #{plugin_name}&quot;</span>)
3487
-
3488
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">local?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">local_machine</span>
3489
- <span class="ruby-identifier">active_machine</span> = <span class="ruby-identifier">local_machine</span>
3490
-
3491
- <span class="ruby-identifier">config</span>[<span class="ruby-value">:info_prefix</span>] = <span class="ruby-node">&quot;[#{hostname}] &quot;</span>
3492
- <span class="ruby-identifier">config</span>[<span class="ruby-value">:error_prefix</span>] = <span class="ruby-node">&quot;[#{hostname}] &quot;</span>
3493
- <span class="ruby-keyword">else</span>
3494
- <span class="ruby-identifier">active_machine</span> = <span class="ruby-identifier">machine</span>
3495
- <span class="ruby-keyword">end</span>
3496
-
3497
- <span class="ruby-identifier">config</span>[<span class="ruby-value">:private_keys</span>] = <span class="ruby-identifier">private_key</span>
3498
- <span class="ruby-identifier">config</span>[<span class="ruby-value">:port</span>] = <span class="ruby-identifier">ssh_port</span>
3499
-
3500
- <span class="ruby-identifier">myself</span>.<span class="ruby-identifier">status</span> = <span class="ruby-identifier">active_machine</span>.<span class="ruby-identifier">terminal</span>(<span class="ruby-identifier">user</span>, <span class="ruby-identifier">config</span>.<span class="ruby-identifier">export</span>)
3501
-
3502
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">code</span>.<span class="ruby-identifier">success</span>
3503
- <span class="ruby-identifier">extension</span>(<span class="ruby-value">:exec_success</span>, { <span class="ruby-value">:config</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span> })
3504
- <span class="ruby-keyword">end</span>
3505
- <span class="ruby-keyword">end</span>
3506
- <span class="ruby-keyword">else</span>
3507
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span>(<span class="ruby-node">&quot;Node #{plugin_name} does not have an attached machine or is not running so cannot launch terminal&quot;</span>)
3508
- <span class="ruby-keyword">end</span>
3509
- <span class="ruby-identifier">status</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">code</span>.<span class="ruby-identifier">success</span>
3510
- <span class="ruby-keyword">end</span></pre>
3511
- </div><!-- terminal-source -->
3512
-
3513
- </div>
3514
-
3515
-
3516
-
3517
-
3518
- </div><!-- terminal-method -->
3519
-
3520
-
3521
- <div id="method-i-translate_reference" class="method-detail ">
3522
-
3523
- <div class="method-heading">
3524
- <span class="method-name">translate_reference</span><span
3525
- class="method-args">(reference)</span>
3526
- <span class="method-click-advice">click to toggle source</span>
3527
- </div>
3528
-
3529
-
3530
- <div class="method-description">
3531
-
3532
-
3533
-
3534
-
3535
-
3536
- <div class="method-source-code" id="translate_reference-source">
3537
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 1192</span>
3538
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">translate_reference</span>(<span class="ruby-identifier">reference</span>)
3539
- <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>)
3540
- <span class="ruby-keyword">end</span></pre>
3541
- </div><!-- translate_reference-source -->
3542
-
3543
- </div>
3544
-
3545
-
3546
-
3547
-
3548
- </div><!-- translate_reference-method -->
3549
-
3550
-
3551
- <div id="method-i-upload" class="method-detail ">
3552
-
3553
- <div class="method-heading">
3554
- <span class="method-name">upload</span><span
3555
- class="method-args">(local_path, remote_path, options = {}) { |:config, hook_config| ... }</span>
3556
- <span class="method-click-advice">click to toggle source</span>
3557
- </div>
3558
-
3559
-
3560
- <div class="method-description">
3561
-
3562
-
3563
-
3564
-
3565
-
3566
- <div class="method-source-code" id="upload-source">
3567
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 548</span>
3568
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">upload</span>(<span class="ruby-identifier">local_path</span>, <span class="ruby-identifier">remote_path</span>, <span class="ruby-identifier">options</span> = {})
3569
- <span class="ruby-identifier">success</span> = <span class="ruby-keyword">false</span>
3570
-
3571
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">machine</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">machine</span>.<span class="ruby-identifier">running?</span>
3572
- <span class="ruby-identifier">config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">ensure</span>(<span class="ruby-identifier">options</span>)
3573
- <span class="ruby-identifier">hook_config</span> = <span class="ruby-constant">Config</span>.<span class="ruby-identifier">new</span>({ <span class="ruby-value">:local_path</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">local_path</span>, <span class="ruby-value">:remote_path</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">remote_path</span>, <span class="ruby-value">:config</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">config</span> })
3574
-
3575
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">extension_check</span>(<span class="ruby-value">:upload</span>, <span class="ruby-identifier">hook_config</span>)
3576
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">info</span>(<span class="ruby-node">&quot;Uploading to #{plugin_name}&quot;</span>)
3577
-
3578
- <span class="ruby-identifier">render</span>(<span class="ruby-node">&quot;Starting upload of #{local_path} to #{remote_path}&quot;</span>)
3579
- <span class="ruby-keyword">yield</span>(<span class="ruby-value">:config</span>, <span class="ruby-identifier">hook_config</span>) <span class="ruby-keyword">if</span> <span class="ruby-identifier">block_given?</span>
3580
-
3581
- <span class="ruby-identifier">active_machine</span> = <span class="ruby-identifier">local?</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">local_machine</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">machine</span>
3582
-
3583
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">active_machine</span>.<span class="ruby-identifier">upload</span>(<span class="ruby-identifier">local_path</span>, <span class="ruby-identifier">remote_path</span>, <span class="ruby-identifier">config</span>.<span class="ruby-identifier">export</span>) <span class="ruby-keyword">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">name</span>, <span class="ruby-identifier">sent</span>, <span class="ruby-identifier">total</span><span class="ruby-operator">|</span>
3584
- <span class="ruby-identifier">render</span>(<span class="ruby-node">&quot;#{name}: Sent #{sent} of #{total}&quot;</span>)
3585
- <span class="ruby-keyword">yield</span>(<span class="ruby-value">:progress</span>, { <span class="ruby-value">:name</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">name</span>, <span class="ruby-value">:sent</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">sent</span>, <span class="ruby-value">:total</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">total</span> })
3586
- <span class="ruby-keyword">end</span>
3587
-
3588
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">block_given?</span>
3589
- <span class="ruby-identifier">render</span>(<span class="ruby-node">&quot;Successfully finished upload of #{local_path} to #{remote_path}&quot;</span>)
3590
- <span class="ruby-identifier">process_success</span> = <span class="ruby-keyword">yield</span>(<span class="ruby-value">:process</span>, <span class="ruby-identifier">hook_config</span>)
3591
- <span class="ruby-identifier">success</span> = <span class="ruby-identifier">process_success</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">process_success</span> <span class="ruby-operator">==</span> <span class="ruby-keyword">false</span>
3592
- <span class="ruby-keyword">end</span>
3593
-
3594
- <span class="ruby-keyword">if</span> <span class="ruby-identifier">success</span>
3595
- <span class="ruby-identifier">extension</span>(<span class="ruby-value">:upload_success</span>, <span class="ruby-identifier">hook_config</span>)
3596
- <span class="ruby-keyword">end</span>
3597
- <span class="ruby-keyword">end</span>
3598
- <span class="ruby-keyword">else</span>
3599
- <span class="ruby-identifier">logger</span>.<span class="ruby-identifier">warn</span>(<span class="ruby-node">&quot;Node #{plugin_name} does not have an attached machine or is not running so cannot upload&quot;</span>)
3600
- <span class="ruby-keyword">end</span>
3601
- <span class="ruby-identifier">success</span>
3602
- <span class="ruby-keyword">end</span></pre>
3603
- </div><!-- upload-source -->
3604
-
3605
- </div>
3606
-
3607
-
3608
-
3609
-
3610
- </div><!-- upload-method -->
3611
-
3612
-
3613
- <div id="method-i-usable_image-3F" class="method-detail ">
3614
-
3615
- <div class="method-heading">
3616
- <span class="method-name">usable_image?</span><span
3617
- class="method-args">(image)</span>
3618
- <span class="method-click-advice">click to toggle source</span>
3619
- </div>
3620
-
3621
-
3622
- <div class="method-description">
3623
-
3624
-
3625
-
3626
-
3627
-
3628
- <div class="method-source-code" id="usable_image-3F-source">
3629
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 77</span>
3630
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">usable_image?</span>(<span class="ruby-identifier">image</span>)
3631
- <span class="ruby-keyword">true</span>
3632
- <span class="ruby-keyword">end</span></pre>
3633
- </div><!-- usable_image-3F-source -->
3634
-
3635
- </div>
3636
-
3637
-
3638
-
3639
-
3640
- </div><!-- usable_image-3F-method -->
3641
-
3642
-
3643
- <div id="method-i-user" class="method-detail ">
3644
-
3645
- <div class="method-heading">
3646
- <span class="method-name">user</span><span
3647
- class="method-args">()</span>
3648
- <span class="method-click-advice">click to toggle source</span>
3649
- </div>
3650
-
3651
-
3652
- <div class="method-description">
3653
-
3654
-
3655
-
3656
-
3657
-
3658
- <div class="method-source-code" id="user-source">
3659
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 167</span>
3660
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">user</span>
3661
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:user</span>]
3662
- <span class="ruby-keyword">end</span></pre>
3663
- </div><!-- user-source -->
3664
-
3665
- </div>
3666
-
3667
-
3668
-
3669
-
3670
- </div><!-- user-method -->
3671
-
3672
-
3673
- <div id="method-i-user-3D" class="method-detail ">
3674
-
3675
- <div class="method-heading">
3676
- <span class="method-name">user=</span><span
3677
- class="method-args">(user)</span>
3678
- <span class="method-click-advice">click to toggle source</span>
3679
- </div>
3680
-
3681
-
3682
- <div class="method-description">
3683
-
3684
-
3685
-
3686
-
3687
-
3688
- <div class="method-source-code" id="user-3D-source">
3689
- <pre><span class="ruby-comment"># File lib/core/plugin/node.rb, line 163</span>
3690
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">user=</span><span class="ruby-identifier">user</span>
3691
- <span class="ruby-identifier">myself</span>[<span class="ruby-value">:user</span>] = <span class="ruby-identifier">user</span>
3692
- <span class="ruby-keyword">end</span></pre>
3693
- </div><!-- user-3D-source -->
3694
-
3695
- </div>
3696
-
3697
-
3698
-
3699
-
3700
- </div><!-- user-3D-method -->
3701
-
3702
-
3703
- </section><!-- public-instance-method-details -->
3704
-
3705
- </section><!-- 5Buntitled-5D -->
3706
-
3707
- </div><!-- documentation -->
3708
-
3709
-
3710
- <footer id="validator-badges">
3711
- <p><a href="http://validator.w3.org/check/referer">[Validate]</a>
3712
- <p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.2.
3713
- <p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
3714
- </footer>
3715
-