poolparty 0.2.6 → 0.2.18
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.
- data/Manifest.txt +123 -4
- data/PostInstall.txt +2 -1
- data/bin/cloud +16 -7
- data/bin/cloud-provision +9 -5
- data/bin/cloud-run +19 -0
- data/bin/cloud-ssh +2 -7
- data/bin/cloud-start +2 -1
- data/bin/pool +3 -3
- data/bin/server-build-messenger +20 -0
- data/bin/server-fire-cmd +14 -0
- data/bin/server-get-load +29 -0
- data/bin/server-list-active +25 -0
- data/bin/server-list-responding +24 -0
- data/bin/server-rerun +24 -0
- data/bin/server-start-master +27 -0
- data/bin/server-start-node +33 -0
- data/config/requirements.rb +1 -1
- data/erl_crash.dump +8409 -0
- data/lib/erlang/messenger/Emakefile +1 -0
- data/lib/erlang/messenger/Makefile +15 -0
- data/lib/erlang/messenger/README +5 -0
- data/lib/erlang/messenger/Rakefile +60 -0
- data/lib/erlang/messenger/control +11 -0
- data/lib/erlang/messenger/ebin/master.app +19 -0
- data/lib/erlang/messenger/ebin/master_app.beam +0 -0
- data/lib/erlang/messenger/ebin/node.app +19 -0
- data/lib/erlang/messenger/ebin/node_app.beam +0 -0
- data/lib/erlang/messenger/ebin/packager.app +19 -0
- data/lib/erlang/messenger/ebin/pm_client.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_cluster.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_event_handler.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_master.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_master_rel-0.1.rel +1 -0
- data/lib/erlang/messenger/ebin/pm_master_supervisor.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_node.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_node_rel-0.1.rel +1 -0
- data/lib/erlang/messenger/ebin/pm_node_supervisor.beam +0 -0
- data/lib/erlang/messenger/ebin/pm_packager.beam +0 -0
- data/lib/erlang/messenger/ebin/utils.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/AUTHORS +2 -0
- data/lib/erlang/messenger/lib/eunit/CHANGELOG +14 -0
- data/lib/erlang/messenger/lib/eunit/COPYING +504 -0
- data/lib/erlang/messenger/lib/eunit/Makefile +28 -0
- data/lib/erlang/messenger/lib/eunit/NOTES +276 -0
- data/lib/erlang/messenger/lib/eunit/README +3 -0
- data/lib/erlang/messenger/lib/eunit/doc/edoc-info +3 -0
- data/lib/erlang/messenger/lib/eunit/doc/erlang.png +0 -0
- data/lib/erlang/messenger/lib/eunit/doc/eunit.html +172 -0
- data/lib/erlang/messenger/lib/eunit/doc/index.html +17 -0
- data/lib/erlang/messenger/lib/eunit/doc/modules-frame.html +12 -0
- data/lib/erlang/messenger/lib/eunit/doc/overview-summary.html +984 -0
- data/lib/erlang/messenger/lib/eunit/doc/overview.edoc +980 -0
- data/lib/erlang/messenger/lib/eunit/doc/packages-frame.html +11 -0
- data/lib/erlang/messenger/lib/eunit/doc/stylesheet.css +55 -0
- data/lib/erlang/messenger/lib/eunit/ebin/autoload.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/code_monitor.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit.app +21 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit.appup +1 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_autoexport.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_data.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_lib.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_proc.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_serial.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_server.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_striptests.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_test.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_tests.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/eunit_tty.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/ebin/file_monitor.beam +0 -0
- data/lib/erlang/messenger/lib/eunit/examples/eunit_examples.erl +339 -0
- data/lib/erlang/messenger/lib/eunit/examples/fib.erl +19 -0
- data/lib/erlang/messenger/lib/eunit/examples/tests.txt +1 -0
- data/lib/erlang/messenger/lib/eunit/include/eunit.hrl +313 -0
- data/lib/erlang/messenger/lib/eunit/src/Makefile +46 -0
- data/lib/erlang/messenger/lib/eunit/src/autoload.erl +388 -0
- data/lib/erlang/messenger/lib/eunit/src/code_monitor.erl +243 -0
- data/lib/erlang/messenger/lib/eunit/src/eunit.app.src +21 -0
- data/lib/erlang/messenger/lib/eunit/src/eunit.appup.src +1 -0
- data/lib/erlang/messenger/lib/eunit/src/eunit.erl +196 -0
- data/lib/erlang/messenger/lib/eunit/src/eunit_autoexport.erl +102 -0
- data/lib/erlang/messenger/lib/eunit/src/eunit_data.erl +798 -0
- data/lib/erlang/messenger/lib/eunit/src/eunit_internal.hrl +48 -0
- data/lib/erlang/messenger/lib/eunit/src/eunit_lib.erl +682 -0
- data/lib/erlang/messenger/lib/eunit/src/eunit_proc.erl +552 -0
- data/lib/erlang/messenger/lib/eunit/src/eunit_serial.erl +157 -0
- data/lib/erlang/messenger/lib/eunit/src/eunit_server.erl +340 -0
- data/lib/erlang/messenger/lib/eunit/src/eunit_striptests.erl +64 -0
- data/lib/erlang/messenger/lib/eunit/src/eunit_test.erl +334 -0
- data/lib/erlang/messenger/lib/eunit/src/eunit_tests.erl +45 -0
- data/lib/erlang/messenger/lib/eunit/src/eunit_tty.erl +272 -0
- data/lib/erlang/messenger/lib/eunit/src/file_monitor.erl +409 -0
- data/lib/erlang/messenger/lib/eunit/sys.config +9 -0
- data/lib/erlang/messenger/lib/eunit/vsn.mk +1 -0
- data/lib/erlang/messenger/pm_master_rel-0.1.boot +0 -0
- data/lib/erlang/messenger/pm_master_rel-0.1.script +242 -0
- data/lib/erlang/messenger/pm_node_rel-0.1.boot +0 -0
- data/lib/erlang/messenger/pm_node_rel-0.1.script +242 -0
- data/lib/erlang/messenger/src/master_app.erl +39 -0
- data/lib/erlang/messenger/src/node_app.erl +39 -0
- data/lib/erlang/messenger/src/pm_client.erl +19 -0
- data/lib/erlang/messenger/src/pm_cluster.erl +57 -0
- data/lib/erlang/messenger/src/pm_event_handler.erl +21 -0
- data/lib/erlang/messenger/src/pm_master.erl +118 -0
- data/lib/erlang/messenger/src/pm_master_supervisor.erl +40 -0
- data/lib/erlang/messenger/src/pm_node.erl +124 -0
- data/lib/erlang/messenger/src/pm_node_supervisor.erl +40 -0
- data/lib/erlang/messenger/src/pm_packager.erl +73 -0
- data/lib/erlang/messenger/src/utils.erl +38 -0
- data/lib/poolparty/base_packages/haproxy.rb +9 -2
- data/lib/poolparty/base_packages/heartbeat.rb +40 -28
- data/lib/poolparty/base_packages/poolparty.rb +39 -16
- data/lib/poolparty/base_packages/ruby.rb +2 -3
- data/lib/poolparty/config/allowed_commands.yml +1 -0
- data/lib/poolparty/core/array.rb +5 -2
- data/lib/poolparty/core/hash.rb +16 -2
- data/lib/poolparty/core/string.rb +9 -2
- data/lib/poolparty/core/symbol.rb +2 -2
- data/lib/poolparty/dependency_resolutions/base.rb +12 -0
- data/lib/poolparty/dependency_resolutions/puppet.rb +49 -0
- data/lib/poolparty/exceptions/UnacceptableCommand.rb +5 -0
- data/lib/poolparty/helpers/console.rb +3 -2
- data/lib/poolparty/helpers/display.rb +3 -3
- data/lib/poolparty/helpers/messenger.rb +29 -0
- data/lib/poolparty/helpers/optioner.rb +6 -2
- data/lib/poolparty/helpers/provisioner_base.rb +18 -11
- data/lib/poolparty/helpers/provisioners/master.rb +24 -22
- data/lib/poolparty/helpers/provisioners/slave.rb +8 -4
- data/lib/poolparty/modules/definable_resource.rb +1 -0
- data/lib/poolparty/modules/file_writer.rb +11 -10
- data/lib/poolparty/modules/method_missing_sugar.rb +1 -1
- data/lib/poolparty/modules/pretty_printer.rb +11 -11
- data/lib/poolparty/modules/resourcing_dsl.rb +61 -0
- data/lib/poolparty/monitors/base_monitor.rb +17 -3
- data/lib/poolparty/monitors/monitors/cpu_monitor.rb +15 -0
- data/lib/poolparty/monitors/monitors/memory_monitor.rb +23 -0
- data/lib/poolparty/net/remote_instance.rb +6 -1
- data/lib/poolparty/net/remoter.rb +23 -5
- data/lib/poolparty/net/remoter_base.rb +5 -1
- data/lib/poolparty/plugins/git.rb +22 -24
- data/lib/poolparty/pool/base.rb +22 -6
- data/lib/poolparty/pool/cloud.rb +28 -4
- data/lib/poolparty/pool/custom_resource.rb +6 -6
- data/lib/poolparty/pool/loggable.rb +3 -0
- data/lib/poolparty/pool/pool.rb +1 -1
- data/lib/poolparty/pool/resource.rb +58 -94
- data/lib/poolparty/pool/resources/class_package.rb +6 -6
- data/lib/poolparty/pool/resources/conditional.rb +5 -1
- data/lib/poolparty/pool/resources/exec.rb +6 -2
- data/lib/poolparty/pool/resources/gem.rb +22 -8
- data/lib/poolparty/pool/resources/remote_file.rb +5 -1
- data/lib/poolparty/pool/resources/symlink.rb +25 -0
- data/lib/poolparty/pool/resources/variable.rb +8 -7
- data/lib/poolparty/pool/tmp/.ppkeys +3 -0
- data/lib/poolparty/pool/tmp/happydayz +1 -0
- data/lib/poolparty/pool/tmp/install_master.sh +33 -0
- data/lib/poolparty/pool/tmp/pool.spec +11 -0
- data/lib/poolparty/pool/tmp/poolparty.pp +600 -0
- data/lib/poolparty/pool/tmp/tc-instances.list +1 -0
- data/lib/poolparty/templates/cib.xml +54 -0
- data/lib/poolparty/templates/ha.cf +12 -3
- data/lib/poolparty/templates/haproxy.conf +3 -3
- data/lib/poolparty/templates/haresources +3 -0
- data/lib/poolparty/templates/poolparty.monitor +14 -0
- data/lib/poolparty/templates/puppet.conf +3 -4
- data/lib/poolparty/version.rb +1 -1
- data/lib/poolparty.rb +9 -6
- data/poolparty.gemspec +7 -6
- data/setup.rb +3 -3
- data/spec/poolparty/bin/console_spec.rb +1 -1
- data/spec/poolparty/core/array_spec.rb +5 -0
- data/spec/poolparty/core/hash_spec.rb +19 -1
- data/spec/poolparty/core/string_spec.rb +13 -0
- data/spec/poolparty/dependency_resolutions/base_spec.rb +11 -0
- data/spec/poolparty/helpers/messenger_spec.rb +14 -0
- data/spec/poolparty/helpers/optioner_spec.rb +2 -1
- data/spec/poolparty/helpers/provisioner_base_spec.rb +1 -1
- data/spec/poolparty/helpers/provisioners/master_spec.rb +2 -2
- data/spec/poolparty/helpers/provisioners/slave_spec.rb +3 -3
- data/spec/poolparty/modules/file_writer_spec.rb +9 -0
- data/spec/poolparty/monitors/base_monitor_spec.rb +19 -0
- data/spec/poolparty/monitors/monitors/cpu_monitor_spec.rb +17 -0
- data/spec/poolparty/net/remote_instance_spec.rb +6 -1
- data/spec/poolparty/net/remote_spec.rb +51 -42
- data/spec/poolparty/net/remoter_spec.rb +2 -1
- data/spec/poolparty/plugins/git_spec.rb +2 -2
- data/spec/poolparty/pool/base_spec.rb +20 -2
- data/spec/poolparty/pool/cloud_spec.rb +30 -1
- data/spec/poolparty/pool/custom_resource_spec.rb +2 -2
- data/spec/poolparty/pool/plugin_spec.rb +4 -4
- data/spec/poolparty/pool/pool_spec.rb +1 -1
- data/spec/poolparty/pool/resource_spec.rb +66 -0
- data/spec/poolparty/pool/resources/gem_spec.rb +29 -3
- data/spec/poolparty/pool/resources/symlink_spec.rb +22 -0
- data/spec/poolparty/pool/resources/variable_spec.rb +4 -0
- data/spec/poolparty/spec_helper.rb +5 -0
- data/tasks/cloud.rake +0 -54
- data/tasks/development.rake +0 -12
- data/tasks/ec2.rake +1 -16
- data/tasks/instance.rake +0 -61
- data/test_manifest.pp +286 -166
- data/website/index.html +5 -5
- data/website/index.txt +3 -3
- metadata +137 -8
- data/bin/pool-start-monitor +0 -1
- data/lib/erlang/eb_server.erl +0 -27
- data/lib/poolparty/plugins/gem_package.rb +0 -17
- data/spec/poolparty/modules/tmp/willy/nilly.rb +0 -1
data/test_manifest.pp
CHANGED
|
@@ -6,43 +6,64 @@ case $hostname {
|
|
|
6
6
|
master : {
|
|
7
7
|
# Variables
|
|
8
8
|
|
|
9
|
-
$ha_nodenames =
|
|
10
|
-
$ha_node_ips =
|
|
9
|
+
$ha_nodenames = generate('/usr/bin/env', '/var/lib/gems/1.8/bin/server-list-active', '-c', 'name')
|
|
10
|
+
$ha_node_ips = generate('/usr/bin/env', '/var/lib/gems/1.8/bin/server-list-active', '-c', 'ip')
|
|
11
|
+
$ha_timeout = '5s'
|
|
11
12
|
$ha_port = '80'
|
|
12
13
|
|
|
14
|
+
# exec
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
exec {
|
|
18
|
+
"heartbeat-update-cib":
|
|
19
|
+
command => '/usr/sbin/cibadmin -R -x /etc/ha.d/cib.xml',
|
|
20
|
+
path => '/usr/bin:/bin:/usr/local/bin:$PATH',
|
|
21
|
+
refreshonly => true
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
# package
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
# heartbeat-2
|
|
29
|
+
class heartbeat-2 {
|
|
30
|
+
|
|
13
31
|
# remotefile
|
|
14
32
|
|
|
15
33
|
|
|
16
34
|
file {
|
|
17
35
|
"/etc/ha.d/ha.cf":
|
|
18
|
-
content => template("ha.cf"),
|
|
19
|
-
require => Package["heartbeat-2"],
|
|
20
|
-
mode => 444,
|
|
21
36
|
ensure => 'present',
|
|
22
|
-
|
|
23
|
-
|
|
37
|
+
require => Package['heartbeat-2'],
|
|
38
|
+
mode => 444,
|
|
39
|
+
name => '/etc/ha.d/ha.cf',
|
|
40
|
+
notify => Service["heartbeat"],
|
|
41
|
+
content => template("ha.cf"),
|
|
42
|
+
owner => 'root'
|
|
24
43
|
}
|
|
25
44
|
|
|
26
45
|
|
|
27
46
|
file {
|
|
28
47
|
"/etc/ha.d/authkeys":
|
|
29
|
-
content => template("authkeys"),
|
|
30
|
-
require => Package["heartbeat-2"],
|
|
31
|
-
mode => 400,
|
|
32
48
|
ensure => 'present',
|
|
33
|
-
|
|
34
|
-
|
|
49
|
+
require => Package['heartbeat-2'],
|
|
50
|
+
mode => 400,
|
|
51
|
+
name => '/etc/ha.d/authkeys',
|
|
52
|
+
notify => Service["heartbeat"],
|
|
53
|
+
content => template("authkeys"),
|
|
54
|
+
owner => 'root'
|
|
35
55
|
}
|
|
36
56
|
|
|
37
57
|
|
|
38
58
|
file {
|
|
39
59
|
"/etc/ha.d/cib.xml":
|
|
40
|
-
content => template("cib.xml"),
|
|
41
|
-
require => Package["heartbeat-2"],
|
|
42
|
-
mode => 444,
|
|
43
60
|
ensure => 'present',
|
|
44
|
-
|
|
45
|
-
|
|
61
|
+
require => Package['heartbeat-2'],
|
|
62
|
+
mode => 444,
|
|
63
|
+
name => '/etc/ha.d/cib.xml',
|
|
64
|
+
notify => Exec["heartbeat-update-cib"],
|
|
65
|
+
content => template("cib.xml"),
|
|
66
|
+
owner => 'root'
|
|
46
67
|
}
|
|
47
68
|
|
|
48
69
|
|
|
@@ -51,31 +72,35 @@ $ha_port = '80'
|
|
|
51
72
|
|
|
52
73
|
service {
|
|
53
74
|
"heartbeat":
|
|
54
|
-
hasstatus => true,
|
|
55
75
|
enable => true,
|
|
76
|
+
hasstatus => true,
|
|
56
77
|
ensure => 'running',
|
|
78
|
+
require => Package['heartbeat-2'],
|
|
57
79
|
name => 'heartbeat'
|
|
58
80
|
}
|
|
59
81
|
|
|
82
|
+
}
|
|
60
83
|
|
|
84
|
+
include heartbeat-2
|
|
85
|
+
package {
|
|
86
|
+
"heartbeat-2":
|
|
87
|
+
ensure => 'present',
|
|
88
|
+
name => 'heartbeat-2'
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
default : {}
|
|
92
|
+
}
|
|
93
|
+
# $hostname == master
|
|
94
|
+
case $hostname {
|
|
95
|
+
master : {
|
|
61
96
|
# exec
|
|
62
97
|
|
|
63
98
|
|
|
64
99
|
exec {
|
|
65
|
-
"heartbeat
|
|
66
|
-
|
|
100
|
+
"update pem for heartbeat":
|
|
101
|
+
command => 'scp /etc/puppet/ssl/ca/ca_crl.pem root@192.168.0.1:/etc/puppet/ssl/ca',
|
|
67
102
|
path => '/usr/bin:/bin:/usr/local/bin:$PATH',
|
|
68
|
-
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
# package
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
package {
|
|
76
|
-
"heartbeat-2":
|
|
77
|
-
ensure => 'installed',
|
|
78
|
-
name => 'heartbeat-2'
|
|
103
|
+
refreshonly => true
|
|
79
104
|
}
|
|
80
105
|
}
|
|
81
106
|
default : {}
|
|
@@ -86,8 +111,8 @@ master : {
|
|
|
86
111
|
# Variables
|
|
87
112
|
|
|
88
113
|
$name_haproxy = 'test'
|
|
89
|
-
$nodenames_haproxy =
|
|
90
|
-
$node_ips_haproxy =
|
|
114
|
+
$nodenames_haproxy = generate('/usr/bin/env', '/var/lib/gems/1.8/bin/server-list-active', '-c', 'name')
|
|
115
|
+
$node_ips_haproxy = generate('/usr/bin/env', '/var/lib/gems/1.8/bin/server-list-active', '-c', 'ip')
|
|
91
116
|
$ports_haproxy = [ '80' ]
|
|
92
117
|
$forwarding_port = '8080'
|
|
93
118
|
$proxy_mode = 'http'
|
|
@@ -97,41 +122,13 @@ $proxy_mode = 'http'
|
|
|
97
122
|
|
|
98
123
|
file {
|
|
99
124
|
"/etc/haproxy.cfg":
|
|
100
|
-
|
|
125
|
+
ensure => 'present',
|
|
101
126
|
require => Package["haproxy"],
|
|
102
127
|
mode => 644,
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
# service
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
service {
|
|
113
|
-
"sysklogd":
|
|
114
|
-
enable => true,
|
|
115
|
-
ensure => 'running',
|
|
116
|
-
name => 'sysklogd'
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
service {
|
|
121
|
-
"haproxy":
|
|
122
|
-
enable => true,
|
|
123
|
-
ensure => 'running',
|
|
124
|
-
name => 'haproxy'
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
# package
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
package {
|
|
132
|
-
"haproxy":
|
|
133
|
-
ensure => 'installed',
|
|
134
|
-
name => 'haproxy'
|
|
128
|
+
name => '/etc/haproxy.cfg',
|
|
129
|
+
notify => Service["haproxy"],
|
|
130
|
+
content => template("haproxy.conf"),
|
|
131
|
+
owner => 'root'
|
|
135
132
|
}
|
|
136
133
|
|
|
137
134
|
|
|
@@ -160,6 +157,60 @@ $proxy_mode = 'http'
|
|
|
160
157
|
notify => Service["sysklogd"],
|
|
161
158
|
ensure => 'present'
|
|
162
159
|
}
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
# package
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
package {
|
|
166
|
+
"haproxy":
|
|
167
|
+
ensure => 'installed',
|
|
168
|
+
name => 'haproxy'
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
# service
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
service {
|
|
176
|
+
"sysklogd":
|
|
177
|
+
enable => true,
|
|
178
|
+
ensure => [ 'running', 'running' ],
|
|
179
|
+
name => 'sysklogd'
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
service {
|
|
184
|
+
"haproxy":
|
|
185
|
+
enable => true,
|
|
186
|
+
ensure => 'running',
|
|
187
|
+
name => 'haproxy'
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
default : {}
|
|
191
|
+
}
|
|
192
|
+
# $hostname == master
|
|
193
|
+
case $hostname {
|
|
194
|
+
master : {
|
|
195
|
+
# exec
|
|
196
|
+
|
|
197
|
+
|
|
198
|
+
exec {
|
|
199
|
+
". /etc/profile && server-start-master":
|
|
200
|
+
path => '/usr/bin:/bin:/usr/local/bin:$PATH'
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
# cron
|
|
205
|
+
|
|
206
|
+
|
|
207
|
+
cron {
|
|
208
|
+
"":
|
|
209
|
+
command => '. /etc/profile && which cloud-maintain | /bin/sh',
|
|
210
|
+
ensure => 'present',
|
|
211
|
+
minute => '*/3',
|
|
212
|
+
user => 'root'
|
|
213
|
+
}
|
|
163
214
|
}
|
|
164
215
|
default : {}
|
|
165
216
|
}
|
|
@@ -178,6 +229,17 @@ include haproxy
|
|
|
178
229
|
# ruby
|
|
179
230
|
class ruby {
|
|
180
231
|
|
|
232
|
+
# call_function
|
|
233
|
+
|
|
234
|
+
line {
|
|
235
|
+
'/etc/profile_line' :
|
|
236
|
+
file => '/etc/profile',
|
|
237
|
+
line => 'export PATH=$PATH:/var/lib/gems/1.8/bin:/sbin',
|
|
238
|
+
|
|
239
|
+
ensure => 'present'
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
|
|
181
243
|
# package
|
|
182
244
|
|
|
183
245
|
|
|
@@ -208,24 +270,6 @@ class ruby {
|
|
|
208
270
|
name => 'ruby1.8'
|
|
209
271
|
}
|
|
210
272
|
|
|
211
|
-
|
|
212
|
-
package {
|
|
213
|
-
"rubygems":
|
|
214
|
-
ensure => 'present',
|
|
215
|
-
name => 'rubygems'
|
|
216
|
-
}
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
# call_function
|
|
220
|
-
|
|
221
|
-
line {
|
|
222
|
-
'/etc/profile_line' :
|
|
223
|
-
file => '/etc/profile',
|
|
224
|
-
line => 'export PATH=$PATH:/var/lib/gems/1.8/bin/',
|
|
225
|
-
|
|
226
|
-
ensure => 'present'
|
|
227
|
-
}
|
|
228
|
-
|
|
229
273
|
}
|
|
230
274
|
|
|
231
275
|
include ruby
|
|
@@ -237,17 +281,17 @@ class poolparty {
|
|
|
237
281
|
|
|
238
282
|
host {
|
|
239
283
|
"master":
|
|
240
|
-
ip => '192.168.0.1',
|
|
241
284
|
ensure => 'present',
|
|
242
|
-
name => 'master'
|
|
285
|
+
name => 'master',
|
|
286
|
+
ip => '192.168.0.1'
|
|
243
287
|
}
|
|
244
288
|
|
|
245
289
|
|
|
246
290
|
host {
|
|
247
291
|
"node1":
|
|
248
|
-
ip => '192.168.0.1',
|
|
249
292
|
ensure => 'present',
|
|
250
|
-
name => 'node1'
|
|
293
|
+
name => 'node1',
|
|
294
|
+
ip => '192.168.0.1'
|
|
251
295
|
}
|
|
252
296
|
|
|
253
297
|
|
|
@@ -255,10 +299,12 @@ class poolparty {
|
|
|
255
299
|
|
|
256
300
|
|
|
257
301
|
cron {
|
|
258
|
-
"
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
302
|
+
"puppetd runner":
|
|
303
|
+
command => '. /etc/profile && /usr/sbin/puppetd --onetime --no-daemonize --logdest syslog --server master 2>&1',
|
|
304
|
+
ensure => 'present',
|
|
305
|
+
name => 'puppetd runner',
|
|
306
|
+
minute => [ 0, 15, 30, 45 ],
|
|
307
|
+
user => 'root'
|
|
262
308
|
}
|
|
263
309
|
|
|
264
310
|
|
|
@@ -272,147 +318,165 @@ class poolparty {
|
|
|
272
318
|
}
|
|
273
319
|
|
|
274
320
|
|
|
321
|
+
package {
|
|
322
|
+
"erlang-dev":
|
|
323
|
+
ensure => 'present',
|
|
324
|
+
name => 'erlang-dev'
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
|
|
328
|
+
package {
|
|
329
|
+
"erlang-src":
|
|
330
|
+
ensure => 'present',
|
|
331
|
+
name => 'erlang-src'
|
|
332
|
+
}
|
|
333
|
+
|
|
334
|
+
|
|
335
|
+
# rubygems
|
|
336
|
+
class rubygems {
|
|
337
|
+
|
|
275
338
|
# gempackage
|
|
276
339
|
|
|
277
340
|
|
|
278
|
-
#
|
|
279
|
-
class
|
|
341
|
+
# logging
|
|
342
|
+
class logging {
|
|
280
343
|
|
|
281
344
|
# exec
|
|
282
345
|
|
|
283
346
|
|
|
284
347
|
exec {
|
|
285
|
-
"
|
|
286
|
-
|
|
348
|
+
"logging":
|
|
349
|
+
command => 'gem install -y --no-ri --no-rdoc logging',
|
|
287
350
|
require => Package['rubygems'],
|
|
288
351
|
path => '/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/var/lib/gems/1.8/bin',
|
|
289
|
-
|
|
290
|
-
|
|
352
|
+
cwd => '/tmp',
|
|
353
|
+
unless => 'gem list --local logging | grep logging '
|
|
291
354
|
}
|
|
292
355
|
|
|
293
356
|
}
|
|
294
357
|
|
|
295
|
-
include
|
|
358
|
+
include logging
|
|
296
359
|
|
|
297
360
|
|
|
298
|
-
#
|
|
299
|
-
class
|
|
361
|
+
# xml-simple
|
|
362
|
+
class xml-simple {
|
|
300
363
|
|
|
301
364
|
# exec
|
|
302
365
|
|
|
303
366
|
|
|
304
367
|
exec {
|
|
305
|
-
"
|
|
306
|
-
|
|
368
|
+
"xml-simple":
|
|
369
|
+
command => 'gem install -y --no-ri --no-rdoc xml-simple',
|
|
307
370
|
require => Package['rubygems'],
|
|
308
371
|
path => '/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/var/lib/gems/1.8/bin',
|
|
309
|
-
|
|
310
|
-
|
|
372
|
+
cwd => '/tmp',
|
|
373
|
+
unless => 'gem list --local xml-simple | grep xml-simple '
|
|
311
374
|
}
|
|
312
375
|
|
|
313
|
-
}
|
|
314
376
|
|
|
315
|
-
|
|
377
|
+
# gempackage
|
|
316
378
|
|
|
317
379
|
|
|
318
|
-
#
|
|
319
|
-
class
|
|
380
|
+
# grempe-amazon-ec2
|
|
381
|
+
class grempe-amazon-ec2 {
|
|
320
382
|
|
|
321
383
|
# exec
|
|
322
384
|
|
|
323
385
|
|
|
324
386
|
exec {
|
|
325
|
-
"
|
|
326
|
-
|
|
327
|
-
require =>
|
|
387
|
+
"grempe-amazon-ec2":
|
|
388
|
+
command => 'gem install -y --no-ri --no-rdoc --source http://gems.github.com grempe-amazon-ec2',
|
|
389
|
+
require => Exec['xml-simple'],
|
|
328
390
|
path => '/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/var/lib/gems/1.8/bin',
|
|
329
|
-
|
|
330
|
-
|
|
391
|
+
cwd => '/tmp',
|
|
392
|
+
unless => 'gem list --local grempe-amazon-ec2 | grep grempe-amazon-ec2 '
|
|
331
393
|
}
|
|
332
394
|
|
|
333
395
|
}
|
|
334
396
|
|
|
335
|
-
include
|
|
397
|
+
include grempe-amazon-ec2
|
|
336
398
|
|
|
399
|
+
}
|
|
337
400
|
|
|
338
|
-
|
|
339
|
-
|
|
401
|
+
include xml-simple
|
|
402
|
+
|
|
403
|
+
|
|
404
|
+
# rake
|
|
405
|
+
class rake {
|
|
340
406
|
|
|
341
407
|
# exec
|
|
342
408
|
|
|
343
409
|
|
|
344
410
|
exec {
|
|
345
|
-
"
|
|
346
|
-
|
|
411
|
+
"rake":
|
|
412
|
+
command => 'gem install -y --no-ri --no-rdoc rake',
|
|
347
413
|
require => Package['rubygems'],
|
|
348
414
|
path => '/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/var/lib/gems/1.8/bin',
|
|
349
|
-
|
|
350
|
-
|
|
415
|
+
cwd => '/tmp',
|
|
416
|
+
unless => 'gem list --local rake | grep rake '
|
|
351
417
|
}
|
|
352
418
|
|
|
353
419
|
}
|
|
354
420
|
|
|
355
|
-
include
|
|
421
|
+
include rake
|
|
356
422
|
|
|
357
423
|
|
|
358
|
-
#
|
|
359
|
-
class
|
|
424
|
+
# hoe
|
|
425
|
+
class hoe {
|
|
360
426
|
|
|
361
427
|
# exec
|
|
362
428
|
|
|
363
429
|
|
|
364
430
|
exec {
|
|
365
|
-
"
|
|
366
|
-
|
|
431
|
+
"hoe":
|
|
432
|
+
command => 'gem install -y --no-ri --no-rdoc hoe',
|
|
367
433
|
require => Package['rubygems'],
|
|
368
434
|
path => '/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/var/lib/gems/1.8/bin',
|
|
369
|
-
|
|
370
|
-
|
|
435
|
+
cwd => '/tmp',
|
|
436
|
+
unless => 'gem list --local hoe | grep hoe '
|
|
371
437
|
}
|
|
372
438
|
|
|
373
|
-
}
|
|
374
439
|
|
|
375
|
-
|
|
440
|
+
# gempackage
|
|
376
441
|
|
|
377
442
|
|
|
378
|
-
#
|
|
379
|
-
class
|
|
443
|
+
# open4
|
|
444
|
+
class open4 {
|
|
380
445
|
|
|
381
446
|
# exec
|
|
382
447
|
|
|
383
448
|
|
|
384
449
|
exec {
|
|
385
|
-
"
|
|
386
|
-
|
|
387
|
-
require =>
|
|
450
|
+
"open4":
|
|
451
|
+
command => 'gem install -y --no-ri --no-rdoc open4',
|
|
452
|
+
require => Exec['hoe'],
|
|
388
453
|
path => '/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/var/lib/gems/1.8/bin',
|
|
389
|
-
|
|
390
|
-
|
|
454
|
+
cwd => '/tmp',
|
|
455
|
+
unless => 'gem list --local open4 | grep open4 '
|
|
391
456
|
}
|
|
392
457
|
|
|
393
458
|
}
|
|
394
459
|
|
|
395
|
-
include
|
|
460
|
+
include open4
|
|
396
461
|
|
|
397
462
|
|
|
398
|
-
#
|
|
399
|
-
class
|
|
463
|
+
# ParseTree
|
|
464
|
+
class parsetree {
|
|
400
465
|
|
|
401
466
|
# exec
|
|
402
467
|
|
|
403
468
|
|
|
404
469
|
exec {
|
|
405
|
-
"
|
|
406
|
-
|
|
407
|
-
require =>
|
|
470
|
+
"ParseTree":
|
|
471
|
+
command => 'gem install -y --no-ri --no-rdoc --version 2.2.0 ParseTree',
|
|
472
|
+
require => Exec['hoe'],
|
|
408
473
|
path => '/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/var/lib/gems/1.8/bin',
|
|
409
|
-
|
|
410
|
-
|
|
474
|
+
cwd => '/tmp',
|
|
475
|
+
unless => 'gem list --local ParseTree | grep ParseTree | grep 2.2.0'
|
|
411
476
|
}
|
|
412
477
|
|
|
413
|
-
}
|
|
414
478
|
|
|
415
|
-
|
|
479
|
+
# gempackage
|
|
416
480
|
|
|
417
481
|
|
|
418
482
|
# ruby2ruby
|
|
@@ -422,12 +486,12 @@ class ruby2ruby {
|
|
|
422
486
|
|
|
423
487
|
|
|
424
488
|
exec {
|
|
425
|
-
"
|
|
426
|
-
unless => 'gem list --local ruby2ruby | grep ruby2ruby ',
|
|
427
|
-
require => Package['rubygems'],
|
|
428
|
-
path => '/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/var/lib/gems/1.8/bin',
|
|
489
|
+
"ruby2ruby":
|
|
429
490
|
command => 'gem install -y --no-ri --no-rdoc ruby2ruby',
|
|
430
|
-
|
|
491
|
+
require => Exec['ParseTree'],
|
|
492
|
+
path => '/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/var/lib/gems/1.8/bin',
|
|
493
|
+
cwd => '/tmp',
|
|
494
|
+
unless => 'gem list --local ruby2ruby | grep ruby2ruby '
|
|
431
495
|
}
|
|
432
496
|
|
|
433
497
|
}
|
|
@@ -435,24 +499,23 @@ class ruby2ruby {
|
|
|
435
499
|
include ruby2ruby
|
|
436
500
|
|
|
437
501
|
|
|
438
|
-
#
|
|
439
|
-
class
|
|
502
|
+
# activesupport
|
|
503
|
+
class activesupport {
|
|
440
504
|
|
|
441
505
|
# exec
|
|
442
506
|
|
|
443
507
|
|
|
444
508
|
exec {
|
|
445
|
-
"
|
|
446
|
-
|
|
447
|
-
require =>
|
|
509
|
+
"activesupport":
|
|
510
|
+
command => 'gem install -y --no-ri --no-rdoc activesupport',
|
|
511
|
+
require => Exec['ParseTree'],
|
|
448
512
|
path => '/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/var/lib/gems/1.8/bin',
|
|
449
|
-
|
|
450
|
-
|
|
513
|
+
cwd => '/tmp',
|
|
514
|
+
unless => 'gem list --local activesupport | grep activesupport '
|
|
451
515
|
}
|
|
452
516
|
|
|
453
|
-
}
|
|
454
517
|
|
|
455
|
-
|
|
518
|
+
# gempackage
|
|
456
519
|
|
|
457
520
|
|
|
458
521
|
# auser-poolparty
|
|
@@ -462,12 +525,28 @@ class auser-poolparty {
|
|
|
462
525
|
|
|
463
526
|
|
|
464
527
|
exec {
|
|
465
|
-
"
|
|
466
|
-
|
|
467
|
-
require =>
|
|
468
|
-
path => '/
|
|
528
|
+
"build_messenger":
|
|
529
|
+
command => '. /etc/profile && server-build-messenger',
|
|
530
|
+
require => Exec['auser-poolparty'],
|
|
531
|
+
path => '/usr/bin:/bin:/usr/local/bin:$PATH'
|
|
532
|
+
}
|
|
533
|
+
|
|
534
|
+
|
|
535
|
+
exec {
|
|
536
|
+
"start_node":
|
|
537
|
+
command => '. /etc/profile && server-start-node',
|
|
538
|
+
require => [ Exec['auser-poolparty'], Exec["build_messenger"] ],
|
|
539
|
+
path => '/usr/bin:/bin:/usr/local/bin:$PATH'
|
|
540
|
+
}
|
|
541
|
+
|
|
542
|
+
|
|
543
|
+
exec {
|
|
544
|
+
"auser-poolparty":
|
|
469
545
|
command => 'gem install -y --no-ri --no-rdoc --source http://gems.github.com auser-poolparty',
|
|
470
|
-
|
|
546
|
+
require => Exec['activesupport'],
|
|
547
|
+
path => '/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/var/lib/gems/1.8/bin',
|
|
548
|
+
cwd => '/tmp',
|
|
549
|
+
unless => 'gem list --local auser-poolparty | grep auser-poolparty '
|
|
471
550
|
}
|
|
472
551
|
|
|
473
552
|
}
|
|
@@ -476,6 +555,47 @@ include auser-poolparty
|
|
|
476
555
|
|
|
477
556
|
}
|
|
478
557
|
|
|
558
|
+
include activesupport
|
|
559
|
+
|
|
560
|
+
|
|
561
|
+
# RubyInline
|
|
562
|
+
class rubyinline {
|
|
563
|
+
|
|
564
|
+
# exec
|
|
565
|
+
|
|
566
|
+
|
|
567
|
+
exec {
|
|
568
|
+
"RubyInline":
|
|
569
|
+
command => 'gem install -y --no-ri --no-rdoc RubyInline',
|
|
570
|
+
require => Exec['ParseTree'],
|
|
571
|
+
path => '/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/var/lib/gems/1.8/bin',
|
|
572
|
+
cwd => '/tmp',
|
|
573
|
+
unless => 'gem list --local RubyInline | grep RubyInline '
|
|
574
|
+
}
|
|
575
|
+
|
|
576
|
+
}
|
|
577
|
+
|
|
578
|
+
include RubyInline
|
|
579
|
+
|
|
580
|
+
}
|
|
581
|
+
|
|
582
|
+
include ParseTree
|
|
583
|
+
|
|
584
|
+
}
|
|
585
|
+
|
|
586
|
+
include hoe
|
|
587
|
+
|
|
588
|
+
}
|
|
589
|
+
|
|
590
|
+
include rubygems
|
|
591
|
+
package {
|
|
592
|
+
"rubygems":
|
|
593
|
+
ensure => 'present',
|
|
594
|
+
name => 'rubygems'
|
|
595
|
+
}
|
|
596
|
+
|
|
597
|
+
}
|
|
598
|
+
|
|
479
599
|
include poolparty
|
|
480
600
|
# Custom functions
|
|
481
601
|
define line($file, $line, $ensure = 'present', $notify=[]) {
|