Beispiel #1
0
def setup_appengine_env():
    """ Setup the environment when running outside of dev_appserver
  """

    default_host, default_port = '127.0.0.1', '8000'

    if 'DJANGO_SETTINGS_MODULE' not in os.environ:
        os.environ['DJANGO_SETTINGS_MODULE'] = 'networkx.settings'

    fix_path()

    import google
    from google import appengine
    from google.appengine.tools.dev_appserver_main import DEFAULT_ARGS

    # Set some environment vars that are usually set by
    # dev_appserver eg host and port ..

    matches = host_rx.match(sys.argv[-1])
    arg_host, arg_port = matches and matches.groups() or (None, None)
    host = arg_host or default_host
    port = arg_port or default_port

    if 'SERVER_NAME' not in os.environ:
        os.environ['SERVER_NAME'] = host + ':' + port

    if 'SERVER_PORT' not in os.environ:
        os.environ['SERVER_PORT'] = port

    option_dict = DEFAULT_ARGS.copy()

    # Always use the high replication datastore model
    option_dict.update({'high_replication': True})

    # Load Config from app.yaml
    root_path = '.'
    root_path = os.path.normpath(os.path.abspath(root_path))
    default_partition = 'dev'
    config, _, _ = appengine.tools.dev_appserver.LoadAppConfig(
        root_path, {}, default_partition=default_partition)
    appengine.tools.dev_appserver.SetupStubs(config.application, **option_dict)

    if config.libraries:
        sdk_path = os.path.dirname(os.path.dirname(google.__file__))
        extra_paths = []
        for library in config.libraries:
            version = library.version
            if library.version == "latest":
                version = appengine.api.appinfo._NAME_TO_SUPPORTED_LIBRARY[
                    library.name].non_deprecated_versions[-1]
            if StrictVersion(appengine.tools.dev_appserver.GetVersionObject()
                             ["release"]) < StrictVersion("1.7.5"):
                p = os.path.join(
                    sdk_path, 'lib',
                    library.name + '_' + version.replace('.', '_'))
            else:
                p = os.path.join(sdk_path, 'lib', library.name + '-' + version)
            extra_paths.append(p)
        if extra_paths:
            sys.path = extra_paths + sys.path
Beispiel #2
0
def setup():
    from google.appengine.tools import dev_appserver
    from google.appengine.tools.dev_appserver_main import (
        ARG_CLEAR_DATASTORE,
        ARG_LOG_LEVEL,
        DEFAULT_ARGS,
        logging,
    )

    option_dict = DEFAULT_ARGS.copy()
    option_dict[ARG_CLEAR_DATASTORE] = True

    logging.basicConfig(
        level=option_dict[ARG_LOG_LEVEL],
        format="%(levelname)-8s %(asctime)s %(filename)s] %(message)s")
    config, matcher = dev_appserver.LoadAppConfig(root_path, {})
    dev_appserver.SetupStubs(config.application, **option_dict)