def process
      Chimp.set_failure(false)
      Chimp.set_job_uuid(job_uuid)

      Log.debug "[#{job_uuid}] Processing task"
      # Add to our "processing" counter

      Log.debug "[#{job_uuid}] Trying to get array_info" unless Chimp.failure
      get_array_info unless Chimp.failure

      Log.debug "[#{job_uuid}] Trying to get server_info" unless Chimp.failure
      get_server_info unless Chimp.failure

      Log.debug "[#{job_uuid}] Trying to get template_info" unless Chimp.failure
      get_template_info unless Chimp.failure

      Log.debug "[#{job_uuid}] Trying to get executable_info" unless Chimp.failure
      get_executable_info unless Chimp.failure

      # All elements of task have been processed

      if Chimp.failure

        Log.error '##################################################'
        Log.error '[' + job_uuid + '] API CALL FAILED FOR:'
        Log.error '[' + job_uuid + "] chimp #{@cli_args} "
        Log.error '[' + job_uuid + '] Run manually!'
        Log.error '##################################################'
        return []
      elsif @servers.first.nil? || @executable.nil?
        Log.warn "[#{Chimp.get_job_uuid}] Nothing to do for \"chimp #{@cli_args}\"."
        # decrease our counter
        ChimpDaemon.instance.queue.processing[@group].delete(job_uuid.to_sym)
        ChimpDaemon.instance.proc_counter -= 1
        return []
      else
        Log.debug "[#{Chimp.get_job_uuid}] Generating job(s)..."
        # @servers might be > 1, but we might be using limit_start
        number_of_servers = if @limit_start.to_i > 0 || @limit_end.to_i > 0
                              @limit_end.to_i - @limit_start.to_i
                            else
                              # reminder, we already are accounting for at least 1
                              @servers.size - 1
                            end
        Log.debug 'Increasing processing counter (' + ChimpDaemon.instance.proc_counter.to_s + ') + ' +
                  number_of_servers.to_s + ' for group ' + @group.to_s

        ChimpDaemon.instance.queue.processing[@group][job_uuid.to_sym] += number_of_servers
        ChimpDaemon.instance.proc_counter += number_of_servers

        Log.debug 'Processing counter now (' + ChimpDaemon.instance.proc_counter.to_s + ') for group ' +
                  @group.to_s

        return generate_jobs(@servers, @server_template, @executable)
      end
    end
def process
      Chimp.set_failure(false)
      Chimp.set_job_uuid(job_uuid)

      Log.debug "[#{job_uuid}] Processing task"
      # Add to our "processing" counter

      Log.debug "[#{job_uuid}] Trying to get array_info" unless Chimp.failure
      get_array_info unless Chimp.failure

      Log.debug "[#{job_uuid}] Trying to get server_info" unless Chimp.failure
      get_server_info unless Chimp.failure

      Log.debug "[#{job_uuid}] Trying to get template_info" unless Chimp.failure
      get_template_info unless Chimp.failure

      Log.debug "[#{job_uuid}] Trying to get executable_info" unless Chimp.failure
      get_executable_info unless Chimp.failure

      # All elements of task have been processed

      if Chimp.failure

        Log.error '##################################################'
        Log.error '[' + job_uuid + '] API CALL FAILED FOR:'
        Log.error '[' + job_uuid + "] chimp #{@cli_args} "
        Log.error '[' + job_uuid + '] Run manually!'
        Log.error '##################################################'
        return []
      elsif @servers.first.nil? || @executable.nil?
        Log.warn "[#{Chimp.get_job_uuid}] Nothing to do for \"chimp #{@cli_args}\"."
        # decrease our counter
        ChimpDaemon.instance.queue.processing[@group].delete(job_uuid.to_sym)
        ChimpDaemon.instance.proc_counter -= 1
        return []
      else
        Log.debug "[#{Chimp.get_job_uuid}] Generating job(s)..."
        # @servers might be > 1, but we might be using limit_start
        number_of_servers = if @limit_start.to_i > 0 || @limit_end.to_i > 0
                              @limit_end.to_i - @limit_start.to_i
                            else
                              # reminder, we already are accounting for at least 1
                              @servers.size - 1
                            end
        Log.debug 'Increasing processing counter (' + ChimpDaemon.instance.proc_counter.to_s + ') + ' +
                  number_of_servers.to_s + ' for group ' + @group.to_s

        ChimpDaemon.instance.queue.processing[@group][job_uuid.to_sym] += number_of_servers
        ChimpDaemon.instance.proc_counter += number_of_servers

        Log.debug 'Processing counter now (' + ChimpDaemon.instance.proc_counter.to_s + ') for group ' +
                  @group.to_s

        return generate_jobs(@servers, @server_template, @executable)
      end
    end
Completely process a non-interactive chimp object command
 This is used by chimpd, when processing a task.