diff options
Diffstat (limited to 'tasks/__init__.py')
-rw-r--r-- | tasks/__init__.py | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/tasks/__init__.py b/tasks/__init__.py new file mode 100644 index 0000000..9fa55ef --- /dev/null +++ b/tasks/__init__.py @@ -0,0 +1,70 @@ +# -*- coding: UTF-8 -*- +# pylint: disable=wrong-import-position, wrong-import-order +""" +Invoke build script. +Show all tasks with:: + + invoke -l + +.. seealso:: + + * http://pyinvoke.org + * https://github.com/pyinvoke/invoke +""" + +from __future__ import absolute_import + +# ----------------------------------------------------------------------------- +# BOOTSTRAP PATH: Use provided vendor bundle if "invoke" is not installed +# ----------------------------------------------------------------------------- +from . import _setup # pylint: disable=wrong-import-order +import os.path +import sys +INVOKE_MINVERSION = "1.2.0" +_setup.setup_path() +_setup.require_invoke_minversion(INVOKE_MINVERSION) + +# ----------------------------------------------------------------------------- +# IMPORTS: +# ----------------------------------------------------------------------------- +import sys +from invoke import Collection + +# -- TASK-LIBRARY: +from . import _tasklet_cleanup as cleanup +from . import test +from . import release +# DISABLED: from . import docs + +# ----------------------------------------------------------------------------- +# TASKS: +# ----------------------------------------------------------------------------- +# None + + +# ----------------------------------------------------------------------------- +# TASK CONFIGURATION: +# ----------------------------------------------------------------------------- +namespace = Collection() +namespace.add_collection(Collection.from_module(cleanup), name="cleanup") +namespace.add_collection(Collection.from_module(test)) +namespace.add_collection(Collection.from_module(release)) +# -- DISABLED: namespace.add_collection(Collection.from_module(docs)) +namespace.configure({ + "tasks": { + "auto_dash_names": False + } +}) + +# -- ENSURE: python cleanup is used for this project. +cleanup.cleanup_tasks.add_task(cleanup.clean_python) + +# -- INJECT: clean configuration into this namespace +namespace.configure(cleanup.namespace.configuration()) +if sys.platform.startswith("win"): + # -- OVERRIDE SETTINGS: For platform=win32, ... (Windows) + from ._compat_shutil import which + run_settings = dict(echo=True, pty=False, shell=which("cmd")) + namespace.configure({"run": run_settings}) +else: + namespace.configure({"run": dict(echo=True, pty=True)}) |