Python-发布到 Artifactory 的诗歌错误
Python-Poetry Errors Publishing to Artifactory
我正在使用诗歌 (1.1.12) 发布到我们的 Artifactory 实例。我已经尝试了几个不同的 URL 来发布,我要么得到 405(不允许的方法),要么得到 415(不支持的媒体类型)
https://my.domain/artifactory/my-cool-reg/ --> 405
https://my-cool-reg.my.domain/artifactory/api/pypi/pypi/simple/ -> 415
我是否缺少一些让出版继续进行的魔法?我尝试在 CLI 上使用 -u
和 -p
传递我的凭据,以及通过 -r my_repo
为 repository
传递凭据配置。下面是一个示例错误消息(来自 pypi url 测试)
UploadError
HTTP Error 415: Unsupported Media Type
at ~/.local/share/pypoetry/venv/lib/python3.10/site-packages/poetry/publishing/uploader.py:216 in _upload
212│ self._register(session, url)
213│ except HTTPError as e:
214│ raise UploadError(e)
215│
→ 216│ raise UploadError(e)
217│
218│ def _do_upload(
219│ self, session, url, dry_run=False
220│ ): # type: (requests.Session, str, Optional[bool]) -> None
geudrik - 对于 PyPI 部署,本地配置 (.pypirc) 应使用 API 端点定义为 http://pythonpublishtest.com/artifactory/api/pypi/test-pypi-local
/api/pypi 是必需的端点,test-pypi-local 我在 URL 这里是本地仓库。出现 HTTP 405 和 HTTP 415 错误的原因可能是 missing/incorrect API 端点或缺少部署存储库。
我看到您正在尝试使用以下 URL (https://my-cool-reg.my.domain/artifactory/api/pypi/pypi/simple/
) 进行发布。您能否从 URI 中删除“简单”并包含您的 PyPI 本地存储库的名称并验证是否有效?
[补充说明]
Artifactory 还支持通过虚拟存储库部署工件。为了启用它,我们需要定义要由虚拟存储库聚合的本地存储库作为部署目标。可以通过在虚拟存储库设置下设置默认部署存储库来实现。
老天,我已经弄明白了
$ poetry config repositories.poetry-repo-name https://artifactory.domain.lan/artifactory/api/pypi/your-cool-repository
我正在使用诗歌 (1.1.12) 发布到我们的 Artifactory 实例。我已经尝试了几个不同的 URL 来发布,我要么得到 405(不允许的方法),要么得到 415(不支持的媒体类型)
https://my.domain/artifactory/my-cool-reg/ --> 405
https://my-cool-reg.my.domain/artifactory/api/pypi/pypi/simple/ -> 415
我是否缺少一些让出版继续进行的魔法?我尝试在 CLI 上使用 -u
和 -p
传递我的凭据,以及通过 -r my_repo
为 repository
传递凭据配置。下面是一个示例错误消息(来自 pypi url 测试)
UploadError
HTTP Error 415: Unsupported Media Type
at ~/.local/share/pypoetry/venv/lib/python3.10/site-packages/poetry/publishing/uploader.py:216 in _upload
212│ self._register(session, url)
213│ except HTTPError as e:
214│ raise UploadError(e)
215│
→ 216│ raise UploadError(e)
217│
218│ def _do_upload(
219│ self, session, url, dry_run=False
220│ ): # type: (requests.Session, str, Optional[bool]) -> None
geudrik - 对于 PyPI 部署,本地配置 (.pypirc) 应使用 API 端点定义为 http://pythonpublishtest.com/artifactory/api/pypi/test-pypi-local
/api/pypi 是必需的端点,test-pypi-local 我在 URL 这里是本地仓库。出现 HTTP 405 和 HTTP 415 错误的原因可能是 missing/incorrect API 端点或缺少部署存储库。
我看到您正在尝试使用以下 URL (https://my-cool-reg.my.domain/artifactory/api/pypi/pypi/simple/
) 进行发布。您能否从 URI 中删除“简单”并包含您的 PyPI 本地存储库的名称并验证是否有效?
[补充说明] Artifactory 还支持通过虚拟存储库部署工件。为了启用它,我们需要定义要由虚拟存储库聚合的本地存储库作为部署目标。可以通过在虚拟存储库设置下设置默认部署存储库来实现。
老天,我已经弄明白了
$ poetry config repositories.poetry-repo-name https://artifactory.domain.lan/artifactory/api/pypi/your-cool-repository