def _integrate_plugins(): """Integrate plugins to the context""" from airflow.plugins_manager import hooks_modules for hooks_module in hooks_modules: sys.modules[hooks_module.__name__] = hooks_module if not PY37: from pep562 import Pep562 hooks_module = Pep562(hooks_module.__name__) globals()[hooks_module._name] = hooks_module ########################################################## # TODO FIXME Remove in Airflow 2.0 if not _os.environ.get('AIRFLOW_USE_NEW_IMPORTS', False): from zope.deprecation import deprecated as _deprecated for _hook in hooks_module._objects: hook_name = _hook.__name__ globals()[hook_name] = _hook _deprecated( hook_name, "Importing plugin hook '{i}' directly from " "'airflow.hooks' has been deprecated. Please " "import from 'airflow.hooks.[plugin_module]' " "instead. Support for direct imports will be dropped " "entirely in Airflow 2.0.".format(i=hook_name))
os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'tests', 'dags') if os.path.exists(_TEST_DAGS_FOLDER): TEST_DAGS_FOLDER = _TEST_DAGS_FOLDER else: TEST_DAGS_FOLDER = os.path.join(AIRFLOW_HOME, 'dags') # Set up plugins folder for unit tests _TEST_PLUGINS_FOLDER = os.path.join( os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'tests', 'plugins') if os.path.exists(_TEST_PLUGINS_FOLDER): TEST_PLUGINS_FOLDER = _TEST_PLUGINS_FOLDER else: TEST_PLUGINS_FOLDER = os.path.join(AIRFLOW_HOME, 'plugins') TEST_CONFIG_FILE = get_airflow_test_config(AIRFLOW_HOME) SECRET_KEY = b64encode(os.urandom(16)).decode('utf-8') FERNET_KEY = '' # Set only if needed when generating a new file WEBSERVER_CONFIG = '' # Set by initialize_config conf = initialize_config() secrets_backend_list = initialize_secrets_backends() PY37 = sys.version_info >= (3, 7) if not PY37: from pep562 import Pep562 Pep562(__name__)
def ensure_pep562(module_name): # type: (str) -> None if sys.version_info < (3, 7): Pep562(module_name)