lib/meroku/infrastructure.rb in meroku-2.0.3 vs lib/meroku/infrastructure.rb in meroku-2.0.4
- old
+ new
@@ -1,17 +1,26 @@
require "meroku/infrastructure/node"
module Meroku
module Infrastructure
- extend Meroku::Aws
+ def spawn(session)
+ node = Meroku::Infrastructure::Node.new(session.ec2_client)
+ node.associate_address
+ node.install_packages
+ node.tweak_configuration
+ node.install_frontend_app
+ puts "spawned #{node.instance.try(:instance_id)}"
+ end
- def self.despawn
+ def despawn
instances = ec2_client.describe_instances(filters:[{ name: "tag:Name", values: ['node'] }, { name: 'instance-state-name', values: ['running','pending'] }]).reservations.map { |xx| xx.instances.first.instance_id }
puts "will despawn #{instances.inspect}"
ec2_client.terminate_instances({
instance_ids: instances
}) if instances.size > 0
end
+
+
end
end