使用poethy从Git自动安装Python依赖项

2024-09-30 22:12:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用Poetry进行Python依赖项管理,同时使用PyCrate进行ASN.1编码/解码。在

pyclate是从GitHub提取的依赖项,一旦从GitHub提取,就通过运行pyclate目录中的安装文件来安装。在

python setup.py install

如果可能的话,我想将安装步骤集成到我的pyproject.toml。我当前的pyproject.toml包括pyclate,如下所示:

^{pr2}$

这将把PyCrate从GitHub存储库中拉出来,但是放到poetherine创建的virtualenv的src文件夹中。在

在执行poetry install时有没有办法自动运行安装脚本?我已经研究过如何使用Poetry scripts,但是到目前为止还没有能够使它正常运行。在

我当前的设置包括运行poetry install,然后手动运行pyclate的setup.py install,但是如果可以的话,我希望我的poetry install来执行完整的设置。在

如果有任何帮助,我们将不胜感激。在


Tags: installpygithub目录编码poetrysetup步骤
1条回答
网友
1楼 · 发布于 2024-09-30 22:12:00

当您运行poetry install时,诗歌应该已经为您运行python setup.py install。在

Poetry基本上只运行pip install package,它下载包,实际上只是在包上运行python setup.py install!在

Under the hood, [pip] will run python setup.py install

来源:https://stackoverflow.com/a/15732821/10149169

但是,poetry只在隔离的虚拟环境中安装软件包,以避免污染计算机的其余部分。在

要使用诗歌运行某些内容,您需要使用poetry run YOUR_COMMAND

为了在虚拟环境中运行脚本,必须运行poetry shell以进入虚拟环境,或者poetry run YOUR_COMMAND。E、 g.要运行Python脚本,应该执行poetry run python your_python_script.py

示例

{cd9>如果你有一个文件夹

[tool.poetry]
name = "test"
version = "0.1.0"
description = ""
authors = ["Your Name <you@example.com>"]

[tool.poetry.dependencies]
python = "^3.6"
pycrate = {git = "https://github.com/P1sec/pycrate.git"}

[tool.poetry.dev-dependencies]

[build-system]
requires = ["poetry>=0.12"]
build-backend = "poetry.masonry.api"

运行poetry install之后,可以通过运行poetry run SCRIPT_NAME来访问所有pyrclate脚本:

^{pr2}$

如果您有一个导入pyclate库的Python文件,则还需要使用poetry run运行该文件:

me@computer:~/example-project$ cat test.py 
import pycrate_core
print(pycrate_core.__version__)
me@computer:~/example-project$ poetry run python test.py

相关问题 更多 >