You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
957 B
37 lines
957 B
5 years ago
|
"""
|
||
|
This module provides means to detect the App Engine environment.
|
||
|
"""
|
||
|
|
||
|
import os
|
||
|
|
||
|
|
||
|
def is_appengine():
|
||
|
return is_local_appengine() or is_prod_appengine()
|
||
|
|
||
|
|
||
|
def is_appengine_sandbox():
|
||
|
"""Reports if the app is running in the first generation sandbox.
|
||
|
|
||
|
The second generation runtimes are technically still in a sandbox, but it
|
||
|
is much less restrictive, so generally you shouldn't need to check for it.
|
||
|
see https://cloud.google.com/appengine/docs/standard/runtimes
|
||
|
"""
|
||
|
return is_appengine() and os.environ["APPENGINE_RUNTIME"] == "python27"
|
||
|
|
||
|
|
||
|
def is_local_appengine():
|
||
|
return "APPENGINE_RUNTIME" in os.environ and os.environ.get(
|
||
|
"SERVER_SOFTWARE", ""
|
||
|
).startswith("Development/")
|
||
|
|
||
|
|
||
|
def is_prod_appengine():
|
||
|
return "APPENGINE_RUNTIME" in os.environ and os.environ.get(
|
||
|
"SERVER_SOFTWARE", ""
|
||
|
).startswith("Google App Engine/")
|
||
|
|
||
|
|
||
|
def is_prod_appengine_mvms():
|
||
|
"""Deprecated."""
|
||
|
return False
|