Example #1
0
def _update_metadata(function, metadata, output_path=None, **kwargs):
    metadata_dict = _load_metadata_dict(metadata)
    function(metadata_dict, **kwargs)

    validate(metadata_dict)

    if not isinstance(metadata, MetaData):
        metadata = MetaData()
        metadata.data = metadata_dict

    if output_path is not None:
        metadata.to_json(output_path)

    return metadata
Example #2
0
def metad():
    metadata = MetaData()
    metadata.data = {
        'tables': [
            {
                'id':
                '1234',
                'name':
                'a_table',
                'fields': [{
                    'name': 'a_field',
                    'type': 'number',
                    'subtype': 'float'
                }, {
                    'name': 'some_field',
                    'type': 'number',
                    'subtype': 'float'
                }]
            },
            {
                'id':
                '4567',
                'name':
                'another_table',
                'fields': [{
                    'name': 'another_field',
                    'type': 'number',
                    'subtype': 'float'
                }, {
                    'name': 'some_other_field',
                    'type': 'number',
                    'subtype': 'float'
                }]
            },
        ],
    }
    return metadata
Example #3
0
def validate(metadata):
    metad = MetaData()
    metad.data = metadata
    metad.validate()