覆盖/强制推送 gemfury 中的现有软件包版本
Posted
技术标签:
【中文标题】覆盖/强制推送 gemfury 中的现有软件包版本【英文标题】:Overwrite/force push an existing package version in gemfury 【发布时间】:2016-10-03 13:03:29 【问题描述】:我们正在使用 gemfury 来管理我们内部的 python 包发布。我现在面临的问题是 gemfury 不允许推送/覆盖相同的版本,这在处理生产版本时很好。在 dev/qa 构建的情况下,这很难管理。我们会在发布生产版本时增加版本和发布。
是否有可用于强制推送/覆盖包版本的标志?例如。如果有人向我的 QA 分支推送一些更改,我会构建分支并发布新版本,但我想始终将其称为版本“qa”。所以这样,我总是希望“qa”版本指向我的 QA 版本的最新版本。我有一份詹金斯的工作来做这件事。
我真的需要一个 api/flag 来覆盖现有版本,以完成我在自动化我们的开发和发布过程方面想要实现的目标。如果有类似的东西,请告诉我。
【问题讨论】:
您使用哪种语言和包管理器? Python 和 pip @Michael 【参考方案1】:您可以使用下面的 CLI 删除最新的包版本并继续新的上传 (source)
fury yank package-name -v 0.1.0
【讨论】:
【参考方案2】:这可能对您的事业没有帮助,但我从 Gemfury 网站上选择了我要升级的版本,将其删除,然后上传具有相同版本的新包。
我认为这样你也可以实现自动化。
【讨论】:
我需要通过 jenkins 自动执行此操作。现在我已经做了一个解决方法,将 jenkins 内部版本号添加到版本中。这使我的包始终在 gemfury 更新。就通过网站进行操作而言,我知道这一点。只是为了自动化,我必须对从他们的 Web UI 中删除包时发送的 ajax 请求进行逆向工程。以上是关于覆盖/强制推送 gemfury 中的现有软件包版本的主要内容,如果未能解决你的问题,请参考以下文章