【发布时间】:2015-05-20 01:52:04
【问题描述】:
第一季度:
我有一个启用了 Artifactory PyPi 的 repo my-pypi-repo,我可以在其中发布我的包。通过 python setup.py -sdist 上传时,我得到这样的结构:
my-pypi-repo|
|my_package|
|x.y.z|
|my_package-x.y.z.tar.gz
问题是这个结构不会匹配 Artifactory 中任何“允许”的 repo 布局,因为 [org] 或 [orgPath] 是强制性的:
模式 '[module]/[baseRev]/[module]-[baseRev].[ext]' 必须至少 包含标记“module”、“baseRev”和“org”或“orgPath”。
我设法通过将包名称“破解”到myorg/my_package 来发布到路径,但是 pip 找不到它,所以它很有用。
第二季度: 有没有人尝试过使用 Artifactory 推广 Python 的“ci-repo”和“releases-repo”?
我想要达到的目标:
CI 回购:
my_package-1.2.3+build90.tar.gz 当这个工件被提升时,构建元数据被删除
发布回购:
my_package-1.2.3.tar.gz
我可以通过 repo 布局来实现这一点(前提是我解决了 Q1)。问题是如何处理我的 Python 脚本中的“嵌入式”版本,在 setup.py 中硬编码。
为了获得最佳实践,我宁愿不再重新构建包。
【问题讨论】:
标签: python artifactory