我有一个具有以下结构的简单命令行python项目
project_main/
- README.md
- requirements.txt
- setup.py
- project_main/
- __init__.py
- controller.py
- tests/
- __init__.py
- test_cases.py
- test_suite.py
我使用下面给出的命令运行测试用例,并且所有测试都通过了
python -m unittest
应用程序逻辑完美运行。
现在,我需要使用单个脚本“ setup.py”在任何系统中部署此代码。 “ setup.py”的内容在下面给出
from setuptools import setup, find_packages
import os
import sys
sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '..')))
setup(
name='sample',
version='1.0.0',
description='sample deployment'
packages=find_packages(),
test_suite="tests.test_suite.main_suite",
entry_points={
'console_scripts': [
'demoCommand=project_main.controller:main'
]
}
)
当我使用以下命令运行此命令时,它要求获得默认安装路径的管理员权限。同样,即使test_cases失败,也会安装该应用程序。
python3 setup.py install
编辑:添加setup.py安装命令的部分相关输出
copying build\lib\tests\__init__.py -> build\bdist.win32\egg\tests
byte-compiling build\bdist.win32\egg\tests\main_test_suite.py to main_test_suite.cpython-37.pyc