require 'capistrano/recipes/deploy/local_dependency' require 'capistrano/recipes/deploy/remote_dependency' module Capistrano module Deploy class Dependencies include Enumerable attr_reader :configuration def initialize(configuration) @configuration = configuration @dependencies = [] yield self if block_given? end def check yield self self end def remote dep = RemoteDependency.new(configuration) @dependencies << dep dep end def local dep = LocalDependency.new(configuration) @dependencies << dep dep end def each @dependencies.each { |d| yield d } self end def pass? all? { |d| d.pass? } end end end end