in syndicate/core/build/validator/batch_jobdef_validator.py [0:0]
def _validate_container_properties(container_properties, prefix=None):
"""
Performs check of Batch Job Definition container properties.
:param container_properties: container properties definition
:param prefix: prefix that will be displayed before the variable
name in case of invalidity.
:raises AssertionError in case of invalidity.
:return: None
"""
if not prefix:
prefix = 'container_properties'
container_config = [
{
'field_name': 'image',
'field_value': container_properties.get('image'),
'prefix': prefix,
'required_type': str,
'validators': [
_validate_field_type
]
},
{
'field_name': 'vcpus',
'field_value': container_properties.get('vcpus'),
'prefix': prefix,
'required_type': int,
'validators': [
_validate_field_type
]
},
{
'field_name': 'memory',
'field_value': container_properties.get('memory'),
'prefix': prefix,
'required_type': int,
'validators': [
_validate_field_type
]
},
{
'field_name': 'command',
'field_value': container_properties.get('command'),
'prefix': prefix,
'required_type': list,
'validators': [
_validate_field_type
]
},
{
'field_name': 'job_role_arn',
'field_value': container_properties.get('job_role_arn'),
'prefix': prefix,
'required_type': str,
'validators': [
_validate_field_type
]
},
{
'field_name': 'execution_role_arn',
'field_value': container_properties.get('execution_role_arn'),
'prefix': prefix,
'required_type': str,
'validators': [
_validate_field_type
]
},
{
'field_name': 'volumes',
'field_value': container_properties.get('volumes'),
'prefix': prefix,
'required_type': list,
'validators': [
_validate_field_type
]
},
{
'field_name': 'volumes',
'field_value': container_properties.get('volumes'),
'prefix': prefix,
'required_type': list,
'validators': [
_validate_field_type
]
},
{
'field_name': 'environment',
'field_value': container_properties.get('environment'),
'prefix': prefix,
'required_type': list,
'validators': [
_validate_field_type
]
},
{
'field_name': 'mount_points',
'field_value': container_properties.get('mount_points'),
'prefix': prefix,
'required_type': list,
'validators': [
_validate_field_type
]
},
{
'field_name': 'readonly_root_filesystem',
'field_value': container_properties.get('readonly_root_filesystem'),
'prefix': prefix,
'required_type': bool,
'validators': [
_validate_field_type
]
},
{
'field_name': 'privileged',
'field_value': container_properties.get('privileged'),
'prefix': prefix,
'required_type': bool,
'validators': [
_validate_field_type
]
},
{
'field_name': 'ulimits',
'field_value': container_properties.get('ulimits'),
'prefix': prefix,
'required_type': list,
'validators': [
_validate_field_type
]
},
{
'field_name': 'user',
'field_value': container_properties.get('user'),
'prefix': prefix,
'required_type': str,
'validators': [
_validate_field_type
]
},
{
'field_name': 'instance_type',
'field_value': container_properties.get('instance_type'),
'prefix': prefix,
'required_type': str,
'validators': [
_validate_field_type
]
},
{
'field_name': 'resource_requirements',
'field_value': container_properties.get('resource_requirements'),
'prefix': prefix,
'required_type': list,
'validators': [
_validate_field_type
]
},
{
'field_name': 'linux_parameters',
'field_value': container_properties.get('linux_parameters'),
'prefix': prefix,
'required_type': dict,
'validators': [
_validate_field_type
]
},
{
'field_name': 'log_configuration',
'field_value': container_properties.get('log_configuration'),
'prefix': prefix,
'required_type': dict,
'validators': [
_validate_field_type
]
},
{
'field_name': 'secrets',
'field_value': container_properties.get('secrets'),
'prefix': prefix,
'required_type': list,
'validators': [
_validate_field_type
]
},
{
'field_name': 'network_configuration',
'field_value': container_properties.get('network_configuration'),
'prefix': prefix,
'required_type': dict,
'validators': [
_validate_field_type
]
},
{
'field_name': 'fargate_platform_configuration',
'field_value': container_properties.get('fargate_platform_configuration'),
'prefix': prefix,
'required_type': dict,
'validators': [
_validate_field_type
]
},
]
_process_config(container_config)