Exemplo n.º 1
0
def register_manager(manager):
    """Register all manager plugins and default commands with the manager."""
    from six.moves.urllib.parse import urlparse
    managers = RegistryProxy('managers', ModuleAutoDiscoveryRegistry, 'manage')

    with manager.app.app_context():
        for script in find_modules('invenio.base.scripts'):
            manager.add_command(
                script.split('.')[-1], import_string(script + ':manager'))
        for script in managers:
            if script.__name__ == 'invenio.base.manage':
                continue
            manager.add_command(
                script.__name__.split('.')[-2], getattr(script, 'manager'))

    manager.add_command("clean", Clean())
    manager.add_command("show-urls", ShowUrls())
    manager.add_command("shell", Shell())
    parsed_url = urlparse(manager.app.config.get('CFG_SITE_URL'))
    host = manager.app.config.get('SERVER_BIND_ADDRESS', parsed_url.hostname
                                  or '127.0.0.1')
    port = manager.app.config.get('SERVER_BIND_PORT', parsed_url.port or 80)
    runserver = Server(host=host, port=port)
    manager.add_command("runserver", runserver)

    # FIXME separation of concerns is violated here.
    from invenio.ext.collect import collect
    collect.init_script(manager)

    from invenio.ext.assets import command, bower
    manager.add_command("assets", command)
    manager.add_command("bower", bower)
Exemplo n.º 2
0
def main(auto=False):
    if not auto:
        sys.argv.insert(1, 'mrbob')
    flaskxxl.test_request_context().push()
    manager.add_command('mrbob', mrbob_manager)
    manager.add_command('clean', Clean())
    manager.add_command('urls', ShowUrls())
    default_cmd = 'mrbob'
    if len(sys.argv) > 2:
        default_cmd = 'clean'
    manager.run(default_command=default_cmd)
Exemplo n.º 3
0
def main():
    manager.add_command("start", LemurServer())
    manager.add_command("runserver", Server(host='127.0.0.1'))
    manager.add_command("clean", Clean())
    manager.add_command("show_urls", ShowUrls())
    manager.add_command("db", MigrateCommand)
    manager.add_command("init", InitializeApp())
    manager.add_command("create_user", CreateUser())
    manager.add_command("create_role", CreateRole())
    manager.add_command("provision_elb", ProvisionELB())
    manager.run()
Exemplo n.º 4
0
def main():
    manager.add_command("start", LemurServer())
    manager.add_command("runserver", Server(host='127.0.0.1', threaded=True))
    manager.add_command("clean", Clean())
    manager.add_command("show_urls", ShowUrls())
    manager.add_command("db", MigrateCommand)
    manager.add_command("init", InitializeApp())
    manager.add_command("create_user", CreateUser())
    manager.add_command("reset_password", ResetPassword())
    manager.add_command("create_role", CreateRole())
    manager.add_command("source", source_manager)
    manager.add_command("report", Report())
    manager.add_command("certificate", certificate_manager)
    manager.run()
Exemplo n.º 5
0
def main():
    # create application
    manager = Manager(inc.create_app)
    # add config, default by dev/dev.py
    manager.add_option('-c', '--config', dest='config', required=False, default='../config/config.py')
    # show the application's url routes
    manager.add_command("urls", ShowUrls())
    # clean .pyc .pyo
    manager.add_command("clean", Clean())
    manager.add_command("init", InitApp())

    try:
        manager.run()
    except KeyboardInterrupt:
        print('KeyboardInterrupt cause quit')
Exemplo n.º 6
0
def main():
    manager.add_command("start", LemurServer())
    manager.add_command("runserver", Server(host='127.0.0.1', threaded=True))
    manager.add_command("clean", Clean())
    manager.add_command("show_urls", ShowUrls())
    manager.add_command("db", MigrateCommand)
    manager.add_command("init", InitializeApp())
    manager.add_command("create_user", CreateUser())
    manager.add_command("reset_password", ResetPassword())
    manager.add_command("create_role", CreateRole())
    manager.add_command("provision_elb", ProvisionELB())
    manager.add_command("rotate_elbs", RotateELBs())
    manager.add_command("rolling", Rolling())
    manager.add_command("sources", Sources())
    manager.add_command("report", Report())
    manager.run()
Exemplo n.º 7
0
def register_commands(manager):
    '''Register all core commands'''
    manager.add_command('clean', Clean())
    manager.add_command('urls', ShowUrls())

    settings = os.environ.get('UDATA_SETTINGS', join(os.getcwd(), 'udata.cfg'))
    manager.add_command(
        'serve',
        Server(port=7000,
               use_debugger=True,
               use_reloader=True,
               threaded=True,
               extra_files=[settings]))

    # Load all commands submodule
    for filename in iglob(join(dirname(__file__), '[!_]*.py')):
        module = splitext(basename(filename))[0]
        try:
            __import__('udata.commands.{0}'.format(module))
        except Exception as e:
            log.error('Unable to import %s: %s', module, e)

    # Load all core modules commands
    import udata.core.metrics.commands  # noqa
    import udata.core.user.commands  # noqa
    import udata.core.dataset.commands  # noqa
    import udata.core.organization.commands  # noqa
    import udata.search.commands  # noqa
    import udata.core.spatial.commands  # noqa
    import udata.core.jobs.commands  # noqa
    import udata.core.badges.commands  # noqa
    import udata.api.commands  # noqa
    import udata.harvest.commands  # noqa
    import udata.features.territories.commands  # noqa
    import udata.linkchecker.commands  # noqa

    # Dynamic module commands loading
    for plugin in manager.app.config['PLUGINS']:
        name = 'udata_{0}.commands'.format(plugin)
        try:
            __import__(name)
        except ImportError as e:
            pass
        except Exception as e:
            log.error('Error during import of %s: %s', name, e)
Exemplo n.º 8
0
def main():
    manager.add_command("start", LemurServer())
    manager.add_command("runserver", Server(host='127.0.0.1', threaded=True))
    manager.add_command("clean", Clean())
    manager.add_command("show_urls", ShowUrls())
    manager.add_command("db", MigrateCommand)
    manager.add_command("init", InitializeApp())
    manager.add_command("create_user", CreateUser())
    manager.add_command("reset_password", ResetPassword())
    manager.add_command("create_role", CreateRole())
    manager.add_command("source", source_manager)
    manager.add_command("certificate", certificate_manager)
    manager.add_command("notify", notification_manager)
    manager.add_command("endpoint", endpoint_manager)
    manager.add_command("report", report_manager)
    manager.add_command("policy", policy_manager)
    manager.add_command("pending_certs", pending_certificate_manager)
    manager.add_command("dns_providers", dns_provider_manager)
    manager.run()
Exemplo n.º 9
0
def init_manager(app, db, **kwargs):
    """
    Initialise Manager

    :param app: Flask app object
    :parm db: db instance
    :param kwargs: Additional keyword arguments to be made available as shell context
    """
    manager.app = app
    manager.db = db
    manager.context = kwargs
    manager.add_command('db', MigrateCommand)
    manager.add_command('clean', Clean())
    manager.add_command('showurls', ShowUrls())
    manager.add_command('shell', Shell(make_context=shell_context))
    manager.add_command(
        'plainshell',
        Shell(make_context=shell_context, use_ipython=False,
              use_bpython=False))
    return manager
Exemplo n.º 10
0
app = create_app(os.getenv('FLASK_CONFIG') or 'default')
manager = Manager(app)
migrate = Migrate(app, db)


def make_shell_context():
    from app.api_user.models import User, Role
    return dict(app=app, db=db, User=User, Role=Role)


# manager.add_command("runserver", Server(host="0.0.0.0", port=5000))
manager.add_command("shell", Shell(make_context=make_shell_context))
manager.add_command("db", MigrateCommand)  # 数据库管理
manager.add_command("clean", Clean())  # 清理缓存文件
manager.add_command("url", ShowUrls())  # 打印所有URL


@manager.command
def db_createfirst():
    """首次新建数据库"""
    ret = confirm("drop the database?")
    if ret in ('y', 'Y', "yes"):
        db.drop_all()
        print("drop finish!")
    db.create_all()
    print("The database is created successfully!")
    createsuperuser()


def createrole(name="admin"):
Exemplo n.º 11
0
from flask_script import Manager, Shell, Server
from flask_script.commands import ShowUrls, Clean
from app import create_app
from flask_migrate import Migrate, MigrateCommand

from app.models import db, User, Role, SeqInfo, RunInfo, SeqIndex

app = create_app("app.config.DevConfig")

manager = Manager(app)
migrate = Migrate(app, db)
manager.add_command('server', Server())
manager.add_command('db', MigrateCommand)
manager.add_command('show_url', ShowUrls())
manager.add_command('clean', Clean())


@manager.shell
def make_shell_contex():
    return dict(app=app, db=db, User=User, Role=Role)


# @manager.shell
# def set_up():
#     db.create_all()
#
#     admin_role = Role(name='admin')
#     admin_role.description = 'admin'
#     db.session.add(admin_role)
#
#     default_role = Role(name='default')
Exemplo n.º 12
0
asset_manager.help = 'run commands for assets'


def _shell_context():
    return dict(current_app=current_app, g=g, db=db, cache=cache,
                Series=Series, Chapter=Chapter)

shell_command = Shell(make_context=_shell_context)
shell_command.help = 'run a Python shell inside the Flask app context'


server_command = Server()
server_command.help = 'run the Flask development server i.e. app.run()'


routes_command = ShowUrls()
routes_command.help = 'print all of the URL mathcing routes for the project'


manager = Manager()
manager.add_command('db', db_manager)
manager.add_command('cache', cache_manager)
manager.add_command('assets', asset_manager)
manager.add_command('serve', server_command)
manager.add_command('shell', shell_command)
manager.add_command('routes', routes_command)


@manager.command
def update(series_id=None):
    """update the database by fetching changes from the Naver Comics website;
Exemplo n.º 13
0
# default to dev config
app = create_app('config.py')

manager = Manager(app)


class RunTests(Command):
    def run(self):
        pytest.main(['-x', 'app/test'])


manager.add_command("server", Server(host='localhost'))
manager.add_command(
    "server-ssl",
    Server(host='localhost', ssl_crt='cert.pem', ssl_key='key.pem'))
manager.add_command("show-urls", ShowUrls())
manager.add_command('test', RunTests())


@manager.shell
def make_shell_context():
    """ Creates a python REPL with several default imports
        in the context of the app
    """
    return dict(app=app, db=db, User=User)


@manager.command
def seed():
    generate.seed()
Exemplo n.º 14
0
from flask_migrate import Migrate, MigrateCommand
from flask_script import Manager, Shell, Server, Command
from flask_script.commands import Clean, ShowUrls
from app import create_app, db

# app,celery = create_app()
app = create_app()
manager = Manager(app)
migrate = Migrate(app, db)


def make_shell_context():
    from app.modules.admin.model import Admin
    return dict(app=app, db=db, Admin=Admin)


# Get BaoAI version and URL # 获取BaoAI版本及官方URL
@manager.command
def baoai():
    print('BaoAI v2.0.0 - http://www.baoai.co')


manager.add_command("runserver", Server(host='0.0.0.0', port=5000))
manager.add_command("shell", Shell(make_context=make_shell_context))
manager.add_command("db", MigrateCommand)  # Database Manage # 数据库管理
manager.add_command("clean", Clean())  # Clean Cache File # 清理缓存文件
manager.add_command("url", ShowUrls())  # Print All URL # 打印所有URL

if __name__ == "__main__":
    manager.run()
Exemplo n.º 15
0
from __future__ import absolute_import, print_function

import sys

from flask_script import Manager, prompt_pass
from flask_script.commands import ShowUrls, Clean

from .app import create_app
from .models.auth import User

manager = Manager(create_app())
manager.add_command(ShowUrls())
manager.add_command(Clean())


@manager.command
def initadmin():
    """Creates an initial user."""
    admin_user = User.get_by_name('admin')
    if admin_user:
        print('The user "admin" exists', file=sys.stderr)
        sys.exit(1)

    password = None
    while not password:
        password = prompt_pass('Password', default='').strip()
    admin_user = User.create_normal('admin', password, is_active=True)
    admin_user.grant_admin()


def main():
Exemplo n.º 16
0
        for line in open('.env'):
            var = line.strip().split('=', 1)
            if len(var) == 2:
                os.environ[var[0]] = var[1]


import_env()

app = create_app(app_config)
app.secret_key = 'fgdgethfghgfhxrhrhf875757'
manager = Manager(app)
test_manager = Manager(usage='Performs test related operations')

manager.add_command('db', db_manager)
manager.add_command('test', test_manager)
manager.add_command("routes", ShowUrls())


@manager.shell
def make_context_shell():
    """
    Usage: ./manage.py shell
    Starts a python shell with with app, db and models loaded
    """
    # Loads all the models which inherit from Base
    models_map = {
        name: cls
        for name, cls in models.__dict__.items()
        if isinstance(cls, type(Base))
    }
    return dict(app=app, db=db, **models_map)
Exemplo n.º 17
0
import os

from flask_script import Manager, Server
from flask_script.commands import ShowUrls
from flask_migrate import Migrate, MigrateCommand
from Blog.models.blogs import db, User, Post, Tag
from Blog import create_app

#默认的环境变量
env = os.environ.get('BLOG_ENV', 'Dev')
print(env.capitalize())
app = create_app("Blog.config.%sConfig" % env.capitalize())

migrate = Migrate(db=db, app=app)
manage = Manager(app)
manage.add_command('server', Server())
manage.add_command('show-urls', ShowUrls())
manage.add_command('db', MigrateCommand)


@manage.shell
def make_shell_context():
    return dict(app=app, db=db, User=User, Post=Post, Tag=Tag)


if __name__ == '__main__':
    manage.run()
Exemplo n.º 18
0
#!/usr/bin/env python
# -*- coding: utf-8 -*-

from flask_script import Manager, Server
from flask_script.commands import Clean, ShowUrls

from rentomatic.app import create_app


app = create_app()
manager = Manager(app)

manager.add_command('server', Server())
manager.add_command('urls', ShowUrls())
manager.add_command('clean', Clean())

if __name__ == '__main__':
    manager.run()
Exemplo n.º 19
0
def _shell_context():
    return dict(current_app=current_app,
                g=g,
                db=db,
                cache=cache,
                Series=Series,
                Chapter=Chapter)


shell_command = Shell(make_context=_shell_context)
shell_command.help = 'run a Python shell inside the Flask app context'

server_command = Server()
server_command.help = 'run the Flask development server i.e. app.run()'

routes_command = ShowUrls()
routes_command.help = 'print all of the URL mathcing routes for the project'

manager = Manager()
manager.add_command('db', db_manager)
manager.add_command('cache', cache_manager)
manager.add_command('assets', asset_manager)
manager.add_command('serve', server_command)
manager.add_command('shell', shell_command)
manager.add_command('routes', routes_command)


@manager.command
def update(series_id=None):
    """update the database by fetching changes from the Naver Comics website;
    if series_id is specified, only the specified series will be updated