in perfkitbenchmarker/virtual_machine.py [0:0]
def _ApplyFlags(cls, config_values, flag_values):
"""Overrides config values with flag values.
Can be overridden by derived classes to add support for specific flags.
Args:
config_values: dict mapping config option names to provided values. Is
modified by this function.
flag_values: flags.FlagValues. Runtime flags that may override the
provided config values.
Returns:
dict mapping config option names to values derived from the config
values or flag values.
"""
super()._ApplyFlags(config_values, flag_values)
if flag_values['image'].present:
config_values['image'] = flag_values.image
if flag_values['install_packages'].present:
config_values['install_packages'] = flag_values.install_packages
if flag_values['machine_type'].present:
config_values['machine_type'] = flag_values.machine_type
if flag_values['background_cpu_threads'].present:
config_values['background_cpu_threads'] = (
flag_values.background_cpu_threads
)
if flag_values['background_network_mbits_per_sec'].present:
config_values['background_network_mbits_per_sec'] = (
flag_values.background_network_mbits_per_sec
)
if flag_values['background_network_ip_type'].present:
config_values['background_network_ip_type'] = (
flag_values.background_network_ip_type
)
if flag_values['dedicated_hosts'].present:
config_values['use_dedicated_host'] = flag_values.dedicated_hosts
if flag_values['num_vms_per_host'].present:
config_values['num_vms_per_host'] = flag_values.num_vms_per_host
if flag_values['gpu_type'].present:
config_values['gpu_type'] = flag_values.gpu_type
if flag_values['gpu_count'].present:
config_values['gpu_count'] = flag_values.gpu_count
if flag_values['assign_external_ip'].present:
config_values['assign_external_ip'] = flag_values.assign_external_ip
if flag_values['disable_interrupt_moderation'].present:
config_values['disable_interrupt_moderation'] = (
flag_values.disable_interrupt_moderation
)
if flag_values['disable_rss'].present:
config_values['disable_rss'] = flag_values.disable_rss
if flag_values['vm_metadata'].present:
config_values['vm_metadata'] = flag_values.vm_metadata
if flag_values['boot_startup_script'].present:
config_values['boot_startup_script'] = flag_values.boot_startup_script
if 'gpu_count' in config_values and 'gpu_type' not in config_values:
raise errors.Config.MissingOption(
'gpu_type must be specified if gpu_count is set'
)
if 'gpu_type' in config_values and 'gpu_count' not in config_values:
raise errors.Config.MissingOption(
'gpu_count must be specified if gpu_type is set'
)