capistrano_multiconfig_parallel 0.8.2 → 0.8.3
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/lib/capistrano_multiconfig_parallel/celluloid/celluloid_worker.rb +1 -1
- data/lib/capistrano_multiconfig_parallel/celluloid/child_process.rb +12 -9
- data/lib/capistrano_multiconfig_parallel/{helpers → extensions}/extension_helper.rb +4 -1
- data/lib/capistrano_multiconfig_parallel/extensions/rake.rb +1 -1
- data/lib/capistrano_multiconfig_parallel/version.rb +1 -1
- metadata +3 -3
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: b20d2ee84ec2ed3ed429a379cfed127acc0aeb88
         | 
| 4 | 
            +
              data.tar.gz: b18344f2beaadc2e8471ae5a8b974853e912e59b
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 609aba7897211c50b8c2877c677b1a94d24f10c8a829317d4a63ba47162603f139b3a848b1a9cdb806c830871ef35fae423df7bc391317973ca7cf0911c93dee
         | 
| 7 | 
            +
              data.tar.gz: c0c38bf78cf472833d5dc49f704627ce2c04dd9ac29788c1ff2eb65efa9d685dbb752db470ba82e38866d7376460a850bc0c805aa86247fc1bfbb2a62752c048
         | 
| @@ -229,7 +229,7 @@ module CapistranoMulticonfigParallel | |
| 229 229 | 
             
                  return unless @execute_deploy
         | 
| 230 230 | 
             
                  if exit_status.exitstatus != 0
         | 
| 231 231 | 
             
                    debug("worker #{job_id} tries to terminate") if debug_enabled?
         | 
| 232 | 
            -
                    raise(CapistranoMulticonfigParallel::CelluloidWorker::TaskFailed, "task #{ | 
| 232 | 
            +
                    raise(CapistranoMulticonfigParallel::CelluloidWorker::TaskFailed, "task  failed with exit status #{exit_status.inspect} ")  # force worker to rollback
         | 
| 233 233 | 
             
                  else
         | 
| 234 234 | 
             
                    update_machine_state('FINISHED')
         | 
| 235 235 | 
             
                    debug("worker #{job_id} notifies manager has finished") if debug_enabled?
         | 
| @@ -4,13 +4,15 @@ module CapistranoMulticonfigParallel | |
| 4 4 | 
             
                include Celluloid
         | 
| 5 5 | 
             
                include Celluloid::Logger
         | 
| 6 6 |  | 
| 7 | 
            -
                attr_accessor :actor, :pid, :exit_status, :process, :filename, :worker_log
         | 
| 7 | 
            +
                attr_accessor :actor, :pid, :exit_status, :process, :filename, :worker_log, :job_id, :debug_enabled
         | 
| 8 8 |  | 
| 9 9 | 
             
                finalizer :process_finalizer
         | 
| 10 10 |  | 
| 11 11 | 
             
                def work(cmd, options = {})
         | 
| 12 12 | 
             
                  @options = options
         | 
| 13 13 | 
             
                  @actor = @options.fetch(:actor, nil)
         | 
| 14 | 
            +
                  @job_id = @actor.job_id
         | 
| 15 | 
            +
                  @debug_enabled = @actor.debug_enabled?
         | 
| 14 16 | 
             
                  set_worker_log
         | 
| 15 17 | 
             
                  EM.run do
         | 
| 16 18 | 
             
                    EM.next_tick do
         | 
| @@ -21,8 +23,8 @@ module CapistranoMulticonfigParallel | |
| 21 23 | 
             
                    end
         | 
| 22 24 | 
             
                  end
         | 
| 23 25 | 
             
                  EM.error_handler do|e|
         | 
| 24 | 
            -
                     | 
| 25 | 
            -
                     | 
| 26 | 
            +
                    @worker_log.debug "Error during event loop for worker #{@job_id}: #{e.inspect}" if @debug_enabled
         | 
| 27 | 
            +
                    @worker_log.debug e.backtrace if @debug_enabled
         | 
| 26 28 | 
             
                    EM.stop
         | 
| 27 29 | 
             
                  end
         | 
| 28 30 | 
             
                end
         | 
| @@ -47,10 +49,10 @@ module CapistranoMulticonfigParallel | |
| 47 49 | 
             
                def check_exit_status
         | 
| 48 50 | 
             
                  return unless @exit_status.present?
         | 
| 49 51 | 
             
                  if @options[:dry_run]
         | 
| 50 | 
            -
                    debug("worker #{@actor.job_id} starts execute deploy") if @ | 
| 52 | 
            +
                    debug("worker #{@actor.job_id} starts execute deploy") if @debug_enabled
         | 
| 51 53 | 
             
                    @actor.async.execute_deploy
         | 
| 52 54 | 
             
                  elsif !@actor.worker_finshed?
         | 
| 53 | 
            -
                    debug("worker #{@actor.job_id} startsnotify finished") if @ | 
| 55 | 
            +
                    debug("worker #{@actor.job_id} startsnotify finished") if @debug_enabled
         | 
| 54 56 | 
             
                    @actor.notify_finished(@exit_status)
         | 
| 55 57 | 
             
                  end
         | 
| 56 58 | 
             
                end
         | 
| @@ -61,6 +63,7 @@ module CapistranoMulticonfigParallel | |
| 61 63 | 
             
                    target: self,
         | 
| 62 64 | 
             
                    environment: options[:environment].present? ? options[:environment] : nil,
         | 
| 63 65 | 
             
                    pid_handler: :on_pid,
         | 
| 66 | 
            +
                    input: :on_input_stdin ,
         | 
| 64 67 | 
             
                    stdout_handler: :on_read_stdout,
         | 
| 65 68 | 
             
                    stderr_handler: :on_read_stderr,
         | 
| 66 69 | 
             
                    watch_handler: :watch_handler,
         | 
| @@ -85,12 +88,12 @@ module CapistranoMulticonfigParallel | |
| 85 88 | 
             
                end
         | 
| 86 89 |  | 
| 87 90 | 
             
                def on_exit(status)
         | 
| 88 | 
            -
             | 
| 91 | 
            +
                    @worker_log.debug "Child process for worker #{@job_id} on_exit  disconnected due to error #{status.inspect}" if @debug_enabled
         | 
| 89 92 | 
             
                  @exit_status = status
         | 
| 90 93 | 
             
                end
         | 
| 91 94 |  | 
| 92 95 | 
             
                def async_exception_handler(*data)
         | 
| 93 | 
            -
                  debug "Child process for worker #{@ | 
| 96 | 
            +
                  @worker_log.debug "Child process for worker #{@job_id} async_exception_handler  disconnected due to error #{data.inspect}" if @debug_enabled
         | 
| 94 97 | 
             
                  io_callback('stderr', data)
         | 
| 95 98 | 
             
                  @exit_status = 1
         | 
| 96 99 | 
             
                end
         | 
| @@ -98,7 +101,7 @@ module CapistranoMulticonfigParallel | |
| 98 101 | 
             
                def watch_handler(process)
         | 
| 99 102 | 
             
                  @process ||= process
         | 
| 100 103 | 
             
                end
         | 
| 101 | 
            -
             | 
| 104 | 
            +
                
         | 
| 102 105 | 
             
                def get_question_details(data)
         | 
| 103 106 | 
             
                  question = ''
         | 
| 104 107 | 
             
                  default = nil
         | 
| @@ -123,7 +126,7 @@ module CapistranoMulticonfigParallel | |
| 123 126 |  | 
| 124 127 | 
             
                def io_callback(io, data)
         | 
| 125 128 | 
             
                  @worker_log.debug("#{io.upcase} ---- #{data}")
         | 
| 126 | 
            -
             | 
| 129 | 
            +
                 # user_prompt_needed?(data)
         | 
| 127 130 | 
             
                end
         | 
| 128 131 | 
             
              end
         | 
| 129 132 | 
             
            end
         | 
| @@ -1,3 +1,5 @@ | |
| 1 | 
            +
            require 'celluloid/autostart'
         | 
| 2 | 
            +
            require_relative "../celluloid/rake_worker"
         | 
| 1 3 | 
             
            module CapistranoMulticonfigParallel
         | 
| 2 4 | 
             
              class ExtensionHelper
         | 
| 3 5 | 
             
                class << self
         | 
| @@ -8,6 +10,7 @@ module CapistranoMulticonfigParallel | |
| 8 10 | 
             
                  def job_id
         | 
| 9 11 | 
             
                    ENV[CapistranoMulticonfigParallel::ENV_KEY_JOB_ID]
         | 
| 10 12 | 
             
                  end
         | 
| 13 | 
            +
                  
         | 
| 11 14 |  | 
| 12 15 | 
             
                  def rake_actor_id
         | 
| 13 16 | 
             
                    ENV['count_rake'].present? ? "rake_worker_#{job_id}_count" : "rake_worker_#{job_id}"
         | 
| @@ -34,7 +37,7 @@ module CapistranoMulticonfigParallel | |
| 34 37 | 
             
                    until Celluloid::Actor[rake_actor_id].task_approved
         | 
| 35 38 | 
             
                      Celluloid::Actor[rake_actor_id].wait_execution
         | 
| 36 39 | 
             
                    end
         | 
| 37 | 
            -
                    yield if Celluloid::Actor[rake_actor_id].task_approved
         | 
| 40 | 
            +
                    yield Celluloid::Actor[rake_actor_id]  if Celluloid::Actor[rake_actor_id].task_approved
         | 
| 38 41 | 
             
                  end
         | 
| 39 42 | 
             
                end
         | 
| 40 43 | 
             
              end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: capistrano_multiconfig_parallel
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.8. | 
| 4 | 
            +
              version: 0.8.3
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - bogdanRada
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2015-07- | 
| 11 | 
            +
            date: 2015-07-10 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: celluloid-pmap
         | 
| @@ -646,9 +646,9 @@ files: | |
| 646 646 | 
             
            - lib/capistrano_multiconfig_parallel/celluloid/terminal_table.rb
         | 
| 647 647 | 
             
            - lib/capistrano_multiconfig_parallel/cli.rb
         | 
| 648 648 | 
             
            - lib/capistrano_multiconfig_parallel/configuration.rb
         | 
| 649 | 
            +
            - lib/capistrano_multiconfig_parallel/extensions/extension_helper.rb
         | 
| 649 650 | 
             
            - lib/capistrano_multiconfig_parallel/extensions/rake.rb
         | 
| 650 651 | 
             
            - lib/capistrano_multiconfig_parallel/helpers/base_manager.rb
         | 
| 651 | 
            -
            - lib/capistrano_multiconfig_parallel/helpers/extension_helper.rb
         | 
| 652 652 | 
             
            - lib/capistrano_multiconfig_parallel/helpers/multi_app_manager.rb
         | 
| 653 653 | 
             
            - lib/capistrano_multiconfig_parallel/helpers/single_app_manager.rb
         | 
| 654 654 | 
             
            - lib/capistrano_multiconfig_parallel/helpers/standard_deploy.rb
         |