在工作中,我们正在考虑为内部软件部署配置一个本地 pypi 存储库。使用“pip install”进行部署会很方便,但我担心应该在添加新包后执行单元测试以确保正确安装。我一直认为 pip 正在这样做,但我在 pip 文档中看不到任何与测试相关的内容。
您可以通过 pip 将参数传递给 setup.py:
\n\n--install-option \n要提供给 setup.py install 命令的额外参数(例如 \xe2\x80\x93install-option=\xe2\x80\x9d\xe2\x80\x93install-scripts=/usr/local/ bin\xe2\x80\x9d)。使用多个 \xe2\x80\x93install-option 选项将多个选项传递给 setup.py install。如果您使用带有目录路径的选项,请务必使用绝对路径。
\n\npip install --install-option test\nRun Code Online (Sandbox Code Playgroud)\n\n将发行
\n\nsetup.py test\nRun Code Online (Sandbox Code Playgroud)\n\n那么你需要 setup.cfg 与 setup.py 位于同一目录中:
\n\n# setup.cfg\n[aliases]\ntest=pytest\nRun Code Online (Sandbox Code Playgroud)\n\n示例 setup.py:
\n\n# setup.py\n"""Setuptools entry point."""\nimport codecs\nimport os\n\ntry:\n from setuptools import setup\nexcept ImportError:\n from distutils.core import setup\n\n\nCLASSIFIERS = [\n \'Development Status :: 5 - Production/Stable\',\n \'Intended Audience :: Developers\',\n \'License :: OSI Approved :: MIT License\',\n \'Natural Language :: English\',\n \'Operating System :: OS Independent\',\n \'Programming Language :: Python\',\n \'Topic :: Software Development :: Libraries :: Python Modules\'\n]\n\ndirname = os.path.dirname(__file__)\n\nlong_description = (\n codecs.open(os.path.join(dirname, \'README.rst\'), encoding=\'utf-8\').read() + \'\\n\' +\n codecs.open(os.path.join(dirname, \'CHANGES.rst\'), encoding=\'utf-8\').read()\n)\n\nsetup(\n name=\'your_package\',\n version=\'0.0.1\',\n description=\'some short description\',\n long_description=long_description,\n long_description_content_type=\'text/x-rst\',\n author=\'Your Name\',\n author_email=\'your@email.com\',\n url=\'https://github.com/your_account/your_package\',\n packages=[\'your_package\'],\n install_requires=[\'pytest\',\n \'typing\',\n \'your_package\'],\n classifiers=CLASSIFIERS,\n setup_requires=[\'pytest-runner\'],\n tests_require=[\'pytest\'])\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
4279 次 |
| 最近记录: |