1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
|
# -*- encoding: ascii -*-
"""
invoke tasks
~~~~~~~~~~~~
"""
def namespace():
""" Create invoke task namespace """
class adict(object):
""" attribute dict """
# pylint: disable = invalid-name, missing-docstring
def __init__(self, *args, **kwargs):
self.__x__ = dict(*args, **kwargs)
def __getitem__(self, name):
return self.__x__[name]
def __getattr__(self, name):
if name == '__setstate__':
raise AttributeError(name)
try:
return self.__x__[name]
except KeyError:
raise AttributeError(name)
def items(self):
return self.__x__.items()
import os as _os
import sys as _sys
from . import _shell
def fail(msg):
""" Exit with message """
_sys.stderr.write('Error: %s\n' % (msg,))
raise _invoke.Exit(1)
env = adict(
package='rjsmin',
test=adict(ignore=[]),
doc=adict(
userdoc="docs/userdoc",
website=adict(
source="docs/website",
target="dist/website",
),
sphinx=adict(
build='docs/_userdoc/_build',
source='docs/_userdoc',
),
),
pypi=adict(
# repository='https://test.pypi.org/legacy/',
repository='https://upload.pypi.org/legacy/',
username='ndparker',
),
shell=adict((key, value) for key, value in vars(_shell).items()
if not key.startswith('_')),
c=_shell.command,
q=lambda x: _shell.command('%s', x),
fail=fail,
)
_sys.path.insert(0, _os.path.dirname(
_os.path.dirname(_os.path.abspath(__file__))
))
class Vars(object):
""" Submodules container """
from . import ( # noqa
benchmark,
build,
check,
clean,
compile,
doc,
test,
upload,
)
import invoke as _invoke
result = _invoke.Collection(*[value for key, value in vars(Vars).items()
if not key.startswith('__')])
result.configure(env)
return result
namespace = namespace()
|