def rebuild_index(): """ Rebuild search index """ app = create_app() if app.config.get('SEARCH_TYPE') == 'simple': click.echo("Search type is simple, try using elasticsearch.") return with app.app_context(): # Wiki search.delete_index('wiki') wiki = Wiki(app.config['WIKI_PATH']) for entry in wiki.get_index(): page = wiki.get_page(entry['name']) if not page: # Some non-markdown files may have issues continue name = filename_to_cname(page['name']) # TODO add email? body = dict(name=name, content=page['data'], message=page['info']['message'], username=page['info']['author'], updated_on=entry['mtime'], created_on=entry['ctime']) search.index_wiki(name, body)
def rebuild_index(): """ Rebuild search index """ if current_app.config.get('SEARCH_TYPE') == 'simple': click.echo("Search type is simple, try using elasticsearch.") return # Wiki search.delete_index('wiki') wiki = Wiki(current_app.config['WIKI_PATH']) for entry in wiki.get_index(): page = wiki.get_page(entry['name']) if not page: # Some non-markdown files may have issues continue # TODO add email? # TODO I have concens about indexing the commit info from latest revision, see #148 info = next(page.history) body = dict(name=page.name, content=page.data, message=info['message'], username=info['author'], updated_on=entry['mtime'], created_on=entry['ctime']) search.index_wiki(page.name, body)