in perfkitbenchmarker/configs/benchmark_config_spec.py [0:0]
def _GetOptionDecoderConstructions(cls):
"""Gets decoder classes and constructor args for each configurable option.
Returns:
dict. Maps option name string to a (ConfigOptionDecoder class, dict)
pair. The pair specifies a decoder class and its __init__() keyword
arguments to construct in order to decode the named option.
"""
result = super()._GetOptionDecoderConstructions()
result.update({
'static_dpb_service_instance': (
option_decoders.StringDecoder,
{'default': None, 'none_ok': True},
),
'service_type': (
option_decoders.EnumDecoder,
{
'default': dpb_constants.DATAPROC,
'valid_values': [
dpb_constants.DATAPROC,
dpb_constants.DATAPROC_FLINK,
dpb_constants.DATAPROC_GKE,
dpb_constants.DATAPROC_SERVERLESS,
dpb_constants.DATAFLOW,
dpb_constants.EMR,
dpb_constants.EMR_SERVERLESS,
dpb_constants.GLUE,
dpb_constants.UNMANAGED_DPB_SVC_YARN_CLUSTER,
dpb_constants.UNMANAGED_SPARK_CLUSTER,
dpb_constants.KUBERNETES_SPARK_CLUSTER,
dpb_constants.KUBERNETES_FLINK_CLUSTER,
],
},
),
'worker_group': (vm_group_decoders.VmGroupSpecDecoder, {}),
'worker_count': (
option_decoders.IntDecoder,
{'default': dpb_constants.DEFAULT_WORKER_COUNT, 'min': 0},
),
'applications': (_DpbApplicationListDecoder, {}),
'version': (
option_decoders.StringDecoder,
{'default': None, 'none_ok': True},
),
'gke_cluster_name': (
option_decoders.StringDecoder,
{'default': None, 'none_ok': True},
),
'gke_cluster_nodepools': (
option_decoders.StringDecoder,
{'default': None, 'none_ok': True},
),
'gke_cluster_location': (
option_decoders.StringDecoder,
{'default': None, 'none_ok': True},
),
'dataflow_max_worker_count': (
option_decoders.IntDecoder,
{
'default': None,
'none_ok': True,
},
),
'dataproc_serverless_core_count': (
option_decoders.IntDecoder,
{
'default': None,
'none_ok': True,
},
),
'dataproc_serverless_initial_executors': (
option_decoders.IntDecoder,
{'default': None, 'none_ok': True},
),
'dataproc_serverless_min_executors': (
option_decoders.IntDecoder,
{'default': None, 'none_ok': True},
),
'dataproc_serverless_max_executors': (
option_decoders.IntDecoder,
{'default': None, 'none_ok': True},
),
'dataproc_serverless_memory': (
option_decoders.IntDecoder,
{'default': None, 'none_ok': True},
),
'dataproc_serverless_driver_memory': (
option_decoders.IntDecoder,
{'default': None, 'none_ok': True},
),
'dataproc_serverless_executor_memory': (
option_decoders.IntDecoder,
{'default': None, 'none_ok': True},
),
'dataproc_serverless_off_heap_memory': (
option_decoders.IntDecoder,
{'default': None, 'none_ok': True},
),
'dataproc_serverless_runtime_engine': (
option_decoders.EnumDecoder,
{
'valid_values': ('default', 'native'),
'default': 'default',
},
),
'dataproc_serverless_memory_overhead': (
option_decoders.IntDecoder,
{'default': None, 'none_ok': True},
),
'emr_serverless_executor_count': (
option_decoders.IntDecoder,
{'default': None, 'none_ok': True},
),
'emr_serverless_core_count': (
option_decoders.IntDecoder,
{'default': None, 'none_ok': True},
),
'emr_serverless_memory': (
option_decoders.IntDecoder,
{'default': None, 'none_ok': True},
),
})
return result