Class: MintPress::OracleWeblogic::StartUpControl

Inherits:
Object
  • Object
show all
Includes:
MintLogger, Mixins::Properties, Utils
Defined in:
src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb

Overview

These properties control the startup/shutdown of weblogic. This resource is generally used as child properties of the domain, rather than directly, however it is allowed to define it directly and attach it to a domain if desired. They are called via the start_all/stop_all/restart_all functions in the weblogic domain controller, and allow for a controller parallel or serial start/stop/restart. As a general rule, they are used as static subproperties of the domain resource, rather than used directly. Note that they will, out of the box, only work on items defined in your model - however, if you set the property `harvest_on_access` on your domain to true, then this will instead be read from the domain on first access.

Since:

  • 0.1.0

Properties (Read/Write)

  • #include_pattern ⇒ Array of ⇒ String (Default Value: ['*'])
    Which servers to include - default is all servers

    Property Attributes
    • default['*']
    
    
    40
    # File 'src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb', line 40
    
    property :include_pattern, type: String, default: ['*'], array: true
  • #server_order ⇒ Array of ⇒ String (Default Value: ['/^[a-zA-Z_.]*1[a-zA-Z_.]*$/','*'])
    The order to start servers in - note that we start servers ending in 1 _first_, and only then do we start other servers - this solves a bunch of weird FMW problems. You can override this behaviour by changing this to '*'

    Property Attributes
    • default['/^[a-zA-Z_.]*1[a-zA-Z_.]*$/','*']
    
    
    44
    # File 'src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb', line 44
    
    property :server_order, type: String, default: ['/^[a-zA-Z_.]*1[a-zA-Z_.]*$/','*'], array: true
  • #exclude_pattern ⇒ Array of ⇒ String (Default Value: [])
    Which servers to exclude - default is to exclude no servers. Note that exclude takes precidence over include.

    Property Attributes
    • default[]
    
    
    46
    # File 'src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb', line 46
    
    property :exclude_pattern, type: String, default: [], array: true
  • #cluster_order ⇒ Array of ⇒ String (Default Value: ['*'])
    Order to prioritize cluster startup - by default, this will start all clusters in parallel Note that only clusters contained within this will be started, meaning that if you don't include '*' as one of the entries, then some clusters may not be started.

    Property Attributes
    • default['*']
    
    
    51
    # File 'src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb', line 51
    
    property :cluster_order, type: String, default:['*'], array: true
  • #entire_cluster_only ⇒ [TrueClass, FalseClass] (Default Value: true)
    Do we wait for an entire cluster to finish its action before moving to the next? If this is set to true (which is the default), then if you ask it to start soa_cluster before osb_cluster, it will wait for _all_ servers in soa_cluster to be running before launching a start action on any servers in osb_clusters. If it's false, it'll only require a single server to be in the running state, and will instead launch osb servers even though some soa servers are still in the starting state.

    Property Attributes
    • defaulttrue
    
    
    56
    # File 'src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb', line 56
    
    property :entire_cluster_only, type: [TrueClass, FalseClass], default: true
  • #cluster_include_pattern ⇒ Array of ⇒ String (Default Value: [])
    Which clusters to include in startup - the default is all clusters

    Property Attributes
    • default[]
    
    
    58
    # File 'src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb', line 58
    
    property :cluster_include_pattern, type: String, default: [], array: true
  • #cluster_exclude_pattern ⇒ Array of ⇒ String (Default Value: [])
    Which clusters to exclude from startup - default is to include all clusters

    Property Attributes
    • default[]
    
    
    60
    # File 'src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb', line 60
    
    property :cluster_exclude_pattern, type: String, default: [], array: true
  • #parallel_tasks ⇒ Integer (Default Value: 16)
    The maximum number of servers to start in parallel

    Property Attributes
    • default16
    
    
    62
    # File 'src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb', line 62
    
    property :parallel_tasks, type: Integer, default: 16
  • #including_instances ⇒ [TrueClass, FalseClass] (Default Value: true)
    Should we perform actions on instances? Default is yes

    Property Attributes
    • defaulttrue
    
    
    65
    # File 'src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb', line 65
    
    property :including_instances, type: [TrueClass, FalseClass], default: true
  • #including_system_components ⇒ [TrueClass, FalseClass] (Default Value: true)
    Should we perform actions on system components? Default is yes

    Property Attributes
    • defaulttrue
    
    
    67
    # File 'src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb', line 67
    
    property :including_system_components, type: [TrueClass, FalseClass], default: true
  • #including_managed_servers ⇒ [TrueClass, FalseClass] (Default Value: true)
    Should we perform actions on managed servers? Default is yes

    Property Attributes
    • defaulttrue
    
    
    69
    # File 'src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb', line 69
    
    property :including_managed_servers, type: [TrueClass, FalseClass], default: true
  • #timeout ⇒ Integer (Default Value: 3600)
    Timeout for all non-final states

    Property Attributes
    • default3600
    
    
    72
    # File 'src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb', line 72
    
    property :timeout, type: Integer, default: 3600
  • #admin_timeout ⇒ Integer (Default Value: 300)
    A timeout specifically for the ADMIN state, since it is a special state

    Property Attributes
    • default300
    
    
    74
    # File 'src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb', line 74
    
    property :admin_timeout, type: Integer, default: 300
  • #state_timeout ⇒ Hash of ⇒ Integer
    A hash repesenting the timeout for individual states, in the format STATE => timeout

    Property Attributes
    
    
    76
    # File 'src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb', line 76
    
    property :state_timeout, type: Integer, hash: true
  • #fail_states ⇒ Array of ⇒ String (Default Value: ['FAILED','FAILED_NOT_RESTARTABLE'])
    The list of states which are considered failures

    Property Attributes
    • default['FAILED','FAILED_NOT_RESTARTABLE']
    
    
    78
    # File 'src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb', line 78
    
    property :fail_states, type: String, array: true, default: ['FAILED','FAILED_NOT_RESTARTABLE']
  • #sleep_time_while_idle ⇒ Float (Default Value: 4.0)
    When we are waiting for the system, how long should we sleep? This is a tradeoff of CPU usage/API usage vs time - 4s is a reasonable default, but this is tuneable. In particular, if you are NOT running jobs in parallel, the higher this is, the longer your jobs will take because it will take this long to realise that the server is now in the desired state.

    Property Attributes
    • default4.0
    
    
    84
    # File 'src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb', line 84
    
    property :sleep_time_while_idle, type: Float, default: 4.0
  • #fail_state_timeout ⇒ Integer (Default Value: 30)
    A timeout for failed states - this defaults to 30s, but can be reduced to 0s for fast failures. We've observed some applications (specifically, some versious of OBP) will go through a failed state on startup, and then come out of it.

    Property Attributes
    • default30
    
    
    89
    # File 'src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb', line 89
    
    property :fail_state_timeout, type: Integer, default: 30
  • #action_list ⇒ Hash of ⇒ [String,Array]
    The list of actions to perform - this is usually set by the domain controller, however You can use this yourself to perform rolling restarts and such

    Property Attributes
    
    
    93
    # File 'src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb', line 93
    
    property :action_list, type: [String,Array], hash: true
  • #shutdown_uses_force ⇒ [TrueClass, FalseClass]
    Should we force shutdown if the controller type supports it?

    Property Attributes
    
    
    98
    # File 'src/oracle-weblogic/lib/oracle-weblogic/model/startupcontrol.rb', line 98
    
    property :shutdown_uses_force, type: [TrueClass, FalseClass]

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

Methods included from Utils

#activate_list, #already_traversed, #announce_self, #bean_type, #build_activate_list, #clear_property_sheet_cache, #create_generic, #create_mbean_components, #delete, #destroy_generic, #empty_mbean?, #execute_script, #exists?, #fast_ls_all, #fast_ls_folder, #fast_ls_object, #fast_ls_object_map, #find_cluster, #find_runtime_path_in_rest, #find_server, #full_url, #get, #get_all_self_names, #get_identity, #get_local_wlst_session, #get_matching_self_names, #get_property_from_target, #get_property_from_target_rest, #get_property_from_target_wlst, #get_property_from_target_wlst_impl, #get_property_sheet, #get_rest_item, #get_rest_url_for_parent, #get_rest_url_for_self, #get_servers, #get_servers_rest, #get_servers_wlst, #get_wl_home, #globmatch?, #handle_create, #http_delete, #http_get, #http_post, #http_put, included, #invalidate_session, #is_meta_object?, #longclass, #massage_return, #mbean_components, #mbean_exists?, #mbean_lookup, #mbean_properties, #mbean_to_hash, #meta_list?, #my_short_name, #perform_method_generic, #perform_runtime_call_generic_rest, #perform_runtime_method_generic, #post, #raise_http_exception, #remove, #request_headers, #reset_activate_list, #rest_activate_change, #rest_create_generic, #rest_create_mbean_components, #rest_destroy_self, #rest_edit_url, #rest_has_changes, #rest_idempotent_create, #rest_locked, #rest_nonedit_url, #rest_start_change, #rest_undo_change, #runtime_introspection, #shortclass, #start_with_async, #state_with_net_ping, #stop_with_async, #to_nested, #wlst_cd_to, #wlst_create_generic, #wlst_destroy_self, #wlst_find_object, #wlst_find_parent_object, #wlst_generic_mbean_update_all, #wlst_idempotent_create, #wlst_update_mbean

Constructor Details

#initialize(opts = {}) ⇒ MintPress::OracleWeblogic::Server

Since:

  • 0.1.0

Instance Method Details

#apply_actionObject

Since:

  • 0.1.0

#globmatch(glob, item) ⇒ Object

Since:

  • 0.1.0

#merge_in_templatesObject

Since:

  • 0.1.0

#perform_server_is_excluded?(server) ⇒ Boolean

Returns:

  • (Boolean)

Since:

  • 0.1.0

#server_is_excluded?(server) ⇒ Boolean

Returns:

  • (Boolean)

Since:

  • 0.1.0