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
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: auser-poolparty
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.16
4
+ version: 0.2.20
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ari Lerner
@@ -9,11 +9,12 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-10-23 00:00:00 -07:00
12
+ date: 2008-10-25 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activesupport
17
+ type: :runtime
17
18
  version_requirement:
18
19
  version_requirements: !ruby/object:Gem::Requirement
19
20
  requirements:
@@ -23,6 +24,7 @@ dependencies:
23
24
  version:
24
25
  - !ruby/object:Gem::Dependency
25
26
  name: open4
27
+ type: :runtime
26
28
  version_requirement:
27
29
  version_requirements: !ruby/object:Gem::Requirement
28
30
  requirements:
@@ -32,6 +34,7 @@ dependencies:
32
34
  version:
33
35
  - !ruby/object:Gem::Dependency
34
36
  name: logging
37
+ type: :runtime
35
38
  version_requirement:
36
39
  version_requirements: !ruby/object:Gem::Requirement
37
40
  requirements:
@@ -41,6 +44,7 @@ dependencies:
41
44
  version:
42
45
  - !ruby/object:Gem::Dependency
43
46
  name: ruby2ruby
47
+ type: :runtime
44
48
  version_requirement:
45
49
  version_requirements: !ruby/object:Gem::Requirement
46
50
  requirements:
@@ -50,6 +54,7 @@ dependencies:
50
54
  version:
51
55
  - !ruby/object:Gem::Dependency
52
56
  name: hoe
57
+ type: :runtime
53
58
  version_requirement:
54
59
  version_requirements: !ruby/object:Gem::Requirement
55
60
  requirements:
@@ -82,9 +87,11 @@ executables:
82
87
  - pool-provision
83
88
  - pool-spec
84
89
  - pool-start
90
+ - server-build-messenger
85
91
  - server-fire-cmd
86
92
  - server-get-load
87
93
  - server-list-active
94
+ - server-list-responding
88
95
  - server-rerun
89
96
  - server-start-master
90
97
  - server-start-node
@@ -96,6 +103,7 @@ extra_rdoc_files:
96
103
  - Manifest.txt
97
104
  - PostInstall.txt
98
105
  - README.txt
106
+ - lib/erlang/messenger/lib/eunit/examples/tests.txt
99
107
  - website/index.txt
100
108
  files:
101
109
  - History.txt
@@ -125,9 +133,11 @@ files:
125
133
  - bin/pool-provision
126
134
  - bin/pool-spec
127
135
  - bin/pool-start
136
+ - bin/server-build-messenger
128
137
  - bin/server-fire-cmd
129
138
  - bin/server-get-load
130
139
  - bin/server-list-active
140
+ - bin/server-list-responding
131
141
  - bin/server-rerun
132
142
  - bin/server-start-master
133
143
  - bin/server-start-node
@@ -140,6 +150,7 @@ files:
140
150
  - generators/poolspec/USAGE
141
151
  - generators/poolspec/poolspec_generator.rb
142
152
  - generators/poolspec/templates/pool_spec_template.erb
153
+ - lib/erlang/messenger/Emakefile
143
154
  - lib/erlang/messenger/Makefile
144
155
  - lib/erlang/messenger/README
145
156
  - lib/erlang/messenger/Rakefile
@@ -148,6 +159,7 @@ files:
148
159
  - lib/erlang/messenger/ebin/master_app.beam
149
160
  - lib/erlang/messenger/ebin/node.app
150
161
  - lib/erlang/messenger/ebin/node_app.beam
162
+ - lib/erlang/messenger/ebin/packager.app
151
163
  - lib/erlang/messenger/ebin/pm_client.beam
152
164
  - lib/erlang/messenger/ebin/pm_cluster.beam
153
165
  - lib/erlang/messenger/ebin/pm_event_handler.beam
@@ -157,8 +169,63 @@ files:
157
169
  - lib/erlang/messenger/ebin/pm_node.beam
158
170
  - lib/erlang/messenger/ebin/pm_node_rel-0.1.rel
159
171
  - lib/erlang/messenger/ebin/pm_node_supervisor.beam
172
+ - lib/erlang/messenger/ebin/pm_packager.beam
160
173
  - lib/erlang/messenger/ebin/utils.beam
161
- - lib/erlang/messenger/logs/pool_log.log
174
+ - lib/erlang/messenger/lib/eunit/AUTHORS
175
+ - lib/erlang/messenger/lib/eunit/CHANGELOG
176
+ - lib/erlang/messenger/lib/eunit/COPYING
177
+ - lib/erlang/messenger/lib/eunit/Makefile
178
+ - lib/erlang/messenger/lib/eunit/NOTES
179
+ - lib/erlang/messenger/lib/eunit/README
180
+ - lib/erlang/messenger/lib/eunit/doc/edoc-info
181
+ - lib/erlang/messenger/lib/eunit/doc/erlang.png
182
+ - lib/erlang/messenger/lib/eunit/doc/eunit.html
183
+ - lib/erlang/messenger/lib/eunit/doc/index.html
184
+ - lib/erlang/messenger/lib/eunit/doc/modules-frame.html
185
+ - lib/erlang/messenger/lib/eunit/doc/overview-summary.html
186
+ - lib/erlang/messenger/lib/eunit/doc/overview.edoc
187
+ - lib/erlang/messenger/lib/eunit/doc/packages-frame.html
188
+ - lib/erlang/messenger/lib/eunit/doc/stylesheet.css
189
+ - lib/erlang/messenger/lib/eunit/ebin/autoload.beam
190
+ - lib/erlang/messenger/lib/eunit/ebin/code_monitor.beam
191
+ - lib/erlang/messenger/lib/eunit/ebin/eunit.app
192
+ - lib/erlang/messenger/lib/eunit/ebin/eunit.appup
193
+ - lib/erlang/messenger/lib/eunit/ebin/eunit.beam
194
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_autoexport.beam
195
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_data.beam
196
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_lib.beam
197
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_proc.beam
198
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_serial.beam
199
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_server.beam
200
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_striptests.beam
201
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_test.beam
202
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_tests.beam
203
+ - lib/erlang/messenger/lib/eunit/ebin/eunit_tty.beam
204
+ - lib/erlang/messenger/lib/eunit/ebin/file_monitor.beam
205
+ - lib/erlang/messenger/lib/eunit/examples/eunit_examples.erl
206
+ - lib/erlang/messenger/lib/eunit/examples/fib.erl
207
+ - lib/erlang/messenger/lib/eunit/examples/tests.txt
208
+ - lib/erlang/messenger/lib/eunit/include/eunit.hrl
209
+ - lib/erlang/messenger/lib/eunit/src/Makefile
210
+ - lib/erlang/messenger/lib/eunit/src/autoload.erl
211
+ - lib/erlang/messenger/lib/eunit/src/code_monitor.erl
212
+ - lib/erlang/messenger/lib/eunit/src/eunit.app.src
213
+ - lib/erlang/messenger/lib/eunit/src/eunit.appup.src
214
+ - lib/erlang/messenger/lib/eunit/src/eunit.erl
215
+ - lib/erlang/messenger/lib/eunit/src/eunit_autoexport.erl
216
+ - lib/erlang/messenger/lib/eunit/src/eunit_data.erl
217
+ - lib/erlang/messenger/lib/eunit/src/eunit_internal.hrl
218
+ - lib/erlang/messenger/lib/eunit/src/eunit_lib.erl
219
+ - lib/erlang/messenger/lib/eunit/src/eunit_proc.erl
220
+ - lib/erlang/messenger/lib/eunit/src/eunit_serial.erl
221
+ - lib/erlang/messenger/lib/eunit/src/eunit_server.erl
222
+ - lib/erlang/messenger/lib/eunit/src/eunit_striptests.erl
223
+ - lib/erlang/messenger/lib/eunit/src/eunit_test.erl
224
+ - lib/erlang/messenger/lib/eunit/src/eunit_tests.erl
225
+ - lib/erlang/messenger/lib/eunit/src/eunit_tty.erl
226
+ - lib/erlang/messenger/lib/eunit/src/file_monitor.erl
227
+ - lib/erlang/messenger/lib/eunit/sys.config
228
+ - lib/erlang/messenger/lib/eunit/vsn.mk
162
229
  - lib/erlang/messenger/pm_master_rel-0.1.boot
163
230
  - lib/erlang/messenger/pm_master_rel-0.1.script
164
231
  - lib/erlang/messenger/pm_node_rel-0.1.boot
@@ -172,17 +239,14 @@ files:
172
239
  - lib/erlang/messenger/src/pm_master_supervisor.erl
173
240
  - lib/erlang/messenger/src/pm_node.erl
174
241
  - lib/erlang/messenger/src/pm_node_supervisor.erl
242
+ - lib/erlang/messenger/src/pm_packager.erl
175
243
  - lib/erlang/messenger/src/utils.erl
176
- - lib/erlang/messenger/tmp/templates/apache2.conf
177
- - lib/erlang/messenger/tmp/templates/base.conf.erb
178
- - lib/erlang/messenger/tmp/templates/browser_fixes.conf.erb
179
- - lib/erlang/messenger/tmp/templates/mime-minimal.conf.erb
180
- - lib/erlang/messenger/tmp/templates/virtual_host.conf.erb
181
244
  - lib/poolparty.rb
182
245
  - lib/poolparty/base_packages/haproxy.rb
183
246
  - lib/poolparty/base_packages/heartbeat.rb
184
247
  - lib/poolparty/base_packages/poolparty.rb
185
248
  - lib/poolparty/base_packages/ruby.rb
249
+ - lib/poolparty/config/allowed_commands.yml
186
250
  - lib/poolparty/core/array.rb
187
251
  - lib/poolparty/core/exception.rb
188
252
  - lib/poolparty/core/float.rb
@@ -202,9 +266,11 @@ files:
202
266
  - lib/poolparty/exceptions/RuntimeException.rb
203
267
  - lib/poolparty/exceptions/SpecException.rb
204
268
  - lib/poolparty/exceptions/TemplateNotFound.rb
269
+ - lib/poolparty/exceptions/UnacceptableCommand.rb
205
270
  - lib/poolparty/helpers/binary.rb
206
271
  - lib/poolparty/helpers/console.rb
207
272
  - lib/poolparty/helpers/display.rb
273
+ - lib/poolparty/helpers/messenger.rb
208
274
  - lib/poolparty/helpers/optioner.rb
209
275
  - lib/poolparty/helpers/provisioner_base.rb
210
276
  - lib/poolparty/helpers/provisioners/master.rb
@@ -244,7 +310,7 @@ files:
244
310
  - lib/poolparty/pool/resources/directory.rb
245
311
  - lib/poolparty/pool/resources/exec.rb
246
312
  - lib/poolparty/pool/resources/file.rb
247
- - lib/poolparty/pool/resources/gem.rb
313
+ - lib/poolparty/pool/resources/gem_package.rb
248
314
  - lib/poolparty/pool/resources/host.rb
249
315
  - lib/poolparty/pool/resources/package.rb
250
316
  - lib/poolparty/pool/resources/remote_file.rb
@@ -253,6 +319,12 @@ files:
253
319
  - lib/poolparty/pool/resources/symlink.rb
254
320
  - lib/poolparty/pool/resources/variable.rb
255
321
  - lib/poolparty/pool/script.rb
322
+ - lib/poolparty/pool/tmp/.ppkeys
323
+ - lib/poolparty/pool/tmp/happydayz
324
+ - lib/poolparty/pool/tmp/install_master.sh
325
+ - lib/poolparty/pool/tmp/pool.spec
326
+ - lib/poolparty/pool/tmp/poolparty.pp
327
+ - lib/poolparty/pool/tmp/tc-instances.list
256
328
  - lib/poolparty/templates/authkeys
257
329
  - lib/poolparty/templates/cib.xml
258
330
  - lib/poolparty/templates/fileserver.conf
@@ -284,6 +356,7 @@ files:
284
356
  - spec/poolparty/dependency_resolutions/base_spec.rb
285
357
  - spec/poolparty/helpers/binary_spec.rb
286
358
  - spec/poolparty/helpers/display_spec.rb
359
+ - spec/poolparty/helpers/messenger_spec.rb
287
360
  - spec/poolparty/helpers/optioner_spec.rb
288
361
  - spec/poolparty/helpers/provisioner_base_spec.rb
289
362
  - spec/poolparty/helpers/provisioners/master_spec.rb
@@ -357,7 +430,7 @@ files:
357
430
  has_rdoc: true
358
431
  homepage: http://poolparty.rubyforge.org
359
432
  post_install_message: |-
360
- Get ready to jump in the pool, you just installed poolpartyrb!
433
+ Get ready to jump in the pool, you just installed PoolParty!
361
434
 
362
435
  To get started, run the generator:
363
436