lib/standup.rb in standup-0.3.3 vs lib/standup.rb in standup-0.3.4
- old
+ new
@@ -8,10 +8,11 @@
require 'standup/core_ext'
require 'standup/settings'
require 'standup/ec2'
require 'standup/remoting'
require 'standup/scripts/base'
+require 'standup/scripts/node'
require 'standup/node'
module Standup
module Scripts; end
@@ -42,12 +43,20 @@
end
end
@@scripts
end
- def self.script &block
+ def self.script type = :node, &block
name = block.__file__.match(/([^\/]*)\.rb$/)[1]
- script_class = Class.new(Standup::Scripts::Base, &block)
+ superclass = case type
+ when :node
+ Scripts::Node
+ when :local
+ Scripts::Base
+ else
+ raise ArgumentError, "Unknown script type #{type}"
+ end
+ script_class = Class.new(superclass, &block)
script_class.name = name
Standup::Scripts.const_set name.camelize, script_class
scripts[name] = script_class
end
end
\ No newline at end of file