Class: MintPress::RuntimeController

Inherits:
Object
  • Object
show all
Includes:
MintLogger, Mixins::Properties
Defined in:
src/mintpress-resources/lib/mintpress-resources/mintpress_runtime_controller.rb

Properties (Read/Write)

  • #steps ⇒ [Array, Hash] (Default Value: [])
    'List of plan names to execute and monitor.'

    Property Attributes
    • default[]
    
    
    25
    # File 'src/mintpress-resources/lib/mintpress-resources/mintpress_runtime_controller.rb', line 25
    
    property :steps, type: [Array, Hash] , default: [] , description: 'List of plan names to execute and monitor.'
  • #non_fatal_steps ⇒ Array (Default Value: [])
    'List of plans that are allowed to fail but will be considered as success.'

    Property Attributes
    • default[]
    
    
    26
    # File 'src/mintpress-resources/lib/mintpress-resources/mintpress_runtime_controller.rb', line 26
    
    property :non_fatal_steps, type: Array , default: [], description: 'List of plans that are allowed to fail but will be considered as success.'
  • #manual_override_steps ⇒ Array (Default Value: [])
    'List of plans that have a manual stage and need to be overriden.'

    Property Attributes
    • default[]
    
    
    27
    # File 'src/mintpress-resources/lib/mintpress-resources/mintpress_runtime_controller.rb', line 27
    
    property :manual_override_steps, type: Array , default: [], description: 'List of plans that have a manual stage and need to be overriden.'
  • #retryable_steps ⇒ Array (Default Value: [])
    'List of plans that should be retried if failed.'

    Property Attributes
    • default[]
    
    
    28
    # File 'src/mintpress-resources/lib/mintpress-resources/mintpress_runtime_controller.rb', line 28
    
    property :retryable_steps, type: Array , default: [], description: 'List of plans that should be retried if failed.'
  • #retrycount ⇒ Integer (Default Value: 5)
    'Number of retries for failed steps.'

    Property Attributes
    • default5
    
    
    29
    # File 'src/mintpress-resources/lib/mintpress-resources/mintpress_runtime_controller.rb', line 29
    
    property :retrycount, type: Integer, default: 5, description: 'Number of retries for failed steps.'
  • #dependency_map ⇒ Hash (Default Value: {})
    'Map of plans dependent on each other.'

    Property Attributes
    • default{}
    
    
    30
    # File 'src/mintpress-resources/lib/mintpress-resources/mintpress_runtime_controller.rb', line 30
    
    property :dependency_map, type: Hash , default: {}, description: 'Map of plans dependent on each other.'
  • #build_json ⇒ [Array, String] (Default Value: [])

    Property Attributes
    • requiredfalse
    • default[]
    
    
    31
    # File 'src/mintpress-resources/lib/mintpress-resources/mintpress_runtime_controller.rb', line 31
    
    property :build_json, type: [Array, String], required: false, default: []
  • #project_list ⇒ Array (Default Value: [])

    Property Attributes
    • requiredfalse
    • default[]
    • coerceproc { |p| p.is_a?(String) ? [p] : p }
    
    
    32
    33
    # File 'src/mintpress-resources/lib/mintpress-resources/mintpress_runtime_controller.rb', line 32
    
    property :project_list, type: Array, required: false, default: [],
    coerce: proc { |p| p.is_a?(String) ? [p] : p }
  • #runtime_url ⇒ String (Default Value: 'http://localhost:8085')

    Property Attributes
    • default'http://localhost:8085'
    
    
    34
    # File 'src/mintpress-resources/lib/mintpress-resources/mintpress_runtime_controller.rb', line 34
    
    property :runtime_url, type: String, default: 'http://localhost:8085'
  • #parallel_builds ⇒ Integer (Default Value: 1)

    Property Attributes
    • default1
    
    
    35
    # File 'src/mintpress-resources/lib/mintpress-resources/mintpress_runtime_controller.rb', line 35
    
    property :parallel_builds, type: Integer, default: 1
  • #username ⇒ String (Default Value: 'mintpress')

    Property Attributes
    • requiredtrue
    • default'mintpress'
    
    
    36
    # File 'src/mintpress-resources/lib/mintpress-resources/mintpress_runtime_controller.rb', line 36
    
    property :username, type: String, required: true, default: 'mintpress'
  • #password ⇒ Mint::Secret

    Property Attributes
    • requiredtrue
    • coerceproc { |s| s.is_a?(String) ? Mint::Secret.new(s) : s }
    
    
    37
    # File 'src/mintpress-resources/lib/mintpress-resources/mintpress_runtime_controller.rb', line 37
    
    property :password, type: Mint::Secret, required: true, coerce: proc { |s| s.is_a?(String) ? Mint::Secret.new(s) : s }
  • #project_identifier ⇒ String (Default Value: nil)
    'Project key when not importing projects from JSON file.'

    Property Attributes
    • defaultnil
    
    
    38
    # File 'src/mintpress-resources/lib/mintpress-resources/mintpress_runtime_controller.rb', line 38
    
    property :project_identifier, type: String, default: nil, description: 'Project key when not importing projects from JSON file.'
  • #simulate_run ⇒ [TrueClass, FalseClass] (Default Value: false)
    'Enabling this will not build anything but will just print what it is trying to build'

    Property Attributes
    • defaultfalse
    
    
    39
    # File 'src/mintpress-resources/lib/mintpress-resources/mintpress_runtime_controller.rb', line 39
    
    property :simulate_run, type: [TrueClass, FalseClass], default: false, description: 'Enabling this will not build anything but will just print what it is trying to build'
  • #custom_variables ⇒ [Hash] (Default Value: nil)
    'Hash of variables that will be passed on to the plan.'

    Property Attributes
    • defaultnil
    
    
    41
    # File 'src/mintpress-resources/lib/mintpress-resources/mintpress_runtime_controller.rb', line 41
    
    property :custom_variables, type: [Hash], default: nil, description: 'Hash of variables that will be passed on to the plan.'

Properties (Read Only)

Constant Summary

Constants included from MintLogger

MintLogger::DEBUG, MintLogger::ERROR, MintLogger::FATAL, MintLogger::INFO, MintLogger::UNKNOWN, MintLogger::VERBOSE, MintLogger::WARN

Instance Attribute Summary

Attributes included from Mixins::Properties

#autopush_set_cache, #dynamic_create, #harvest_on_access, #harvest_undefined_only, #harvested, #tree_root

Instance Method Summary collapse

Methods included from Mixins::Properties

#[], #[]=, #add_validate_report_result, #armour_set_property, #array_contains?, #array_is_a?, #check_autopush, #check_stack_overflow, #clone_property_object, #cloner_handle_single_property, #coerce_single, #contains_as_string?, #display_validate_report_result, #double_initialize?, #dump_to_hash, #find_parent, #find_parent_by_identity, #generate_accessor_functions, #get_canonical_renamed, #get_from_opts, #get_my_name, #get_property, #get_property_item, #has?, included, #initialize_validate_report, #inspect, #is_cloned_object?, #is_mintpress_object?, #is_probably_canonical?, #is_set?, #local_debug, #local_info, #local_verbose, #mintpress_property_definitions, #place_object_by_identity, #process_properties, #prop_set?, #property, #property_definitions, #property_details, #property_is_simple_object?, #push_root!, #require_property, #require_update, #retrieve_docstring, #sanitize, #set_map_dirty, #set_property, #set_property_item, #show_short_array, #strip_defaults!, #synchronize, #uncloned_property_definitions, #update_map, #validate, #validate_generic, #validate_properties, #validate_property, #validate_required, #version_allowed?, #weakref

Methods included from MintLogger::Utils::Common

#boolean_val, #has_value?, #no_value?, #nvl, #path_as_symbol, #ruby_level_to_send

Constructor Details

#initialize(opts = {}) ⇒ RuntimeController

Returns a new instance of RuntimeController.

Instance Method Details

#build_project(project_list = []) ⇒ Object

#convert_to_key(val) ⇒ Object

#execute_build_plan(plan_key) ⇒ Object

#get_build_number(plan_key) ⇒ Object

#get_build_plan_key(project_key, plan_name) ⇒ Object

#import_projectObject

#import_projectsObject

#is_build_building?(plan_key) ⇒ Boolean

Returns:

  • (Boolean)

#is_build_failed?(plan_key) ⇒ Boolean

Returns:

  • (Boolean)

#is_build_successful?(plan_key) ⇒ Boolean

Returns:

  • (Boolean)

#is_mintpress_available?Boolean

Returns:

  • (Boolean)

#project_exists?(project_key = nil) ⇒ Boolean

Returns:

  • (Boolean)

#ready_for_build?(x, itemlist, deps) ⇒ Boolean

Returns:

  • (Boolean)

#trigger_build_plan(plan_key, failCount = 0) ⇒ Object

In conjunction with the fix made for 'MINTSD-636' Introduced 'failCount' argument to prevent repeated duplicate logging of 'Launching Runtime build plan'

#upload_project(json_data, retry_count: 0) ⇒ Object