【问题标题】:Sonatype Nexus: synchronous REST callsSonatype Nexus:同步 REST 调用
【发布时间】:2016-07-23 07:51:20
【问题描述】:

我使用 Nexus 作为我的项目的存储库,我使用 Jenkins 作为我的 CI 协调器。

在我的 Jenkins 作业结束时,我调用 Nexus REST API 来重建 Maven 元数据,以便可以更新有关每个组件的最新版本的信息。当执行 REST 调用时,它立即返回,但更新任务实际上在 Nexus 中排队并最终被执行。

由于我有多个并行运行的作业,当其中一个组件尝试从 Nexus 提取依赖项而 Maven 元数据尚未完成刷新时,有时构建会遇到一种竞争条件 -因此,即使新版本已经存在并且元数据即将刷新,也会从 Nexus 中提取旧版本。

防止这种情况的一个好方法是使此调用同步,即阻止构建,直到实际重建 Maven 元数据。

当然,我可以通过在循环中轮询 Nexus 以获取组件的最新版本,直到它被更新来以编程方式执行此操作。但是,我想知道是否有办法使用 Nexus API 来做到这一点。想法?

【问题讨论】:

标签: jenkins nexus


【解决方案1】:

经过大量研究,我找不到任何关于此的文档,也没有在这里得到回复。我通过编程检查 Maven 元数据直到它被更新解决了这个问题。

【讨论】:

    猜你喜欢
    • 2016-02-19
    • 2013-11-19
    • 2018-05-19
    • 2013-07-21
    • 1970-01-01
    • 2014-05-20
    • 2017-07-04
    • 2014-10-05
    • 2017-03-14
    相关资源
    最近更新 更多