Sha256: ab626567e9752d6cf35df0383359d1894cb5c9540327a8dbdd1ef93218b4a3dd

Contents?: true

Size: 1.06 KB

Versions: 6

Compression:

Stored size: 1.06 KB

Contents

require_relative './all'
module CapistranoMulticonfigParallel
  # this is the class that will be invoked from terminal , and willl use the invoke task as the primary function.
  class CLI
    class << self
      include CapistranoMulticonfigParallel::ApplicationHelper

      # method used to start
      def start
        before_start
        arguments = multi_fetch_argv(original_args)
        execute_start(arguments)
      end

      def execute_start(arguments)
        if arguments[CapistranoMulticonfigParallel::ENV_KEY_JOB_ID].blank?
          require_relative './application'
          run_the_application
        else
          Capistrano::Application.new.run
        end
      end

      def before_start
        check_terminal_tty
        CapistranoMulticonfigParallel.original_args = ARGV.dup
      end

      def run_the_application
        execute_with_rescue('stderr') do
          configuration_valid?
          CapistranoMulticonfigParallel::Cursor.move_to_home!
          CapistranoMulticonfigParallel::Application.new.start
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
capistrano_multiconfig_parallel-0.29.1 lib/capistrano_multiconfig_parallel/cli.rb
capistrano_multiconfig_parallel-0.29.0 lib/capistrano_multiconfig_parallel/cli.rb
capistrano_multiconfig_parallel-0.28.5 lib/capistrano_multiconfig_parallel/cli.rb
capistrano_multiconfig_parallel-0.28.4 lib/capistrano_multiconfig_parallel/cli.rb
capistrano_multiconfig_parallel-0.28.3 lib/capistrano_multiconfig_parallel/cli.rb
capistrano_multiconfig_parallel-0.28.2 lib/capistrano_multiconfig_parallel/cli.rb