【发布时间】:2022-10-04 19:34:21
【问题描述】:
假设我们在Artifactory 中创建了一个PyPi 存储库(简单的API)。在 Jenkins 管道内部,由于安全策略的原因,需要使用 JFrog CLI 发布任何类型的工件。
有没有办法使用 JFrog CLI 将 python 包(dist/tar.gz, wheel)推送到 PyPi 存储库?
【问题讨论】:
标签: python artifactory pypi jfrog-cli
假设我们在Artifactory 中创建了一个PyPi 存储库(简单的API)。在 Jenkins 管道内部,由于安全策略的原因,需要使用 JFrog CLI 发布任何类型的工件。
有没有办法使用 JFrog CLI 将 python 包(dist/tar.gz, wheel)推送到 PyPi 存储库?
【问题讨论】:
标签: python artifactory pypi jfrog-cli
是的你可以。
配置工件:
> jfrog c add
配置项目的解析存储库。您应该设置您创建的虚拟存储库。
> jfrog rt pipc
使用 Artifactory 中的 pip 安装项目依赖项:
> jfrog rt pipi -r requirements.txt --build-name=my-pip-build --build-number=1 --module=jfrog-python-example
打包项目,创建分发档案(tar.gz 和 whl):
> python setup.py sdist bdist_wheel
将包上传到 Artifactory 中的 pypi 存储库:
> jfrog rt u dist/ pypi/ --build-name=my-pip-build --build-number=1 --module=jfrog-python-example
收集环境变量并将它们添加到构建信息中:
> jfrog rt bce my-pip-build 1
将构建信息发布到 Artifactory:
> jfrog rt bp my-pip-build 1
通过使用 pip 从 Artifactory 安装已发布的包来安装它:
> jfrog rt pip-install jfrog-python-example
验证包安装成功:
> pip show jfrog-python-example
Github jfrog/project-examples 中列出了更多详细信息。
【讨论】: