def publish_programmatically(source_class, source, source_path, destination_class, destination, destination_path, reader, reader_name, parser, parser_name, writer, writer_name, settings, settings_spec, settings_overrides, config_section, enable_exit_status):
 pub = Publisher(reader, parser, writer, settings=settings, source_class=source_class, destination_class=destination_class)
 pub.set_components(reader_name, parser_name, writer_name)
 pub.process_programmatic_settings(settings_spec, settings_overrides, config_section)
 pub.set_source(source, source_path)
 pub.set_destination(destination, destination_path)
 output = pub.publish(enable_exit_status=enable_exit_status)
 return (output, pub)

def publish_programmatically ( source_class , source , source_path , destination_class , destination , destination_path , reader , reader_name , parser , parser_name , writer , writer_name , settings , settings_spec , settings_overrides , config_section , enable_exit_status ) : pub = Publisher ( reader , parser , writer , settings = settings , source_class = source_class , destination_class = destination_class ) pub . set_components ( reader_name , parser_name , writer_name ) pub . process_programmatic_settings ( settings_spec , settings_overrides , config_section ) pub . set_source ( source , source_path ) pub . set_destination ( destination , destination_path ) output = pub . publish ( enable_exit_status = enable_exit_status ) return ( output , pub )
set up & run a publisher for custom programmatic use .