lib/beaker-hostgenerator/hypervisor/abs.rb in beaker-hostgenerator-0.8.4 vs lib/beaker-hostgenerator/hypervisor/abs.rb in beaker-hostgenerator-0.9.0
- old
+ new
@@ -8,22 +8,27 @@
#
# The ABS services requires the vmpooler template values as input to
# determine the type of platform that's being requested.
#
# Therefore, this hypervisor just reuses the vmpooler hypervisor template
- # values, and in the future will likely contain the fake template values to
- # use for non-vmpooler platforms like AIX.
+ # values, in addition to ABS-only values for hardware platforms.
class ABS < BeakerHostGenerator::Hypervisor::Interface
include BeakerHostGenerator::Data
def generate_node(node_info, base_config, bhg_version)
base_config['hypervisor'] = 'abs'
- # For now, we just reuse the vmpooler data
+ # Grab vmpooler data for this platform and any hardware (ABS) data.
+ # The assumption here is that these are mutually exclusive; that is,
+ # any given platform will have *either* :vmpooler data or :abs data
+ # so we're not worried about one overriding the other when we merge
+ # the hashes together.
platform = node_info['platform']
- platform_info = get_platform_info(bhg_version, platform, :vmpooler)
+ vmpooler_platform_info = get_platform_info(bhg_version, platform, :vmpooler)
+ abs_platform_info = get_platform_info(bhg_version, platform, :abs)
- base_config.deep_merge! platform_info
+ base_config.deep_merge! vmpooler_platform_info
+ base_config.deep_merge! abs_platform_info
return base_config
end
end
end