Class: BrpmAuto
- Inherits:
-
Object
- Object
- BrpmAuto
- Defined in:
- lib/brpm_auto.rb
Class Attribute Summary collapse
-
.all_params ⇒ Object
readonly
Returns the value of attribute all_params.
-
.brpm_version ⇒ Object
readonly
Returns the value of attribute brpm_version.
-
.config ⇒ Object
readonly
Returns the value of attribute config.
-
.framework_root_path ⇒ Object
readonly
Returns the value of attribute framework_root_path.
-
.integration_settings ⇒ Object
readonly
Returns the value of attribute integration_settings.
-
.logger ⇒ Object
readonly
Returns the value of attribute logger.
-
.params ⇒ Object
readonly
Returns the value of attribute params.
-
.request_params ⇒ Object
readonly
Returns the value of attribute request_params.
-
.version ⇒ Object
readonly
Returns the value of attribute version.
Class Method Summary collapse
- .brpm_installed? ⇒ Boolean
- .get_request_params_for_request(automation_results_dir, application, request_id) ⇒ Object
- .init ⇒ Object
- .initialize_integration_settings(dns, username, password, details) ⇒ Object
- .initialize_logger(log_file, also_log_to_console = false) ⇒ Object
- .initialize_request_params(path) ⇒ Object
- .load_customer_include_file ⇒ Object
- .load_server_params ⇒ Object
- .log(message) ⇒ Object
- .log_error(message) ⇒ Object
- .message_box(message, m_type = "sep") ⇒ Object
- .require_module(module_name) ⇒ Object
- .run_from_brpm ⇒ Object
- .setup(params = {}) ⇒ Object
Class Attribute Details
.all_params ⇒ Object (readonly)
Returns the value of attribute all_params.
26 27 28 |
# File 'lib/brpm_auto.rb', line 26 def all_params @all_params end |
.brpm_version ⇒ Object (readonly)
Returns the value of attribute brpm_version.
22 23 24 |
# File 'lib/brpm_auto.rb', line 22 def brpm_version @brpm_version end |
.config ⇒ Object (readonly)
Returns the value of attribute config.
20 21 22 |
# File 'lib/brpm_auto.rb', line 20 def config @config end |
.framework_root_path ⇒ Object (readonly)
Returns the value of attribute framework_root_path.
29 30 31 |
# File 'lib/brpm_auto.rb', line 29 def framework_root_path @framework_root_path end |
.integration_settings ⇒ Object (readonly)
Returns the value of attribute integration_settings.
27 28 29 |
# File 'lib/brpm_auto.rb', line 27 def integration_settings @integration_settings end |
.logger ⇒ Object (readonly)
Returns the value of attribute logger.
23 24 25 |
# File 'lib/brpm_auto.rb', line 23 def logger @logger end |
.params ⇒ Object (readonly)
Returns the value of attribute params.
24 25 26 |
# File 'lib/brpm_auto.rb', line 24 def params @params end |
.request_params ⇒ Object (readonly)
Returns the value of attribute request_params.
25 26 27 |
# File 'lib/brpm_auto.rb', line 25 def request_params @request_params end |
.version ⇒ Object (readonly)
Returns the value of attribute version.
21 22 23 |
# File 'lib/brpm_auto.rb', line 21 def version @version end |
Class Method Details
.brpm_installed? ⇒ Boolean
134 135 136 |
# File 'lib/brpm_auto.rb', line 134 def brpm_installed? ENV["BRPM_HOME"] and ! ENV["BRPM_HOME"].empty? end |
.get_request_params_for_request(automation_results_dir, application, request_id) ⇒ Object
126 127 128 |
# File 'lib/brpm_auto.rb', line 126 def get_request_params_for_request(automation_results_dir, application, request_id) RequestParams.new_for_request(automation_results_dir, application, request_id) end |
.init ⇒ Object
31 32 33 34 35 36 37 38 39 40 |
# File 'lib/brpm_auto.rb', line 31 def init @framework_root_path = File.("#{File.dirname(__FILE__)}/..") self.extend Utilities @config = get_config @version = @config["version"] @brpm_version = get_brpm_version if self.brpm_installed? end |
.initialize_integration_settings(dns, username, password, details) ⇒ Object
130 131 132 |
# File 'lib/brpm_auto.rb', line 130 def initialize_integration_settings(dns, username, password, details) @integration_settings = IntegrationSettings.new(dns, username, password, details) end |
.initialize_logger(log_file, also_log_to_console = false) ⇒ Object
102 103 104 |
# File 'lib/brpm_auto.rb', line 102 def initialize_logger(log_file, also_log_to_console = false) @logger = SimpleLogger.new(log_file, also_log_to_console) end |
.initialize_request_params(path) ⇒ Object
122 123 124 |
# File 'lib/brpm_auto.rb', line 122 def initialize_request_params(path) @request_params = RequestParams.new(path) end |
.load_customer_include_file ⇒ Object
89 90 91 92 93 94 95 96 97 98 99 100 |
# File 'lib/brpm_auto.rb', line 89 def load_customer_include_file customer_include_file_path = "#{self.params.config_dir}/customer_include.rb" if File.exists?(customer_include_file_path) load customer_include_file_path # use load instead of require to avoid having to restart BRPM after modifying the customer include file in a resource automation scenario if defined?(get_customer_include_params) customer_include_params = get_customer_include_params customer_include_params.each do |key, value| @params[key] = value end end end end |
.load_server_params ⇒ Object
79 80 81 82 83 84 85 86 87 |
# File 'lib/brpm_auto.rb', line 79 def load_server_params server_config_file_path = "#{self.params.config_dir}/server.yml" if File.exists?(server_config_file_path) server_config = YAML.load_file(server_config_file_path) server_config.each do |key, value| @params[key] = value unless @params.has_key?(key) end end end |
.log(message) ⇒ Object
110 111 112 |
# File 'lib/brpm_auto.rb', line 110 def log() @logger.log() end |
.log_error(message) ⇒ Object
114 115 116 |
# File 'lib/brpm_auto.rb', line 114 def log_error() @logger.log_error() end |
.message_box(message, m_type = "sep") ⇒ Object
118 119 120 |
# File 'lib/brpm_auto.rb', line 118 def (, m_type = "sep") @logger.(, m_type) end |
.require_module(module_name) ⇒ Object
138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 |
# File 'lib/brpm_auto.rb', line 138 def require_module(module_name) module_spec = Gem::Specification.find_by_name(module_name) # will raise an error when the module is not installed module_path = module_spec.gem_dir module_config_file_path = "#{module_path}/config.yml" if File.exist?(module_config_file_path) module_config = YAML.load_file(module_config_file_path) if module_config["dependencies"] BrpmAuto.log "Loading the dependent modules..." module_config["dependencies"].each do |dependency| if dependency.is_a?(Hash) dep_module_name = dependency.keys[0] else dep_module_name = dependency end BrpmAuto.log "Loading module #{dep_module_name}..." require_module(dep_module_name) end end else BrpmAuto.log "No config file found." end BrpmAuto.log "Loading the libraries of module #{module_name}..." require_libs(module_path) module_path end |
.run_from_brpm ⇒ Object
106 107 108 |
# File 'lib/brpm_auto.rb', line 106 def run_from_brpm @params.run_from_brpm end |
.setup(params = {}) ⇒ Object
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'lib/brpm_auto.rb', line 42 def setup(params = {}) @params = Params.new(params) load_server_params load_customer_include_file if @params.run_from_brpm @logger = BrpmLogger.new @request_params = RequestParams.new_for_request(@params.automation_results_dir, @params.application, @params.request_id) else initialize_logger(@params.log_file, @params.also_log_to_console) initialize_request_params(@params.output_dir) end @all_params = AllParams.new(@params, @request_params) if @params["SS_integration_dns"] @integration_settings = IntegrationSettings.new( @params["SS_integration_dns"], @params["SS_integration_username"], @params["SS_integration_password"], @params["SS_integration_details"], @params["SS_project_server"], @params["SS_project_server_id"] ) elsif defined?(SS_integration_dns) @integration_settings = IntegrationSettings.new( SS_integration_dns, SS_integration_username, SS_integration_password, SS_integration_details, SS_project_server, SS_project_server_id ) end end |