Module: HybridPlatformsConductor::NodesHandler::ConfigDSLExtension
- Defined in:
- lib/hybrid_platforms_conductor/nodes_handler.rb
Overview
Extend the Config DSL
Instance Attribute Summary collapse
-
#cmdb_masters ⇒ Object
readonly
List of CMDB masters.
Instance Method Summary collapse
-
#init_nodes_handler_config ⇒ Object
Mixin initializer.
-
#master_cmdbs(master_cmdbs_info) ⇒ Object
Set CMDB masters.
Instance Attribute Details
#cmdb_masters ⇒ Object (readonly)
List of CMDB masters. Each info has the following properties:
-
nodes_selectors_stack (Array<Object>): Stack of nodes selectors impacted by this rule.
-
cmdb_masters (Hash< Symbol, Array<Symbol> >): List of metadata properties per CMDB name considered as master for those properties.
Array< Hash<Symbol, Object> >
19 20 21 |
# File 'lib/hybrid_platforms_conductor/nodes_handler.rb', line 19 def cmdb_masters @cmdb_masters end |
Instance Method Details
#init_nodes_handler_config ⇒ Object
Mixin initializer
22 23 24 |
# File 'lib/hybrid_platforms_conductor/nodes_handler.rb', line 22 def init_nodes_handler_config @cmdb_masters = [] end |
#master_cmdbs(master_cmdbs_info) ⇒ Object
Set CMDB masters
- Parameters
-
master_cmdbs_info (Hash< Symbol, Symbol or Array<Symbol> >): List of metadata properties (or single one) per CMDB name considered as master for those properties.
30 31 32 33 34 35 |
# File 'lib/hybrid_platforms_conductor/nodes_handler.rb', line 30 def master_cmdbs(master_cmdbs_info) @cmdb_masters << { cmdb_masters: Hash[master_cmdbs_info.map { |cmdb, properties| [cmdb, properties.is_a?(Array) ? properties : [properties]] }], nodes_selectors_stack: current_nodes_selectors_stack } end |