def METHOD_NAME(filepath, output_path):
    """
    Convert WA2 .py config file to a WA3 .yaml config file.
    """
    orig_agenda = load_struct_from_python(filepath)
    new_agenda = {'augmentations': []}
    config_points = MetaConfiguration.config_points + RunConfiguration.config_points
    # Add additional config points to extract from config file.
    # Also allows for aliasing of renamed parameters
    config_points.extend([
        ConfigurationPoint(
            'augmentations',
            aliases=["instruments", "processors", "instrumentation",
                     "output_processors", "augment", "result_processors"],
            description='''
                The augmentations enabled by default.
                This combines the "instrumentation"
                and "result_processors" from previous
                versions of WA (the old entries are
                now aliases for this).
            '''),
        ConfigurationPoint(
            'device_config',
            description='''Generic configuration for device.''',
            default={}),
        ConfigurationPoint(
            'cleanup_assets',
            aliases=['clean_up'],
            description='''Specify whether to clean up assets
                            deployed to the target''',
            default=True),
    ])
    for param in list(orig_agenda.keys()):
        for cfg_point in config_points:
            if param == cfg_point.name or param in cfg_point.aliases:
                if cfg_point.name == 'augmentations':
                    new_agenda['augmentations'].extend(orig_agenda.pop(param))
                else:
                    new_agenda[cfg_point.name] = format_parameter(orig_agenda.pop(param))
    with open(output_path, 'w') as output:
        for param in config_points:
            entry = {param.name: new_agenda.get(param.name, param.default)}
            write_param_yaml(entry, param, output)
        # Convert plugin configuration
        output.write("# Plugin Configuration\n")
        for param in list(orig_agenda.keys()):
            if pluginloader.has_plugin(param):
                entry = {param: orig_agenda.pop(param)}
                yaml.dump(format_parameter(entry), output, default_flow_style=False)
                output.write("\n")
        # Write any additional aliased parameters into new config
        plugin_cache = PluginCache()
        output.write("# Additional global aliases\n")
        for param in list(orig_agenda.keys()):
            if plugin_cache.is_global_alias(param):
                entry = {param: orig_agenda.pop(param)}
                yaml.dump(format_parameter(entry), output, default_flow_style=False)
                output.write("\n")