capistrano_multiconfig_parallel 1.1.9 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/README.md +5 -0
 - data/capistrano_multiconfig_parallel.gemspec +1 -0
 - data/lib/capistrano_multiconfig_parallel/all.rb +2 -2
 - data/lib/capistrano_multiconfig_parallel/application.rb +3 -4
 - data/lib/capistrano_multiconfig_parallel/celluloid/celluloid_manager.rb +7 -11
 - data/lib/capistrano_multiconfig_parallel/celluloid/celluloid_worker.rb +2 -5
 - data/lib/capistrano_multiconfig_parallel/celluloid/child_process.rb +2 -5
 - data/lib/capistrano_multiconfig_parallel/celluloid/rake_worker.rb +2 -4
 - data/lib/capistrano_multiconfig_parallel/celluloid/terminal_table.rb +2 -5
 - data/lib/capistrano_multiconfig_parallel/helpers/base_actor_helper.rb +84 -0
 - data/lib/capistrano_multiconfig_parallel/helpers/gem_helper.rb +7 -1
 - data/lib/capistrano_multiconfig_parallel/version.rb +2 -2
 - metadata +22 -1
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA1:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 1e4d9a28f5d3cdeb1e98c18c651ec36cd83c6cec
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: b311f2acada696e6e029fdeebbded2fd868c228d
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 4c0e34c2a8e00ad86845bb2d8d2b51ab412766b9632e193467d906c1fb8bfb6da06072d6304fccf9d24d2e05b1aabf81d27ba6ac9f6129285dc6add29a28a31f
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 66b76ce6cf78619cf93a58ff9ef237f1c6f2347ba949566dba1b63ff1cac72318ee91d8e791acc7c34e7332ca6a287d00b28c8f05cdbebf288f8ec683af5e7a1
         
     | 
    
        data/README.md
    CHANGED
    
    | 
         @@ -17,6 +17,11 @@ IMPORTANT! The whole reason for this gem was for using [Caphub](https://github.c 
     | 
|
| 
       17 
17 
     | 
    
         | 
| 
       18 
18 
     | 
    
         
             
            CAUTION!! PLEASE READ CAREFULLY!! Capistrano is not thread-safe. However in order to work around this problem, each of the task is executing inside a thread that spawns a new process in order to run capistrano tasks The thread monitors the process. This works well, however if the tasks you are executing is working with files, you might get into deadlocks because multiple proceses try to access same resource. Instead of using files , please consider using StringIO instead.
         
     | 
| 
       19 
19 
     | 
    
         | 
| 
      
 20 
     | 
    
         
            +
            NEW Improvements in version 1.2.0
         
     | 
| 
      
 21 
     | 
    
         
            +
            ---------------------------------
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
            -	support for Celluloid 0.17 was added
         
     | 
| 
      
 24 
     | 
    
         
            +
             
     | 
| 
       20 
25 
     | 
    
         
             
            NEW Improvements in version 1.1.0
         
     | 
| 
       21 
26 
     | 
    
         
             
            ---------------------------------
         
     | 
| 
       22 
27 
     | 
    
         | 
| 
         @@ -17,6 +17,7 @@ Gem::Specification.new do |s| 
     | 
|
| 
       17 
17 
     | 
    
         
             
              s.require_paths = ['lib']
         
     | 
| 
       18 
18 
     | 
    
         
             
              s.executables = s.files.grep(%r{^bin/}) { |f| File.basename(f) }
         
     | 
| 
       19 
19 
     | 
    
         | 
| 
      
 20 
     | 
    
         
            +
              s.add_runtime_dependency 'celluloid', '>= 0.16', '>= 0.16.0'
         
     | 
| 
       20 
21 
     | 
    
         
             
              s.add_runtime_dependency 'celluloid-pmap', '~> 0.2', '>= 0.2.2'
         
     | 
| 
       21 
22 
     | 
    
         
             
              s.add_runtime_dependency 'celluloid_pubsub', '~> 0.6', '>= 0.6.1'
         
     | 
| 
       22 
23 
     | 
    
         
             
              s.add_runtime_dependency 'celluloid-websocket-client', '~> 0.0', '>= 0.0.1'
         
     | 
| 
         @@ -7,15 +7,15 @@ require 'active_support/core_ext/hash/keys' 
     | 
|
| 
       7 
7 
     | 
    
         
             
            require 'active_support/core_ext/module/delegation'
         
     | 
| 
       8 
8 
     | 
    
         
             
            require 'active_support/concern'
         
     | 
| 
       9 
9 
     | 
    
         | 
| 
       10 
     | 
    
         
            -
             
     | 
| 
      
 10 
     | 
    
         
            +
            require_relative './helpers/base_actor_helper'
         
     | 
| 
       11 
11 
     | 
    
         
             
            require 'celluloid/pmap'
         
     | 
| 
      
 12 
     | 
    
         
            +
            require 'celluloid_pubsub'
         
     | 
| 
       12 
13 
     | 
    
         | 
| 
       13 
14 
     | 
    
         
             
            require 'composable_state_machine'
         
     | 
| 
       14 
15 
     | 
    
         
             
            require 'eventmachine'
         
     | 
| 
       15 
16 
     | 
    
         
             
            require 'right_popen'
         
     | 
| 
       16 
17 
     | 
    
         
             
            require 'colorize'
         
     | 
| 
       17 
18 
     | 
    
         
             
            require 'terminal-table'
         
     | 
| 
       18 
     | 
    
         
            -
            require 'celluloid_pubsub'
         
     | 
| 
       19 
19 
     | 
    
         
             
            require 'configliere'
         
     | 
| 
       20 
20 
     | 
    
         
             
            require 'devnull'
         
     | 
| 
       21 
21 
     | 
    
         
             
            require 'inquirer'
         
     | 
| 
         @@ -1,14 +1,13 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require_relative './helpers/base_actor_helper'
         
     | 
| 
       1 
2 
     | 
    
         
             
            module CapistranoMulticonfigParallel
         
     | 
| 
       2 
3 
     | 
    
         
             
              # finds app dependencies, shows menu and delegates jobs to celluloid manager
         
     | 
| 
       3 
4 
     | 
    
         
             
              class Application
         
     | 
| 
       4 
     | 
    
         
            -
                include  
     | 
| 
       5 
     | 
    
         
            -
                include Celluloid::Logger
         
     | 
| 
       6 
     | 
    
         
            -
                include CapistranoMulticonfigParallel::ApplicationHelper
         
     | 
| 
      
 5 
     | 
    
         
            +
                include CapistranoMulticonfigParallel::BaseActorHelper
         
     | 
| 
       7 
6 
     | 
    
         | 
| 
       8 
7 
     | 
    
         
             
                attr_reader :stage_apps, :top_level_tasks, :jobs, :condition, :manager, :dependency_tracker, :application, :stage, :name, :args, :argv, :default_stage
         
     | 
| 
       9 
8 
     | 
    
         | 
| 
       10 
9 
     | 
    
         
             
                def initialize
         
     | 
| 
       11 
     | 
    
         
            -
                  Celluloid.boot
         
     | 
| 
      
 10 
     | 
    
         
            +
                  Celluloid.boot unless Celluloid.running?
         
     | 
| 
       12 
11 
     | 
    
         
             
                  CapistranoMulticonfigParallel.enable_logging
         
     | 
| 
       13 
12 
     | 
    
         
             
                  @stage_apps = multi_apps? ? app_names_from_stages : []
         
     | 
| 
       14 
13 
     | 
    
         
             
                  collect_command_line_tasks(CapistranoMulticonfigParallel.original_args)
         
     | 
| 
         @@ -1,15 +1,11 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            require_relative './celluloid_worker'
         
     | 
| 
       2 
2 
     | 
    
         
             
            require_relative './terminal_table'
         
     | 
| 
       3 
3 
     | 
    
         
             
            require_relative './web_server'
         
     | 
| 
       4 
     | 
    
         
            -
            require_relative '../helpers/ 
     | 
| 
      
 4 
     | 
    
         
            +
            require_relative '../helpers/base_actor_helper'
         
     | 
| 
       5 
5 
     | 
    
         
             
            module CapistranoMulticonfigParallel
         
     | 
| 
       6 
6 
     | 
    
         
             
              # manager class that handles workers
         
     | 
| 
       7 
7 
     | 
    
         
             
              class CelluloidManager
         
     | 
| 
       8 
     | 
    
         
            -
                include  
     | 
| 
       9 
     | 
    
         
            -
                include Celluloid::Notifications
         
     | 
| 
       10 
     | 
    
         
            -
                include Celluloid::Logger
         
     | 
| 
       11 
     | 
    
         
            -
                include CapistranoMulticonfigParallel::ApplicationHelper
         
     | 
| 
       12 
     | 
    
         
            -
             
     | 
| 
      
 8 
     | 
    
         
            +
                include CapistranoMulticonfigParallel::BaseActorHelper
         
     | 
| 
       13 
9 
     | 
    
         
             
                attr_accessor :jobs, :job_to_worker, :worker_to_job, :job_to_condition, :mutex, :registration_complete, :workers_terminated, :stderr_buffer
         
     | 
| 
       14 
10 
     | 
    
         | 
| 
       15 
11 
     | 
    
         
             
                attr_reader :worker_supervisor, :workers
         
     | 
| 
         @@ -20,16 +16,16 @@ module CapistranoMulticonfigParallel 
     | 
|
| 
       20 
16 
     | 
    
         
             
                  @registration_complete = false
         
     | 
| 
       21 
17 
     | 
    
         
             
                  return if configuration.multi_secvential.to_s.downcase == 'true'
         
     | 
| 
       22 
18 
     | 
    
         
             
                  # start SupervisionGroup
         
     | 
| 
       23 
     | 
    
         
            -
                  @worker_supervisor =  
     | 
| 
      
 19 
     | 
    
         
            +
                  @worker_supervisor = setup_supervision_group
         
     | 
| 
       24 
20 
     | 
    
         | 
| 
       25 
21 
     | 
    
         
             
                  # Get a handle on the SupervisionGroup::Member
         
     | 
| 
       26 
22 
     | 
    
         
             
                  @mutex = Mutex.new
         
     | 
| 
       27 
23 
     | 
    
         
             
                  # http://rubydoc.info/gems/celluloid/Celluloid/SupervisionGroup/Member
         
     | 
| 
       28 
     | 
    
         
            -
                  @workers = @worker_supervisor 
     | 
| 
      
 24 
     | 
    
         
            +
                  @workers = setup_pool_of_actor(@worker_supervisor, actor_name: :workers, type: CapistranoMulticonfigParallel::CelluloidWorker, size: 10)
         
     | 
| 
       29 
25 
     | 
    
         
             
                  Actor.current.link @workers
         
     | 
| 
       30 
     | 
    
         
            -
                  @worker_supervisor 
     | 
| 
       31 
     | 
    
         
            -
                  @worker_supervisor 
     | 
| 
       32 
     | 
    
         
            -
             
     | 
| 
      
 26 
     | 
    
         
            +
                  setup_actor_supervision(@worker_supervisor, actor_name: :terminal_server, type: CapistranoMulticonfigParallel::TerminalTable, args: [Actor.current, @job_manager, configuration.fetch(:terminal, {})])
         
     | 
| 
      
 27 
     | 
    
         
            +
                  setup_actor_supervision(@worker_supervisor, actor_name: :web_server, type: CapistranoMulticonfigParallel::WebServer, args: websocket_config)
         
     | 
| 
      
 28 
     | 
    
         
            +
                  
         
     | 
| 
       33 
29 
     | 
    
         
             
                  # Get a handle on the PoolManager
         
     | 
| 
       34 
30 
     | 
    
         
             
                  # http://rubydoc.info/gems/celluloid/Celluloid/PoolManager
         
     | 
| 
       35 
31 
     | 
    
         
             
                  # @workers = workers_pool.actor
         
     | 
| 
         @@ -1,6 +1,6 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            require_relative './child_process'
         
     | 
| 
       2 
2 
     | 
    
         
             
            require_relative './state_machine'
         
     | 
| 
       3 
     | 
    
         
            -
            require_relative '../helpers/ 
     | 
| 
      
 3 
     | 
    
         
            +
            require_relative '../helpers/base_actor_helper'
         
     | 
| 
       4 
4 
     | 
    
         
             
            module CapistranoMulticonfigParallel
         
     | 
| 
       5 
5 
     | 
    
         
             
              # worker that will spawn a child process in order to execute a capistrano job and monitor that process
         
     | 
| 
       6 
6 
     | 
    
         
             
              #
         
     | 
| 
         @@ -17,10 +17,7 @@ module CapistranoMulticonfigParallel 
     | 
|
| 
       17 
17 
     | 
    
         
             
              #   @return [CapistranoMulticonfigParallel::CelluloidManager] the instance of the manager that delegated the job to this worker
         
     | 
| 
       18 
18 
     | 
    
         
             
              #
         
     | 
| 
       19 
19 
     | 
    
         
             
              class CelluloidWorker
         
     | 
| 
       20 
     | 
    
         
            -
                include  
     | 
| 
       21 
     | 
    
         
            -
                include Celluloid::Notifications
         
     | 
| 
       22 
     | 
    
         
            -
                include Celluloid::Logger
         
     | 
| 
       23 
     | 
    
         
            -
                include CapistranoMulticonfigParallel::ApplicationHelper
         
     | 
| 
      
 20 
     | 
    
         
            +
                include CapistranoMulticonfigParallel::BaseActorHelper
         
     | 
| 
       24 
21 
     | 
    
         
             
                class TaskFailed < StandardError; end
         
     | 
| 
       25 
22 
     | 
    
         | 
| 
       26 
23 
     | 
    
         
             
                attr_accessor :job, :manager, :job_id, :app_name, :env_name, :action_name, :env_options, :machine, :client, :task_argv,
         
     | 
| 
         @@ -1,11 +1,8 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            require_relative '../helpers/ 
     | 
| 
       2 
     | 
    
         
            -
            require_relative '../helpers/core_helper'
         
     | 
| 
      
 1 
     | 
    
         
            +
            require_relative '../helpers/base_actor_helper'
         
     | 
| 
       3 
2 
     | 
    
         
             
            module CapistranoMulticonfigParallel
         
     | 
| 
       4 
3 
     | 
    
         
             
              # class that is used to execute the capistrano tasks and it is invoked by the celluloid worker
         
     | 
| 
       5 
4 
     | 
    
         
             
              class ChildProcess
         
     | 
| 
       6 
     | 
    
         
            -
                include  
     | 
| 
       7 
     | 
    
         
            -
                include Celluloid::Logger
         
     | 
| 
       8 
     | 
    
         
            -
                include CapistranoMulticonfigParallel::ApplicationHelper
         
     | 
| 
      
 5 
     | 
    
         
            +
                include CapistranoMulticonfigParallel::BaseActorHelper
         
     | 
| 
       9 
6 
     | 
    
         | 
| 
       10 
7 
     | 
    
         
             
                attr_accessor :options, :job, :actor, :job_id, :exit_status, :pid, :process
         
     | 
| 
       11 
8 
     | 
    
         | 
| 
         @@ -1,10 +1,8 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            require_relative '../helpers/ 
     | 
| 
      
 1 
     | 
    
         
            +
            require_relative '../helpers/base_actor_helper'
         
     | 
| 
       2 
2 
     | 
    
         
             
            module CapistranoMulticonfigParallel
         
     | 
| 
       3 
3 
     | 
    
         
             
              # class that handles the rake task and waits for approval from the celluloid worker
         
     | 
| 
       4 
4 
     | 
    
         
             
              class RakeWorker
         
     | 
| 
       5 
     | 
    
         
            -
                include  
     | 
| 
       6 
     | 
    
         
            -
                include Celluloid::Logger
         
     | 
| 
       7 
     | 
    
         
            -
                include CapistranoMulticonfigParallel::ApplicationHelper
         
     | 
| 
      
 5 
     | 
    
         
            +
                include CapistranoMulticonfigParallel::BaseActorHelper
         
     | 
| 
       8 
6 
     | 
    
         | 
| 
       9 
7 
     | 
    
         
             
                attr_reader :client, :job_id, :action, :task,
         
     | 
| 
       10 
8 
     | 
    
         
             
                            :task_approved, :successfull_subscription,
         
     | 
| 
         @@ -1,12 +1,9 @@ 
     | 
|
| 
       1 
1 
     | 
    
         | 
| 
       2 
     | 
    
         
            -
            require_relative '../helpers/ 
     | 
| 
      
 2 
     | 
    
         
            +
            require_relative '../helpers/base_actor_helper'
         
     | 
| 
       3 
3 
     | 
    
         
             
            module CapistranoMulticonfigParallel
         
     | 
| 
       4 
4 
     | 
    
         
             
              # class used to display the progress of each worker on terminal screen using a table
         
     | 
| 
       5 
5 
     | 
    
         
             
              class TerminalTable
         
     | 
| 
       6 
     | 
    
         
            -
             
     | 
| 
       7 
     | 
    
         
            -
                include Celluloid::Notifications
         
     | 
| 
       8 
     | 
    
         
            -
                include Celluloid::Logger
         
     | 
| 
       9 
     | 
    
         
            -
                include CapistranoMulticonfigParallel::ApplicationHelper
         
     | 
| 
      
 6 
     | 
    
         
            +
              include CapistranoMulticonfigParallel::BaseActorHelper
         
     | 
| 
       10 
7 
     | 
    
         | 
| 
       11 
8 
     | 
    
         
             
                attr_reader :options, :errors, :manager, :position, :job_manager, :terminal_rows, :screen_erased
         
     | 
| 
       12 
9 
     | 
    
         | 
| 
         @@ -0,0 +1,84 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            require_relative '../helpers/application_helper'
         
     | 
| 
      
 2 
     | 
    
         
            +
            module CapistranoMulticonfigParallel
         
     | 
| 
      
 3 
     | 
    
         
            +
              # base actor used for compatibility between celluloid versions
         
     | 
| 
      
 4 
     | 
    
         
            +
              module BaseActorHelper
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
                module ClassMethods
         
     | 
| 
      
 7 
     | 
    
         
            +
                  class << self
         
     | 
| 
      
 8 
     | 
    
         
            +
                    include CapistranoMulticonfigParallel::ApplicationHelper
         
     | 
| 
      
 9 
     | 
    
         
            +
                    attr_reader :config
         
     | 
| 
      
 10 
     | 
    
         
            +
             
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
                    def config
         
     | 
| 
      
 13 
     | 
    
         
            +
                      {
         
     | 
| 
      
 14 
     | 
    
         
            +
                        'logger_class' => celluloid_logger_class
         
     | 
| 
      
 15 
     | 
    
         
            +
                      }
         
     | 
| 
      
 16 
     | 
    
         
            +
                    end
         
     | 
| 
      
 17 
     | 
    
         
            +
             
     | 
| 
      
 18 
     | 
    
         
            +
                    def celluloid_logger_class
         
     | 
| 
      
 19 
     | 
    
         
            +
                      if version_less_than_seventeen?
         
     | 
| 
      
 20 
     | 
    
         
            +
                        Celluloid::Logger
         
     | 
| 
      
 21 
     | 
    
         
            +
                      else
         
     | 
| 
      
 22 
     | 
    
         
            +
                        Celluloid::Internals::Logger
         
     | 
| 
      
 23 
     | 
    
         
            +
                      end
         
     | 
| 
      
 24 
     | 
    
         
            +
                    end
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
                    def celluloid_version
         
     | 
| 
      
 27 
     | 
    
         
            +
                      find_loaded_gem_property('celluloid', 'version')
         
     | 
| 
      
 28 
     | 
    
         
            +
                    end
         
     | 
| 
      
 29 
     | 
    
         
            +
             
     | 
| 
      
 30 
     | 
    
         
            +
                    def version_less_than_seventeen?
         
     | 
| 
      
 31 
     | 
    
         
            +
                      verify_gem_version('celluloid', '0.17', operator: '<')
         
     | 
| 
      
 32 
     | 
    
         
            +
                    end
         
     | 
| 
      
 33 
     | 
    
         
            +
                  end
         
     | 
| 
      
 34 
     | 
    
         
            +
                end
         
     | 
| 
      
 35 
     | 
    
         
            +
             
     | 
| 
      
 36 
     | 
    
         
            +
                module InstanceMethods
         
     | 
| 
      
 37 
     | 
    
         
            +
                  delegate :version_less_than_seventeen?,
         
     | 
| 
      
 38 
     | 
    
         
            +
                  to: :'CapistranoMulticonfigParallel::BaseActorHelper::ClassMethods'
         
     | 
| 
      
 39 
     | 
    
         
            +
             
     | 
| 
      
 40 
     | 
    
         
            +
                  def setup_actor_supervision(class_name, options)
         
     | 
| 
      
 41 
     | 
    
         
            +
                    arguments = options[:args].is_a?(Array) ? options[:args] : [options[:args]]
         
     | 
| 
      
 42 
     | 
    
         
            +
                    if version_less_than_seventeen?
         
     | 
| 
      
 43 
     | 
    
         
            +
                      class_name.supervise_as(options[:actor_name], options[:type], *arguments)
         
     | 
| 
      
 44 
     | 
    
         
            +
                    else
         
     | 
| 
      
 45 
     | 
    
         
            +
                      #supervises_opts = options[:supervises].present? ? { supervises: options[:supervises] } : {}
         
     | 
| 
      
 46 
     | 
    
         
            +
                      default_opts = options[:actor_name].present? ? { as: options[:actor_name], type: options[:type], args: arguments, size: options.fetch(:size, nil) } : {}
         
     | 
| 
      
 47 
     | 
    
         
            +
                      class_name.supervise(default_opts)
         
     | 
| 
      
 48 
     | 
    
         
            +
                    end
         
     | 
| 
      
 49 
     | 
    
         
            +
                  end
         
     | 
| 
      
 50 
     | 
    
         
            +
             
     | 
| 
      
 51 
     | 
    
         
            +
                  def setup_supervision_group
         
     | 
| 
      
 52 
     | 
    
         
            +
                    if version_less_than_seventeen?
         
     | 
| 
      
 53 
     | 
    
         
            +
                      Celluloid::SupervisionGroup.run!
         
     | 
| 
      
 54 
     | 
    
         
            +
                    else
         
     | 
| 
      
 55 
     | 
    
         
            +
                      Celluloid::Supervision::Container.run!
         
     | 
| 
      
 56 
     | 
    
         
            +
                    end
         
     | 
| 
      
 57 
     | 
    
         
            +
                  end
         
     | 
| 
      
 58 
     | 
    
         
            +
             
     | 
| 
      
 59 
     | 
    
         
            +
                  def setup_pool_of_actor(class_name, options)
         
     | 
| 
      
 60 
     | 
    
         
            +
                    if version_less_than_seventeen?
         
     | 
| 
      
 61 
     | 
    
         
            +
                      class_name.pool(options[:type], as: options[:actor_name], size:  options.fetch(:size, 10))
         
     | 
| 
      
 62 
     | 
    
         
            +
                    else
         
     | 
| 
      
 63 
     | 
    
         
            +
                      setup_actor_supervision(class_name, options)
         
     | 
| 
      
 64 
     | 
    
         
            +
                    end
         
     | 
| 
      
 65 
     | 
    
         
            +
                  end
         
     | 
| 
      
 66 
     | 
    
         
            +
                end
         
     | 
| 
      
 67 
     | 
    
         
            +
             
     | 
| 
      
 68 
     | 
    
         
            +
             
     | 
| 
      
 69 
     | 
    
         
            +
                def self.included(base)
         
     | 
| 
      
 70 
     | 
    
         
            +
                  base.include Celluloid
         
     | 
| 
      
 71 
     | 
    
         
            +
                  base.include Celluloid::Notifications
         
     | 
| 
      
 72 
     | 
    
         
            +
                  base.include CapistranoMulticonfigParallel::ApplicationHelper
         
     | 
| 
      
 73 
     | 
    
         
            +
                  base.include CapistranoMulticonfigParallel::BaseActorHelper::ClassMethods.config['logger_class']
         
     | 
| 
      
 74 
     | 
    
         
            +
                  base.include CapistranoMulticonfigParallel::BaseActorHelper::InstanceMethods
         
     | 
| 
      
 75 
     | 
    
         
            +
                end
         
     | 
| 
      
 76 
     | 
    
         
            +
             
     | 
| 
      
 77 
     | 
    
         
            +
              end
         
     | 
| 
      
 78 
     | 
    
         
            +
            end
         
     | 
| 
      
 79 
     | 
    
         
            +
             
     | 
| 
      
 80 
     | 
    
         
            +
            if CapistranoMulticonfigParallel::BaseActorHelper::ClassMethods.version_less_than_seventeen?
         
     | 
| 
      
 81 
     | 
    
         
            +
              require 'celluloid/autostart'
         
     | 
| 
      
 82 
     | 
    
         
            +
            else
         
     | 
| 
      
 83 
     | 
    
         
            +
              require 'celluloid/current'
         
     | 
| 
      
 84 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -20,10 +20,16 @@ module CapistranoMulticonfigParallel 
     | 
|
| 
       20 
20 
     | 
    
         
             
                def get_parsed_version(version)
         
     | 
| 
       21 
21 
     | 
    
         
             
                  return 0 if version.blank?
         
     | 
| 
       22 
22 
     | 
    
         
             
                  version = version.to_s.split('.')
         
     | 
| 
       23 
     | 
    
         
            -
                  version 
     | 
| 
      
 23 
     | 
    
         
            +
                  version = format_gem_version(version)
         
     | 
| 
       24 
24 
     | 
    
         
             
                  version.join('.').to_f
         
     | 
| 
       25 
25 
     | 
    
         
             
                end
         
     | 
| 
       26 
26 
     | 
    
         | 
| 
      
 27 
     | 
    
         
            +
                def format_gem_version(version)
         
     | 
| 
      
 28 
     | 
    
         
            +
                  return version if version.size <= 2
         
     | 
| 
      
 29 
     | 
    
         
            +
                  version.pop until version.size == 2
         
     | 
| 
      
 30 
     | 
    
         
            +
                  version
         
     | 
| 
      
 31 
     | 
    
         
            +
                end
         
     | 
| 
      
 32 
     | 
    
         
            +
             
     | 
| 
       27 
33 
     | 
    
         
             
                def verify_gem_version(gem_version, version, options = {})
         
     | 
| 
       28 
34 
     | 
    
         
             
                  options.stringify_keys!
         
     | 
| 
       29 
35 
     | 
    
         
             
                  version = get_parsed_version(version)
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: capistrano_multiconfig_parallel
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 1. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.2.0
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - bogdanRada
         
     | 
| 
         @@ -10,6 +10,26 @@ bindir: bin 
     | 
|
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
11 
     | 
    
         
             
            date: 2016-03-02 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
      
 13 
     | 
    
         
            +
            - !ruby/object:Gem::Dependency
         
     | 
| 
      
 14 
     | 
    
         
            +
              name: celluloid
         
     | 
| 
      
 15 
     | 
    
         
            +
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
      
 16 
     | 
    
         
            +
                requirements:
         
     | 
| 
      
 17 
     | 
    
         
            +
                - - ">="
         
     | 
| 
      
 18 
     | 
    
         
            +
                  - !ruby/object:Gem::Version
         
     | 
| 
      
 19 
     | 
    
         
            +
                    version: '0.16'
         
     | 
| 
      
 20 
     | 
    
         
            +
                - - ">="
         
     | 
| 
      
 21 
     | 
    
         
            +
                  - !ruby/object:Gem::Version
         
     | 
| 
      
 22 
     | 
    
         
            +
                    version: 0.16.0
         
     | 
| 
      
 23 
     | 
    
         
            +
              type: :runtime
         
     | 
| 
      
 24 
     | 
    
         
            +
              prerelease: false
         
     | 
| 
      
 25 
     | 
    
         
            +
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
      
 26 
     | 
    
         
            +
                requirements:
         
     | 
| 
      
 27 
     | 
    
         
            +
                - - ">="
         
     | 
| 
      
 28 
     | 
    
         
            +
                  - !ruby/object:Gem::Version
         
     | 
| 
      
 29 
     | 
    
         
            +
                    version: '0.16'
         
     | 
| 
      
 30 
     | 
    
         
            +
                - - ">="
         
     | 
| 
      
 31 
     | 
    
         
            +
                  - !ruby/object:Gem::Version
         
     | 
| 
      
 32 
     | 
    
         
            +
                    version: 0.16.0
         
     | 
| 
       13 
33 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
34 
     | 
    
         
             
              name: celluloid-pmap
         
     | 
| 
       15 
35 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
         @@ -527,6 +547,7 @@ files: 
     | 
|
| 
       527 
547 
     | 
    
         
             
            - lib/capistrano_multiconfig_parallel/cli.rb
         
     | 
| 
       528 
548 
     | 
    
         
             
            - lib/capistrano_multiconfig_parallel/configuration/default.yml
         
     | 
| 
       529 
549 
     | 
    
         
             
            - lib/capistrano_multiconfig_parallel/helpers/application_helper.rb
         
     | 
| 
      
 550 
     | 
    
         
            +
            - lib/capistrano_multiconfig_parallel/helpers/base_actor_helper.rb
         
     | 
| 
       530 
551 
     | 
    
         
             
            - lib/capistrano_multiconfig_parallel/helpers/capistrano_helper.rb
         
     | 
| 
       531 
552 
     | 
    
         
             
            - lib/capistrano_multiconfig_parallel/helpers/configuration.rb
         
     | 
| 
       532 
553 
     | 
    
         
             
            - lib/capistrano_multiconfig_parallel/helpers/core_helper.rb
         
     |