auser-poolparty 0.2.16 → 0.2.20

Sign up to get free protection for your applications and to get access to all the features.
Files changed (139) hide show
  1. data/Manifest.txt +72 -7
  2. data/PostInstall.txt +1 -1
  3. data/Rakefile +11 -0
  4. data/bin/cloud-provision +6 -10
  5. data/bin/server-build-messenger +20 -0
  6. data/bin/server-fire-cmd +0 -2
  7. data/bin/server-list-responding +24 -0
  8. data/bin/server-start-master +4 -9
  9. data/bin/server-start-node +7 -6
  10. data/lib/erlang/messenger/Emakefile +1 -0
  11. data/lib/erlang/messenger/Rakefile +29 -20
  12. data/lib/erlang/messenger/ebin/master_app.beam +0 -0
  13. data/lib/erlang/messenger/ebin/node_app.beam +0 -0
  14. data/lib/erlang/messenger/ebin/packager.app +19 -0
  15. data/lib/erlang/messenger/ebin/pm_client.beam +0 -0
  16. data/lib/erlang/messenger/ebin/pm_cluster.beam +0 -0
  17. data/lib/erlang/messenger/ebin/pm_event_handler.beam +0 -0
  18. data/lib/erlang/messenger/ebin/pm_master.beam +0 -0
  19. data/lib/erlang/messenger/ebin/pm_master_rel-0.1.rel +1 -7
  20. data/lib/erlang/messenger/ebin/pm_master_supervisor.beam +0 -0
  21. data/lib/erlang/messenger/ebin/pm_node.beam +0 -0
  22. data/lib/erlang/messenger/ebin/pm_node_rel-0.1.rel +1 -7
  23. data/lib/erlang/messenger/ebin/pm_node_supervisor.beam +0 -0
  24. data/lib/erlang/messenger/ebin/pm_packager.beam +0 -0
  25. data/lib/erlang/messenger/ebin/utils.beam +0 -0
  26. data/lib/erlang/messenger/lib/eunit/AUTHORS +2 -0
  27. data/lib/erlang/messenger/lib/eunit/CHANGELOG +14 -0
  28. data/lib/erlang/messenger/lib/eunit/COPYING +504 -0
  29. data/lib/erlang/messenger/lib/eunit/Makefile +28 -0
  30. data/lib/erlang/messenger/lib/eunit/NOTES +276 -0
  31. data/lib/erlang/messenger/lib/eunit/README +3 -0
  32. data/lib/erlang/messenger/lib/eunit/doc/edoc-info +3 -0
  33. data/lib/erlang/messenger/lib/eunit/doc/erlang.png +0 -0
  34. data/lib/erlang/messenger/lib/eunit/doc/eunit.html +172 -0
  35. data/lib/erlang/messenger/lib/eunit/doc/index.html +17 -0
  36. data/lib/erlang/messenger/lib/eunit/doc/modules-frame.html +12 -0
  37. data/lib/erlang/messenger/lib/eunit/doc/overview-summary.html +984 -0
  38. data/lib/erlang/messenger/lib/eunit/doc/overview.edoc +980 -0
  39. data/lib/erlang/messenger/lib/eunit/doc/packages-frame.html +11 -0
  40. data/lib/erlang/messenger/lib/eunit/doc/stylesheet.css +55 -0
  41. data/lib/erlang/messenger/lib/eunit/ebin/autoload.beam +0 -0
  42. data/lib/erlang/messenger/lib/eunit/ebin/code_monitor.beam +0 -0
  43. data/lib/erlang/messenger/lib/eunit/ebin/eunit.app +21 -0
  44. data/lib/erlang/messenger/lib/eunit/ebin/eunit.appup +1 -0
  45. data/lib/erlang/messenger/lib/eunit/ebin/eunit.beam +0 -0
  46. data/lib/erlang/messenger/lib/eunit/ebin/eunit_autoexport.beam +0 -0
  47. data/lib/erlang/messenger/lib/eunit/ebin/eunit_data.beam +0 -0
  48. data/lib/erlang/messenger/lib/eunit/ebin/eunit_lib.beam +0 -0
  49. data/lib/erlang/messenger/lib/eunit/ebin/eunit_proc.beam +0 -0
  50. data/lib/erlang/messenger/lib/eunit/ebin/eunit_serial.beam +0 -0
  51. data/lib/erlang/messenger/lib/eunit/ebin/eunit_server.beam +0 -0
  52. data/lib/erlang/messenger/lib/eunit/ebin/eunit_striptests.beam +0 -0
  53. data/lib/erlang/messenger/lib/eunit/ebin/eunit_test.beam +0 -0
  54. data/lib/erlang/messenger/lib/eunit/ebin/eunit_tests.beam +0 -0
  55. data/lib/erlang/messenger/lib/eunit/ebin/eunit_tty.beam +0 -0
  56. data/lib/erlang/messenger/lib/eunit/ebin/file_monitor.beam +0 -0
  57. data/lib/erlang/messenger/lib/eunit/examples/eunit_examples.erl +339 -0
  58. data/lib/erlang/messenger/lib/eunit/examples/fib.erl +19 -0
  59. data/lib/erlang/messenger/lib/eunit/examples/tests.txt +1 -0
  60. data/lib/erlang/messenger/lib/eunit/include/eunit.hrl +313 -0
  61. data/lib/erlang/messenger/lib/eunit/src/Makefile +46 -0
  62. data/lib/erlang/messenger/lib/eunit/src/autoload.erl +388 -0
  63. data/lib/erlang/messenger/lib/eunit/src/code_monitor.erl +243 -0
  64. data/lib/erlang/messenger/lib/eunit/src/eunit.app.src +21 -0
  65. data/lib/erlang/messenger/lib/eunit/src/eunit.appup.src +1 -0
  66. data/lib/erlang/messenger/lib/eunit/src/eunit.erl +196 -0
  67. data/lib/erlang/messenger/lib/eunit/src/eunit_autoexport.erl +102 -0
  68. data/lib/erlang/messenger/lib/eunit/src/eunit_data.erl +798 -0
  69. data/lib/erlang/messenger/lib/eunit/src/eunit_internal.hrl +48 -0
  70. data/lib/erlang/messenger/lib/eunit/src/eunit_lib.erl +682 -0
  71. data/lib/erlang/messenger/lib/eunit/src/eunit_proc.erl +552 -0
  72. data/lib/erlang/messenger/lib/eunit/src/eunit_serial.erl +157 -0
  73. data/lib/erlang/messenger/lib/eunit/src/eunit_server.erl +340 -0
  74. data/lib/erlang/messenger/lib/eunit/src/eunit_striptests.erl +64 -0
  75. data/lib/erlang/messenger/lib/eunit/src/eunit_test.erl +334 -0
  76. data/lib/erlang/messenger/lib/eunit/src/eunit_tests.erl +45 -0
  77. data/lib/erlang/messenger/lib/eunit/src/eunit_tty.erl +272 -0
  78. data/lib/erlang/messenger/lib/eunit/src/file_monitor.erl +409 -0
  79. data/lib/erlang/messenger/lib/eunit/sys.config +9 -0
  80. data/lib/erlang/messenger/lib/eunit/vsn.mk +1 -0
  81. data/lib/erlang/messenger/pm_master_rel-0.1.boot +0 -0
  82. data/lib/erlang/messenger/pm_master_rel-0.1.script +75 -2
  83. data/lib/erlang/messenger/pm_node_rel-0.1.boot +0 -0
  84. data/lib/erlang/messenger/pm_node_rel-0.1.script +75 -2
  85. data/lib/erlang/messenger/src/pm_client.erl +8 -3
  86. data/lib/erlang/messenger/src/pm_cluster.erl +32 -9
  87. data/lib/erlang/messenger/src/pm_master.erl +10 -11
  88. data/lib/erlang/messenger/src/pm_node.erl +2 -3
  89. data/lib/erlang/messenger/src/pm_packager.erl +73 -0
  90. data/lib/erlang/messenger/src/utils.erl +3 -10
  91. data/lib/poolparty/base_packages/heartbeat.rb +9 -9
  92. data/lib/poolparty/base_packages/poolparty.rb +16 -10
  93. data/lib/poolparty/config/allowed_commands.yml +1 -0
  94. data/lib/poolparty/core/object.rb +8 -0
  95. data/lib/poolparty/exceptions/UnacceptableCommand.rb +5 -0
  96. data/lib/poolparty/helpers/messenger.rb +29 -0
  97. data/lib/poolparty/helpers/provisioner_base.rb +7 -7
  98. data/lib/poolparty/helpers/provisioners/master.rb +3 -7
  99. data/lib/poolparty/helpers/provisioners/slave.rb +1 -0
  100. data/lib/poolparty/modules/cloud_resourcer.rb +7 -5
  101. data/lib/poolparty/modules/configurable.rb +1 -1
  102. data/lib/poolparty/modules/method_missing_sugar.rb +6 -1
  103. data/lib/poolparty/modules/pretty_printer.rb +1 -0
  104. data/lib/poolparty/modules/resourcing_dsl.rb +2 -1
  105. data/lib/poolparty/monitors/monitors/cpu_monitor.rb +1 -1
  106. data/lib/poolparty/net/remoter.rb +3 -1
  107. data/lib/poolparty/plugins/git.rb +3 -3
  108. data/lib/poolparty/pool/base.rb +7 -2
  109. data/lib/poolparty/pool/cloud.rb +3 -3
  110. data/lib/poolparty/pool/resource.rb +38 -24
  111. data/lib/poolparty/pool/resources/class_package.rb +2 -2
  112. data/lib/poolparty/pool/resources/conditional.rb +8 -4
  113. data/lib/poolparty/pool/resources/{gem.rb → gem_package.rb} +0 -0
  114. data/lib/poolparty/pool/resources/package.rb +8 -1
  115. data/lib/poolparty/version.rb +1 -1
  116. data/lib/poolparty.rb +1 -1
  117. data/poolparty.gemspec +476 -61
  118. data/spec/poolparty/core/object_spec.rb +20 -0
  119. data/spec/poolparty/helpers/messenger_spec.rb +14 -0
  120. data/spec/poolparty/helpers/provisioners/master_spec.rb +2 -2
  121. data/spec/poolparty/net/remoter_spec.rb +1 -1
  122. data/spec/poolparty/plugins/git_spec.rb +26 -19
  123. data/spec/poolparty/pool/base_spec.rb +20 -2
  124. data/spec/poolparty/pool/cloud_spec.rb +256 -249
  125. data/spec/poolparty/pool/custom_resource_spec.rb +6 -1
  126. data/spec/poolparty/pool/plugin_spec.rb +71 -65
  127. data/spec/poolparty/pool/resource_spec.rb +314 -237
  128. data/spec/poolparty/pool/resources/class_package_spec.rb +71 -66
  129. data/spec/poolparty/pool/resources/conditional_spec.rb +30 -26
  130. data/spec/poolparty/pool/resources/gem_spec.rb +18 -14
  131. data/spec/poolparty/pool/resources/variable_spec.rb +1 -1
  132. data/spec/poolparty/pool/script_spec.rb +46 -37
  133. data/spec/poolparty/spec_helper.rb +4 -0
  134. data/tasks/cloud.rake +0 -54
  135. data/tasks/development.rake +11 -14
  136. data/tasks/ec2.rake +10 -17
  137. data/tasks/instance.rake +0 -61
  138. data/website/index.html +1 -1
  139. metadata +83 -10
@@ -1,85 +1,91 @@
1
1
  require File.dirname(__FILE__) + '/../spec_helper'
2
2
  require File.dirname(__FILE__) + '/test_plugins/webserver'
3
3
 
4
- describe "Plugin" do
4
+ include PoolParty::Resources
5
5
 
6
+ describe "Plugin" do
6
7
  before(:each) do
7
- reset!
8
- pool :poolpartyrb do
9
- cloud :app do
10
- apache do
11
- enable_php
12
- site("heady", {
13
- :document_root => "/root"
14
- })
15
- end
16
- end
17
- end
18
- @p = pool :poolpartyrb
19
- @c = @p.cloud(:app)
8
+ reset_resources!
20
9
  end
21
-
22
- it "should allow access to the pool on the cloud" do
23
- @c.parent.should == @p
24
- end
25
- describe "instance" do
10
+ describe "wrapped" do
26
11
  before(:each) do
27
- @plugin = "apache".class_constant.new(@c)
28
- end
29
- it "should not be empty" do
30
- @plugin.class.should == PoolPartyApacheClass
31
- end
32
- it "should have access to the cloud's container" do
33
- @plugin.parent.should == @c
12
+ reset!
13
+ pool :poolpartyrb do
14
+ cloud :app do
15
+ apache do
16
+ enable_php
17
+ site("heady", {
18
+ :document_root => "/root"
19
+ })
20
+ end
21
+ end
22
+ end
23
+ @p = pool :poolpartyrb
24
+ @c = @p.cloud(:app)
34
25
  end
35
- it "should have enable_php as a method" do
36
- @plugin.respond_to?(:enable_php).should == true
26
+
27
+ it "should allow access to the pool on the cloud" do
28
+ @c.parent.should == @p
37
29
  end
38
- describe "after eval'ing" do
30
+ describe "instance" do
39
31
  before(:each) do
40
- @plugin.instance_eval do
41
- enable_php
42
- has_gempackage(:name => "aska")
43
- end
44
- end
45
- it "should call enable_php on the class" do
46
- @plugin.php.should == true
47
- end
48
- it "should have resources attached to it" do
49
- @plugin.resources.class.should == Hash
50
- end
51
- it "should have an array of gem resources" do
52
- @plugin.resource(:gempackage).class.should == Array
53
- end
54
- it "should have 1 gem in the resources defined" do
55
- @plugin.resource(:gempackage).size.should == 1
56
- end
57
- it "should have the gem named aska in the gem resource" do
58
- @plugin.resource(:gempackage).first.name.should == "aska"
32
+ @plugin = "apache".class_constant.new(@c)
59
33
  end
60
- it "should have its resources visible to its parent" do
61
- @plugin.parent = @c
62
- @c.resources
34
+ it "should not be empty" do
35
+ @plugin.class.should == PoolPartyApacheClass
63
36
  end
64
- end
65
- describe "before eval'ing" do
66
- before(:each) do
67
- reset!
68
- @plugin = "apache".class_constant.new(@c)
37
+ it "should have access to the cloud's container" do
38
+ @plugin.parent.should == @c
69
39
  end
70
- it "should call has_line_in_file" do
71
- @plugin.should_receive(:php).and_return true
40
+ it "should have enable_php as a method" do
41
+ @plugin.respond_to?(:enable_php).should == true
72
42
  end
73
- it "should call site" do
74
- @plugin.should_receive(:site).with("frank").and_return true
43
+ describe "after eval'ing" do
44
+ before(:each) do
45
+ @plugin.instance_eval do
46
+ enable_php
47
+ has_gempackage(:name => "aska")
48
+ end
49
+ end
50
+ it "should call enable_php on the class" do
51
+ @plugin.php.should == true
52
+ end
53
+ it "should have resources attached to it" do
54
+ @plugin.resources.class.should == Hash
55
+ end
56
+ it "should have an array of gem resources" do
57
+ @plugin.resource(:gempackage).class.should == Array
58
+ end
59
+ it "should have 1 gem in the resources defined" do
60
+ @plugin.resource(:gempackage).size.should == 1
61
+ end
62
+ it "should have the gem named aska in the gem resource" do
63
+ @plugin.get_resource(:gempackage, "aska").name.should == "aska"
64
+ end
65
+ it "should have its resources visible to its parent" do
66
+ @plugin.parent = @c
67
+ @c.resources
68
+ end
75
69
  end
76
- after do
77
- @plugin.instance_eval do
78
- enable_php
79
- site("frank")
70
+ describe "before eval'ing" do
71
+ before(:each) do
72
+ reset!
73
+ @plugin = "apache".class_constant.new(@c)
74
+ end
75
+ it "should call has_line_in_file" do
76
+ @plugin.should_receive(:php).and_return true
80
77
  end
78
+ it "should call site" do
79
+ @plugin.should_receive(:site).with("frank").and_return true
80
+ end
81
+ after do
82
+ @plugin.instance_eval do
83
+ enable_php
84
+ site("frank")
85
+ end
86
+ end
87
+
81
88
  end
82
-
83
89
  end
84
90
  end
85
91
  end