Class: CapistranoMulticonfigParallel::RakeTaskHooks

Inherits:
Object
  • Object
show all
Includes:
ApplicationHelper
Defined in:
lib/capistrano_multiconfig_parallel/classes/rake_task_hooks.rb

Overview

class used to handle the rake worker and sets all the hooks before and after running the worker

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from ApplicationHelper

action_confirmed?, fetch_parsed_string, fetch_remaining_arguments, find_remaining_args, get_question_details, msg_for_stdin?, msg_for_task?, parse_task_string, percent_of, regex_last_match, setup_command_line_standard, wrap_string

Methods included from CapistranoHelper

env_key_format, env_prefix, filtered_env_keys_format, trace_flag

Methods included from GemHelper

fetch_gem_version, find_loaded_gem, find_loaded_gem_property, get_parsed_version, verify_gem_version

Methods included from StagesHelper

check_stage_path, checks_paths, fetch_stages_paths, sorted_paths, stages, stages_paths

Methods included from ParseHelper

check_hash_set, check_numeric, strip_characters_from_string, value_is_array?, verify_array_of_strings, verify_empty_options, warn_array_without_strings

Methods included from CoreHelper

app_debug_enabled?, ask_confirm, ask_stdout_confirmation, check_terminal_tty, debug_websocket?, error_filtered?, execute_with_rescue, find_worker_log, force_confirmation, format_error, log_error, log_output_error, log_to_file, multi_fetch_argv, print_to_log_file, rescue_error, rescue_interrupt, setup_filename_logger, setup_logger_formatter, show_warning, terminal_actor, terminal_errors?, websocket_config, websocket_server_config

Methods included from InternalHelper

arg_is_in_default_config?, check_file, config_file, create_log_file, custom_commands, default_config_keys, default_internal_config, default_internal_configuration_params, detect_root, enable_main_log_file, fail_capfile_not_found, fetch_default_internal_config, find_config_type, find_env_multi_cap_root, find_file_in_directory, internal_config_directory, internal_config_file, log_directory, main_log_file, multi_level_prop, pathname_is_root?, pwd_directory, pwd_parent_dir, root, setup_default_configuration_types, sliced_default_config, try_detect_capfile

Constructor Details

#initialize(env, task, config = nil) ⇒ RakeTaskHooks

Returns a new instance of RakeTaskHooks.



10
11
12
13
14
# File 'lib/capistrano_multiconfig_parallel/classes/rake_task_hooks.rb', line 10

def initialize(env, task, config = nil)
  @env = env
  @task = task.respond_to?(:fully_qualified_name) ? task.fully_qualified_name : task
  @config = config
end

Instance Attribute Details

#configObject

Returns the value of attribute config.



9
10
11
# File 'lib/capistrano_multiconfig_parallel/classes/rake_task_hooks.rb', line 9

def config
  @config
end

#envObject

Returns the value of attribute env.



9
10
11
# File 'lib/capistrano_multiconfig_parallel/classes/rake_task_hooks.rb', line 9

def env
  @env
end

#taskObject

Returns the value of attribute task.



9
10
11
# File 'lib/capistrano_multiconfig_parallel/classes/rake_task_hooks.rb', line 9

def task
  @task
end

Instance Method Details

#actorObject



26
27
28
# File 'lib/capistrano_multiconfig_parallel/classes/rake_task_hooks.rb', line 26

def actor
  Celluloid::Actor[rake_actor_id]
end

#automatic_hooks(&block) ⇒ Object



16
17
18
19
20
21
22
23
24
# File 'lib/capistrano_multiconfig_parallel/classes/rake_task_hooks.rb', line 16

def automatic_hooks(&block)
  if configuration.multi_secvential.to_s.downcase == 'false' && job_id.present? && @task.present?
    actor_start_working
    actor.wait_execution until actor.task_approved
    actor_execute_block(&block)
  else
    block.call
  end
end