| @@ -30,7 +30,12 @@ from setuptools.command.install import install | |||||
| def get_version(): | def get_version(): | ||||
| """Get version.""" | |||||
| """ | |||||
| Get version. | |||||
| Returns: | |||||
| str, mindinsight version. | |||||
| """ | |||||
| machinery = import_module('importlib.machinery') | machinery = import_module('importlib.machinery') | ||||
| version_path = os.path.join(os.path.dirname(__file__), 'mindinsight', '_version.py') | version_path = os.path.join(os.path.dirname(__file__), 'mindinsight', '_version.py') | ||||
| module_name = '__mindinsightversion__' | module_name = '__mindinsightversion__' | ||||
| @@ -40,15 +45,24 @@ def get_version(): | |||||
| return version_module.VERSION | return version_module.VERSION | ||||
| def get_os(): | |||||
| """Get OS.""" | |||||
| os_system = platform.system().lower() | |||||
| return os_system | |||||
| def get_platform(): | |||||
| """ | |||||
| Get platform name. | |||||
| Returns: | |||||
| str, platform name in lowercase. | |||||
| """ | |||||
| return platform.system().lower() | |||||
| def get_description(): | def get_description(): | ||||
| """Get description.""" | |||||
| os_info = get_os() | |||||
| """ | |||||
| Get description. | |||||
| Returns: | |||||
| str, wheel package description. | |||||
| """ | |||||
| os_info = get_platform() | |||||
| cpu_info = platform.machine() | cpu_info = platform.machine() | ||||
| cmd = "git log --format='[sha1]:%h, [branch]:%d' -1" | cmd = "git log --format='[sha1]:%h, [branch]:%d' -1" | ||||
| @@ -68,7 +82,12 @@ def get_description(): | |||||
| def get_install_requires(): | def get_install_requires(): | ||||
| """Get install requirements.""" | |||||
| """ | |||||
| Get install requirements. | |||||
| Returns: | |||||
| list, list of dependent packages. | |||||
| """ | |||||
| with open('requirements.txt') as file: | with open('requirements.txt') as file: | ||||
| return file.read().splitlines() | return file.read().splitlines() | ||||
| @@ -95,15 +114,34 @@ def run_script(script): | |||||
| Args: | Args: | ||||
| script (str): Target script file path. | script (str): Target script file path. | ||||
| Returns: | |||||
| int, return code. | |||||
| """ | """ | ||||
| cmd = '/bin/bash {}'.format(script) | cmd = '/bin/bash {}'.format(script) | ||||
| process = subprocess.Popen( | process = subprocess.Popen( | ||||
| shlex.split(cmd), | shlex.split(cmd), | ||||
| shell=False | shell=False | ||||
| ) | ) | ||||
| return process.wait() | |||||
| rc = process.wait() | |||||
| def build_dependencies(): | |||||
| """Build dependencies.""" | |||||
| build_dir = os.path.join(os.path.dirname(__file__), 'build') | |||||
| sys.stdout.write('building crc32 ...\n') | |||||
| crc32_script = os.path.join(build_dir, 'scripts', 'crc32.sh') | |||||
| rc = run_script(crc32_script) | |||||
| if rc: | |||||
| sys.stdout.write('building crc32 failure\n') | |||||
| sys.exit(1) | |||||
| sys.stdout.write('building ui ...\n') | |||||
| ui_script = os.path.join(build_dir, 'scripts', 'ui.sh') | |||||
| rc = run_script(ui_script) | |||||
| if rc: | if rc: | ||||
| sys.stdout.write('building ui failure\n') | |||||
| sys.exit(1) | sys.exit(1) | ||||
| @@ -111,26 +149,12 @@ class EggInfo(egg_info): | |||||
| """Egg info.""" | """Egg info.""" | ||||
| def run(self): | def run(self): | ||||
| self.build_dependencies() | |||||
| build_dependencies() | |||||
| egg_info_dir = os.path.join(os.path.dirname(__file__), 'mindinsight.egg-info') | egg_info_dir = os.path.join(os.path.dirname(__file__), 'mindinsight.egg-info') | ||||
| shutil.rmtree(egg_info_dir, ignore_errors=True) | shutil.rmtree(egg_info_dir, ignore_errors=True) | ||||
| super().run() | super().run() | ||||
| update_permissions(egg_info_dir) | update_permissions(egg_info_dir) | ||||
| def build_dependencies(self): | |||||
| build_dir = os.path.join(os.path.dirname(__file__), 'build') | |||||
| sys.stdout.write('building crc32 ...\n') | |||||
| crc32_script = os.path.join(build_dir, 'scripts', 'crc32.sh') | |||||
| run_script(crc32_script) | |||||
| sys.stdout.write('building ui ...\n') | |||||
| ui_script = os.path.join(build_dir, 'scripts', 'ui.sh') | |||||
| run_script(ui_script) | |||||
| class BuildPy(build_py): | class BuildPy(build_py): | ||||
| """Build py files.""" | """Build py files.""" | ||||
| @@ -138,9 +162,7 @@ class BuildPy(build_py): | |||||
| def run(self): | def run(self): | ||||
| mindinsight_lib_dir = os.path.join(os.path.dirname(__file__), 'build', 'lib', 'mindinsight') | mindinsight_lib_dir = os.path.join(os.path.dirname(__file__), 'build', 'lib', 'mindinsight') | ||||
| shutil.rmtree(mindinsight_lib_dir, ignore_errors=True) | shutil.rmtree(mindinsight_lib_dir, ignore_errors=True) | ||||
| super().run() | super().run() | ||||
| update_permissions(mindinsight_lib_dir) | update_permissions(mindinsight_lib_dir) | ||||
| @@ -149,7 +171,6 @@ class Install(install): | |||||
| def run(self): | def run(self): | ||||
| super().run() | super().run() | ||||
| if sys.argv[-1] == 'install': | if sys.argv[-1] == 'install': | ||||
| pip = import_module('pip') | pip = import_module('pip') | ||||
| mindinsight_dir = os.path.join(os.path.dirname(pip.__path__[0]), 'mindinsight') | mindinsight_dir = os.path.join(os.path.dirname(pip.__path__[0]), 'mindinsight') | ||||
| @@ -175,7 +196,7 @@ if __name__ == '__main__': | |||||
| }, | }, | ||||
| description=get_description(), | description=get_description(), | ||||
| packages=['mindinsight'], | packages=['mindinsight'], | ||||
| platforms=[get_os()], | |||||
| platforms=[get_platform()], | |||||
| include_package_data=True, | include_package_data=True, | ||||
| cmdclass={ | cmdclass={ | ||||
| 'egg_info': EggInfo, | 'egg_info': EggInfo, | ||||