Esempio n. 1
0
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)
Esempio n. 2
0
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)