def _validate_schema(config):
"""Validate the configuration, with spark, up to the orchestration level
Checks that hte spark configuration is valid, as well as the modules
structure in the configuration up to the orchestration level.
Each module will be responsible to validate its own sub-configuration.
:type config: dict
:param config: configuration model for the whole system
:raises: SchemaError -- if the configuration, up to the
orchestration level, is not valid
"""
config_schema = voluptuous.Schema({
"spark_config": {
"appName": basestring,
"streaming": {
"batch_interval": voluptuous.And(int, voluptuous.Range(min=1))
}
},
"server": {
"port": int,
"debug": bool
},
"sources": {
voluptuous.Optional(basestring): {basestring: object}
},
"ingestors": {
voluptuous.Optional(basestring): {basestring: object}
},
"smls": {
voluptuous.Optional(basestring): {basestring: object}
},
"voters": {
voluptuous.Optional(basestring): {basestring: object}
},
"sinks": {
voluptuous.Optional(basestring): {basestring: object}
},
"ldps": {
voluptuous.Optional(basestring): {basestring: object}
},
"connections": {
voluptuous.Optional(basestring): [basestring]
},
"feedback": {
voluptuous.Optional(basestring): [basestring]
}
}, required=True)
return config_schema(config)
评论列表
文章目录