auser-poolparty 0.1.2 → 0.2.2
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/History.txt +22 -0
- data/License.txt +20 -0
- data/README.txt +52 -0
- data/Rakefile +4 -109
- data/bin/cloud +31 -0
- data/bin/cloud-add-keypair +23 -0
- data/bin/cloud-configure +35 -0
- data/bin/cloud-contract +27 -0
- data/bin/cloud-expand +27 -0
- data/bin/cloud-list +32 -0
- data/bin/cloud-maintain +36 -0
- data/bin/cloud-provision +30 -0
- data/bin/cloud-reconfigure +24 -0
- data/bin/cloud-ssh +18 -0
- data/bin/cloud-start +29 -0
- data/bin/pool +23 -75
- data/bin/pool-console +12 -0
- data/bin/pool-describe +9 -0
- data/bin/pool-list +28 -0
- data/bin/pool-provision +34 -0
- data/bin/pool-spec +17 -0
- data/bin/pool-start +32 -0
- data/examples/basic.rb +20 -0
- data/examples/plugin_without_plugin_directory.rb +13 -0
- data/examples/poolparty.rb +12 -0
- data/examples/with_apache_plugin.rb +22 -0
- data/generators/poolspec/USAGE +5 -0
- data/generators/poolspec/poolspec_generator.rb +65 -0
- data/generators/poolspec/templates/pool_spec_template.erb +9 -0
- data/lib/erlang/eb_server.erl +27 -0
- data/lib/poolparty.rb +40 -116
- data/lib/poolparty/base_packages/haproxy.rb +41 -0
- data/lib/poolparty/base_packages/heartbeat.rb +43 -0
- data/lib/poolparty/base_packages/poolparty.rb +18 -0
- data/lib/poolparty/base_packages/ruby.rb +27 -0
- data/lib/poolparty/core/array.rb +24 -0
- data/lib/{core → poolparty/core}/exception.rb +0 -0
- data/lib/{core → poolparty/core}/float.rb +0 -0
- data/lib/poolparty/core/hash.rb +29 -0
- data/lib/poolparty/core/kernel.rb +34 -0
- data/lib/{core → poolparty/core}/module.rb +18 -0
- data/lib/poolparty/core/my_open_struct.rb +18 -0
- data/lib/poolparty/core/object.rb +54 -0
- data/lib/poolparty/core/proc.rb +2 -0
- data/lib/poolparty/core/string.rb +72 -0
- data/lib/poolparty/core/symbol.rb +8 -0
- data/lib/{core → poolparty/core}/time.rb +15 -0
- data/lib/poolparty/exceptions/RemoteException.rb +12 -0
- data/lib/poolparty/exceptions/ResourceException.rb +7 -0
- data/lib/poolparty/exceptions/RuntimeException.rb +7 -0
- data/lib/poolparty/exceptions/SpecException.rb +7 -0
- data/lib/poolparty/exceptions/TemplateNotFound.rb +7 -0
- data/lib/poolparty/helpers/binary.rb +30 -0
- data/lib/poolparty/helpers/console.rb +30 -0
- data/lib/poolparty/helpers/display.rb +25 -0
- data/lib/poolparty/helpers/optioner.rb +61 -0
- data/lib/poolparty/helpers/provisioner_base.rb +226 -0
- data/lib/poolparty/helpers/provisioners/master.rb +120 -0
- data/lib/poolparty/helpers/provisioners/slave.rb +52 -0
- data/lib/poolparty/modules/cloud_resourcer.rb +72 -0
- data/lib/poolparty/modules/configurable.rb +34 -0
- data/lib/poolparty/modules/definable_resource.rb +59 -0
- data/lib/poolparty/modules/file_writer.rb +55 -0
- data/lib/poolparty/modules/method_missing_sugar.rb +17 -0
- data/lib/poolparty/modules/output.rb +13 -0
- data/lib/poolparty/modules/pretty_printer.rb +38 -0
- data/lib/{core/string.rb → poolparty/modules/s3_string.rb} +5 -29
- data/lib/{modules → poolparty/modules}/safe_instance.rb +0 -0
- data/lib/poolparty/monitors/base_monitor.rb +16 -0
- data/lib/poolparty/net/remote.rb +35 -0
- data/lib/poolparty/net/remote_bases/ec2.rb +145 -0
- data/lib/poolparty/net/remote_instance.rb +68 -0
- data/lib/poolparty/net/remoter.rb +209 -0
- data/lib/poolparty/net/remoter_base.rb +117 -0
- data/lib/poolparty/plugins/gem_package.rb +39 -0
- data/lib/poolparty/plugins/line.rb +76 -0
- data/lib/poolparty/plugins/svn.rb +48 -0
- data/lib/poolparty/pool/base.rb +74 -0
- data/lib/poolparty/pool/cloud.rb +132 -0
- data/lib/poolparty/pool/custom_resource.rb +61 -0
- data/lib/poolparty/pool/loggable.rb +29 -0
- data/lib/poolparty/pool/plugin.rb +42 -0
- data/lib/poolparty/pool/plugin_model.rb +48 -0
- data/lib/poolparty/pool/pool.rb +55 -0
- data/lib/poolparty/pool/resource.rb +235 -0
- data/lib/poolparty/pool/resources/class_package.rb +60 -0
- data/lib/poolparty/pool/resources/cron.rb +14 -0
- data/lib/poolparty/pool/resources/directory.rb +23 -0
- data/lib/poolparty/pool/resources/exec.rb +26 -0
- data/lib/poolparty/pool/resources/file.rb +23 -0
- data/lib/poolparty/pool/resources/gem.rb +14 -0
- data/lib/poolparty/pool/resources/host.rb +14 -0
- data/lib/poolparty/pool/resources/package.rb +14 -0
- data/lib/poolparty/pool/resources/remote_file.rb +20 -0
- data/lib/poolparty/pool/resources/service.rb +21 -0
- data/lib/poolparty/pool/resources/sshkey.rb +19 -0
- data/lib/poolparty/pool/resources/variable.rb +27 -0
- data/lib/poolparty/pool/script.rb +21 -0
- data/{config/heartbeat_authkeys.conf → lib/poolparty/templates/authkeys} +0 -0
- data/lib/poolparty/templates/cib.xml +1 -0
- data/lib/poolparty/templates/fileserver.conf +4 -0
- data/{config/heartbeat.conf → lib/poolparty/templates/ha.cf} +3 -1
- data/{config → lib/poolparty/templates}/haproxy.conf +13 -6
- data/lib/poolparty/templates/namespaceauth.conf +19 -0
- data/lib/poolparty/templates/puppet.conf +13 -0
- data/lib/poolparty/version.rb +9 -0
- data/lib/poolpartycl.rb +3 -0
- data/script/destroy +14 -0
- data/script/generate +14 -0
- data/script/txt2html +82 -0
- data/{lib/poolparty/tasks → tasks}/cloud.rake +1 -1
- data/tasks/deployment.rake +34 -0
- data/tasks/development.rake +78 -0
- data/{lib/poolparty/tasks → tasks}/ec2.rake +1 -1
- data/tasks/environment.rake +7 -0
- data/{lib/poolparty/tasks → tasks}/instance.rake +0 -0
- data/{lib/poolparty/tasks → tasks}/server.rake +0 -0
- data/tasks/spec.rake +17 -0
- data/tasks/website.rake +17 -0
- metadata +154 -249
- data/CHANGELOG +0 -23
- data/LICENSE +0 -22
- data/README +0 -139
- data/assets/clouds.png +0 -0
- data/bin/instance +0 -68
- data/bin/poolnotify +0 -34
- data/config/cloud_master_takeover +0 -17
- data/config/create_proxy_ami.sh +0 -582
- data/config/installers/ubuntu_install.sh +0 -77
- data/config/monit.conf +0 -9
- data/config/monit/haproxy.monit.conf +0 -8
- data/config/monit/nginx.monit.conf +0 -0
- data/config/nginx.conf +0 -24
- data/config/reconfigure_instances_script.sh +0 -37
- data/config/sample-config.yml +0 -23
- data/config/scp_instances_script.sh +0 -12
- data/lib/core/array.rb +0 -16
- data/lib/core/hash.rb +0 -11
- data/lib/core/kernel.rb +0 -12
- data/lib/core/object.rb +0 -21
- data/lib/core/proc.rb +0 -15
- data/lib/helpers/plugin_spec_helper.rb +0 -58
- data/lib/modules/callback.rb +0 -133
- data/lib/modules/ec2_wrapper.rb +0 -108
- data/lib/modules/file_writer.rb +0 -38
- data/lib/modules/sprinkle_overrides.rb +0 -27
- data/lib/modules/vlad_override.rb +0 -83
- data/lib/poolparty/application.rb +0 -199
- data/lib/poolparty/init.rb +0 -6
- data/lib/poolparty/master.rb +0 -492
- data/lib/poolparty/monitors.rb +0 -11
- data/lib/poolparty/monitors/cpu.rb +0 -23
- data/lib/poolparty/monitors/memory.rb +0 -33
- data/lib/poolparty/monitors/web.rb +0 -29
- data/lib/poolparty/optioner.rb +0 -20
- data/lib/poolparty/plugin.rb +0 -78
- data/lib/poolparty/provider.rb +0 -104
- data/lib/poolparty/provider/essential.rb +0 -6
- data/lib/poolparty/provider/git.rb +0 -8
- data/lib/poolparty/provider/haproxy.rb +0 -9
- data/lib/poolparty/provider/heartbeat.rb +0 -6
- data/lib/poolparty/provider/rsync.rb +0 -8
- data/lib/poolparty/provider/ruby.rb +0 -65
- data/lib/poolparty/provider/s3fuse.rb +0 -22
- data/lib/poolparty/remote_instance.rb +0 -250
- data/lib/poolparty/remoter.rb +0 -171
- data/lib/poolparty/remoting.rb +0 -137
- data/lib/poolparty/scheduler.rb +0 -93
- data/lib/poolparty/tasks.rb +0 -47
- data/lib/poolparty/tasks/development.rake +0 -78
- data/lib/poolparty/tasks/plugins.rake +0 -30
- data/lib/poolparty/thread_pool.rb +0 -94
- data/lib/s3/s3_object_store_folders.rb +0 -44
- data/poolparty.gemspec +0 -71
- data/spec/files/describe_response +0 -37
- data/spec/files/multi_describe_response +0 -69
- data/spec/files/remote_desc_response +0 -37
- data/spec/helpers/ec2_mock.rb +0 -57
- data/spec/lib/core/core_spec.rb +0 -26
- data/spec/lib/core/kernel_spec.rb +0 -24
- data/spec/lib/core/string_spec.rb +0 -28
- data/spec/lib/modules/callback_spec.rb +0 -213
- data/spec/lib/modules/file_writer_spec.rb +0 -74
- data/spec/lib/poolparty/application_spec.rb +0 -135
- data/spec/lib/poolparty/ec2_wrapper_spec.rb +0 -110
- data/spec/lib/poolparty/master_spec.rb +0 -479
- data/spec/lib/poolparty/optioner_spec.rb +0 -34
- data/spec/lib/poolparty/plugin_spec.rb +0 -115
- data/spec/lib/poolparty/poolparty_spec.rb +0 -60
- data/spec/lib/poolparty/provider_spec.rb +0 -74
- data/spec/lib/poolparty/remote_instance_spec.rb +0 -178
- data/spec/lib/poolparty/remoter_spec.rb +0 -72
- data/spec/lib/poolparty/remoting_spec.rb +0 -148
- data/spec/lib/poolparty/scheduler_spec.rb +0 -70
- data/spec/monitors/cpu_monitor_spec.rb +0 -39
- data/spec/monitors/memory_spec.rb +0 -51
- data/spec/monitors/misc_monitor_spec.rb +0 -51
- data/spec/monitors/web_spec.rb +0 -40
- data/spec/spec_helper.rb +0 -53
data/lib/poolparty/monitors.rb
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
=begin rdoc
|
|
2
|
-
Basic monitor on the cpu stats
|
|
3
|
-
=end
|
|
4
|
-
require "poolparty"
|
|
5
|
-
|
|
6
|
-
module Cpu
|
|
7
|
-
module Master
|
|
8
|
-
def cpu
|
|
9
|
-
nodes.size > 0 ? nodes.inject(0) {|i,a| i+=a.cpu } / nodes.size : 0.0
|
|
10
|
-
end
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
module Remote
|
|
14
|
-
def cpu
|
|
15
|
-
str = run("uptime").split(/\s+/)[-3].to_f rescue 0.0
|
|
16
|
-
PoolParty.message "Cpu usage: #{str}"
|
|
17
|
-
str
|
|
18
|
-
end
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
PoolParty.register_monitor Cpu
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
=begin rdoc
|
|
2
|
-
Basic monitor on the cpu stats
|
|
3
|
-
=end
|
|
4
|
-
require "poolparty"
|
|
5
|
-
|
|
6
|
-
module Memory
|
|
7
|
-
module Master
|
|
8
|
-
# Get the average memory usage over the cloud
|
|
9
|
-
def memory
|
|
10
|
-
nodes.size > 0 ? nodes.inject(0) {|i,a| i += a.memory } / nodes.size : 0.0
|
|
11
|
-
end
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
module Remote
|
|
15
|
-
def memory
|
|
16
|
-
out = begin
|
|
17
|
-
str = run("free -m | grep -i mem")
|
|
18
|
-
|
|
19
|
-
total_memory = str.split[1].to_f
|
|
20
|
-
used_memory = str.split[2].to_f
|
|
21
|
-
|
|
22
|
-
used_memory / total_memory
|
|
23
|
-
rescue Exception => e
|
|
24
|
-
0.0
|
|
25
|
-
end
|
|
26
|
-
PoolParty.message "Memory: #{out}"
|
|
27
|
-
out
|
|
28
|
-
end
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
end
|
|
32
|
-
|
|
33
|
-
PoolParty.register_monitor Memory
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
=begin rdoc
|
|
2
|
-
Basic monitor on the cpu stats
|
|
3
|
-
=end
|
|
4
|
-
require "poolparty"
|
|
5
|
-
|
|
6
|
-
module Web
|
|
7
|
-
module Master
|
|
8
|
-
# Get the average web request capabilities over the cloud
|
|
9
|
-
def web
|
|
10
|
-
nodes.size > 0 ? nodes.inject(0) {|i,a| i += a.web } / nodes.size : 0.0
|
|
11
|
-
end
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
module Remote
|
|
15
|
-
def web
|
|
16
|
-
out = begin
|
|
17
|
-
str = run("httperf --server localhost --port #{Application.client_port} --num-conn 3 --timeout 5 | grep 'Request rate'")
|
|
18
|
-
str[/[.]* ([\d]*\.[\d]*) [.]*/, 0].chomp.to_f
|
|
19
|
-
rescue Exception => e
|
|
20
|
-
0.0
|
|
21
|
-
end
|
|
22
|
-
PoolParty.message "Web requests: #{out}"
|
|
23
|
-
out
|
|
24
|
-
end
|
|
25
|
-
end
|
|
26
|
-
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
PoolParty.register_monitor Web
|
data/lib/poolparty/optioner.rb
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
module PoolParty
|
|
2
|
-
class Optioner
|
|
3
|
-
# Parse the command line options for options without a switch
|
|
4
|
-
def self.parse(argv, safe=[])
|
|
5
|
-
args = []
|
|
6
|
-
# Default options
|
|
7
|
-
safe.push "-v"
|
|
8
|
-
safe.push "-i"
|
|
9
|
-
|
|
10
|
-
argv.each_with_index do |arg,i|
|
|
11
|
-
unless arg.index("-") == 0# && !arg.match(/(?:[^"']+)/)
|
|
12
|
-
args << arg
|
|
13
|
-
else
|
|
14
|
-
argv.shift unless safe.include?(arg)
|
|
15
|
-
end
|
|
16
|
-
end
|
|
17
|
-
args
|
|
18
|
-
end
|
|
19
|
-
end
|
|
20
|
-
end
|
data/lib/poolparty/plugin.rb
DELETED
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
=begin rdoc
|
|
2
|
-
Allow for plugins based in callbacks
|
|
3
|
-
|
|
4
|
-
A plugin should be able to hook into any method and run their command
|
|
5
|
-
either before or after the plugin.
|
|
6
|
-
=end
|
|
7
|
-
module PoolParty
|
|
8
|
-
class Plugin
|
|
9
|
-
|
|
10
|
-
# Create a class-level method for the name on the class
|
|
11
|
-
# For instance:
|
|
12
|
-
# create_methods :install, RemoteInstance
|
|
13
|
-
# will give the following methods to the class
|
|
14
|
-
# before_install and after_install on the RemoteInstance
|
|
15
|
-
def self.create_methods(name, klass, opts={})
|
|
16
|
-
str = ""
|
|
17
|
-
%w(before after).each do |time|
|
|
18
|
-
str << <<-EOE
|
|
19
|
-
def self.#{time}_#{name}(*meth)
|
|
20
|
-
callee = self
|
|
21
|
-
#{klass}.class_eval do
|
|
22
|
-
meth.each {|m| #{time} :#{name}, {m.to_sym => callee.to_s }}
|
|
23
|
-
end
|
|
24
|
-
end
|
|
25
|
-
EOE
|
|
26
|
-
end
|
|
27
|
-
eval str
|
|
28
|
-
end
|
|
29
|
-
|
|
30
|
-
def self.user_tasks str
|
|
31
|
-
PoolParty::RemoteInstance.user_tasks << str
|
|
32
|
-
end
|
|
33
|
-
|
|
34
|
-
def self.define_custom_package name=:userpackage, &block
|
|
35
|
-
PoolParty::Provider.define_custom_package name, &block
|
|
36
|
-
end
|
|
37
|
-
|
|
38
|
-
def self.define_global_file(name, &block)
|
|
39
|
-
PoolParty::Master.define_global_user_file(name, &block)
|
|
40
|
-
end
|
|
41
|
-
|
|
42
|
-
def self.define_node_file(name, &block)
|
|
43
|
-
PoolParty::Master.define_node_user_file(name, &block)
|
|
44
|
-
end
|
|
45
|
-
|
|
46
|
-
def add_user_data(h={})
|
|
47
|
-
case h.class.to_s
|
|
48
|
-
when "String"
|
|
49
|
-
PoolParty::Application.user_data << h
|
|
50
|
-
when "Hash"
|
|
51
|
-
PoolParty::Application.hash_to_launch_with.merge!(h)
|
|
52
|
-
end
|
|
53
|
-
end
|
|
54
|
-
|
|
55
|
-
def read_config_file(filename)
|
|
56
|
-
return {} unless filename
|
|
57
|
-
YAML.load(open(filename).read)
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
%w(install configure associate_public_ip become_master).each do |method|
|
|
61
|
-
create_methods method, RemoteInstance
|
|
62
|
-
end
|
|
63
|
-
%w(start start_monitor install_cloud configure_cloud scale_cloud reconfiguration add_instance terminate_instance check_stats).each do |method|
|
|
64
|
-
create_methods method, Master
|
|
65
|
-
end
|
|
66
|
-
%w(define_tasks).each do |method|
|
|
67
|
-
create_methods method, Tasks
|
|
68
|
-
end
|
|
69
|
-
%w(run_tasks).each do |method|
|
|
70
|
-
create_methods method, Scheduler
|
|
71
|
-
end
|
|
72
|
-
|
|
73
|
-
%w(load_packages).each do |method|
|
|
74
|
-
create_methods method, Provider
|
|
75
|
-
end
|
|
76
|
-
|
|
77
|
-
end
|
|
78
|
-
end
|
data/lib/poolparty/provider.rb
DELETED
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
module PoolParty
|
|
2
|
-
class Provider
|
|
3
|
-
include Sprinkle
|
|
4
|
-
|
|
5
|
-
def install_poolparty(testing=false)
|
|
6
|
-
PoolParty.message "Installing required poolparty paraphernalia"
|
|
7
|
-
load_packages
|
|
8
|
-
user_packages.map {|blk| blk.call if blk }
|
|
9
|
-
|
|
10
|
-
policy :poolparty, :roles => :app do
|
|
11
|
-
requires :ruby
|
|
12
|
-
requires :heartbeat
|
|
13
|
-
requires :haproxy
|
|
14
|
-
requires :s3fs
|
|
15
|
-
requires :rsync
|
|
16
|
-
requires :required_gems
|
|
17
|
-
|
|
18
|
-
PoolParty::Provider.user_install_packages.each do |req|
|
|
19
|
-
self.send :requires, req.to_sym
|
|
20
|
-
end
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
testing ? show_process : process
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
def self.define_custom_package name=:userpackages, &block
|
|
27
|
-
(user_install_packages << name).uniq!
|
|
28
|
-
user_packages << yield if block_given?
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
def user_packages
|
|
32
|
-
self.class.user_packages
|
|
33
|
-
end
|
|
34
|
-
|
|
35
|
-
def user_install_packages
|
|
36
|
-
self.class.user_install_packages
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
def self.user_packages
|
|
40
|
-
@user_packages ||= []
|
|
41
|
-
end
|
|
42
|
-
|
|
43
|
-
def self.user_install_packages
|
|
44
|
-
@load_strings ||= []
|
|
45
|
-
end
|
|
46
|
-
|
|
47
|
-
def load_packages
|
|
48
|
-
Dir["#{File.expand_path(File.dirname(__FILE__))}/provider/*"].each do |f|
|
|
49
|
-
load f
|
|
50
|
-
end
|
|
51
|
-
end
|
|
52
|
-
|
|
53
|
-
def set_start_with_sprinkle
|
|
54
|
-
deployment do
|
|
55
|
-
delivery :vlad do
|
|
56
|
-
set :user, "#{Application.username}"
|
|
57
|
-
|
|
58
|
-
Master.cloud_ips.each do |ip|
|
|
59
|
-
role :app, "#{Application.username}@#{ip}"
|
|
60
|
-
end
|
|
61
|
-
end
|
|
62
|
-
|
|
63
|
-
source do
|
|
64
|
-
prefix '/usr/local'
|
|
65
|
-
archives '/root/sources'
|
|
66
|
-
builds '/root/builds'
|
|
67
|
-
end
|
|
68
|
-
end
|
|
69
|
-
|
|
70
|
-
end
|
|
71
|
-
|
|
72
|
-
def process
|
|
73
|
-
set_start_with_sprinkle
|
|
74
|
-
@deployment.process if @deployment
|
|
75
|
-
end
|
|
76
|
-
|
|
77
|
-
def show_process
|
|
78
|
-
Sprinkle::OPTIONS[:testing] = true
|
|
79
|
-
Sprinkle::OPTIONS[:verbose] = true
|
|
80
|
-
Object.logger.level = ActiveSupport::BufferedLogger::Severity::DEBUG
|
|
81
|
-
deployment do
|
|
82
|
-
delivery :vlad do
|
|
83
|
-
end
|
|
84
|
-
source do
|
|
85
|
-
prefix '/usr/local'
|
|
86
|
-
archives '/root/sources'
|
|
87
|
-
builds '/root/builds'
|
|
88
|
-
end
|
|
89
|
-
end.process
|
|
90
|
-
end
|
|
91
|
-
|
|
92
|
-
class << self
|
|
93
|
-
require "sprinkle"
|
|
94
|
-
|
|
95
|
-
def install_poolparty(testing=false)
|
|
96
|
-
singleton.install_poolparty(testing)
|
|
97
|
-
end
|
|
98
|
-
def singleton
|
|
99
|
-
@singleton ||= new
|
|
100
|
-
end
|
|
101
|
-
end
|
|
102
|
-
|
|
103
|
-
end
|
|
104
|
-
end
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
package :ruby do
|
|
2
|
-
description 'Ruby Virtual Machine'
|
|
3
|
-
apt %w( ruby ruby1.8-dev )
|
|
4
|
-
requires :ruby_dependencies
|
|
5
|
-
|
|
6
|
-
verify do
|
|
7
|
-
has_executable 'ruby'
|
|
8
|
-
end
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
package :ruby_dependencies do
|
|
12
|
-
description 'Ruby Virtual Machine Build Dependencies'
|
|
13
|
-
apt %w( bison zlib1g-dev libssl-dev libreadline5-dev libncurses5-dev file )
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
package :rubygems do
|
|
17
|
-
description 'Ruby Gems Package Management System'
|
|
18
|
-
version '1.2.0'
|
|
19
|
-
source "http://rubyforge.org/frs/download.php/38646/rubygems-#{version}.tgz" do
|
|
20
|
-
custom_install 'ruby setup.rb'
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
post :install, "sed -i s/require\ 'rubygems'/require\ 'rubygems'\nrequire\ 'rubygems\/gem_runner'/g", "gem update --system", "gem sources -a http://gems.github.com"
|
|
24
|
-
|
|
25
|
-
requires :ruby
|
|
26
|
-
|
|
27
|
-
verify do
|
|
28
|
-
has_executable 'gem'
|
|
29
|
-
end
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
package :required_gems do
|
|
33
|
-
description "Poolparty required gem"
|
|
34
|
-
gem 'auser-poolparty'
|
|
35
|
-
requires :s3
|
|
36
|
-
requires :ec2
|
|
37
|
-
requires :aska
|
|
38
|
-
|
|
39
|
-
has_gem 'auser-poolparty'
|
|
40
|
-
end
|
|
41
|
-
|
|
42
|
-
package :s3 do
|
|
43
|
-
description "Amazon s3"
|
|
44
|
-
gem 'aws-s3'
|
|
45
|
-
|
|
46
|
-
has_gem 'aws-s3'
|
|
47
|
-
end
|
|
48
|
-
package :ec2 do
|
|
49
|
-
description "Amazon EC2"
|
|
50
|
-
gem 'amazon-ec2'
|
|
51
|
-
|
|
52
|
-
has_gem 'amazon-ec2'
|
|
53
|
-
end
|
|
54
|
-
package :aska do
|
|
55
|
-
description "Aska - Expert System"
|
|
56
|
-
gem 'auser-aska'
|
|
57
|
-
|
|
58
|
-
has_gem 'auser-aska'
|
|
59
|
-
end
|
|
60
|
-
package :rake do
|
|
61
|
-
description "Rake"
|
|
62
|
-
gem 'rake'
|
|
63
|
-
|
|
64
|
-
has_gem 'rake'
|
|
65
|
-
end
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
package :s3fs do
|
|
2
|
-
description "S3 Fuse project"
|
|
3
|
-
source "http://s3fs.googlecode.com/files/s3fs-r166-source.tar.gz" do
|
|
4
|
-
custom_dir 's3fs'
|
|
5
|
-
custom_install "make"
|
|
6
|
-
|
|
7
|
-
post :install, "mv s3fs /usr/bin"
|
|
8
|
-
end
|
|
9
|
-
|
|
10
|
-
verify do
|
|
11
|
-
has_executable 's3fs'
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
requires :s3fs_deps
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
package :s3fs_deps do
|
|
18
|
-
description "S3 Fuse project dependencies"
|
|
19
|
-
apt %w( libcurl4-openssl-dev libxml2-dev libfuse-dev )
|
|
20
|
-
|
|
21
|
-
requires :build_essential
|
|
22
|
-
end
|