Sha256: 4648ccc8e284a0da25af9fe1e1c11c455fe4f335bc6ea75bde4244cf1bb17e80

Contents?: true

Size: 869 Bytes

Versions: 2

Compression:

Stored size: 869 Bytes

Contents

Gem.find_files('capistrano_multiconfig_parallel/extensions/**/*.rb').each { |path| require path }
module CapistranoMulticonfigParallel
  # class used as a wrapper around capistrano
  class Application < Capistrano::Application
    def name
      'multi_cap'
    end

    def sort_options(options)
      super.concat(CapistranoMulticonfigParallel.capistrano_options)
    end

    def top_level
      job_manager = multi_manager_class.new(self, top_level_tasks, stages)
      if job_manager.can_start? && !options.show_prereqs && !options.show_tasks
        job_manager.start
      else
        super
      end
    end

    def multi_apps?
      stages.find { |stage| stage.include?(':') }.present?
    end

    def multi_manager_class
      multi_apps? ? CapistranoMulticonfigParallel::MultiAppManager : CapistranoMulticonfigParallel::SingleAppManager
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
capistrano_multiconfig_parallel-0.6.2 lib/capistrano_multiconfig_parallel/application.rb
capistrano_multiconfig_parallel-0.6.1 lib/capistrano_multiconfig_parallel/application.rb