我们使用 maven 作为构建技术,使用 nexus 作为存储库管理器。我想知道刚刚上传到存储库的内容并在存储库更新完成后执行一些操作。我怎么能做到这一点?
编写正在验证文件系统的侦听器并比较差异?如果工件已部署并且上传过程已完成,我如何知道状态?也许您知道其他一些解决方案?
我需要的所有存储库都位于 Linux 上。
更新,伙计们,我刚刚看到有可以用于此的 nexus 插件。您知道如何在 nexus 插件中获取更新事件吗?
谢谢你。
我们使用 maven 作为构建技术,使用 nexus 作为存储库管理器。我想知道刚刚上传到存储库的内容并在存储库更新完成后执行一些操作。我怎么能做到这一点?
编写正在验证文件系统的侦听器并比较差异?如果工件已部署并且上传过程已完成,我如何知道状态?也许您知道其他一些解决方案?
我需要的所有存储库都位于 Linux 上。
更新,伙计们,我刚刚看到有可以用于此的 nexus 插件。您知道如何在 nexus 插件中获取更新事件吗?
谢谢你。
要进一步详细说明 Manfred 的答案,请在此处查看病毒扫描示例插件:
https://github.com/sonatype/nexus-example-plugins/
它非常接近你想要的。请务必查看 nexus-2.3.x 分支,master 只能针对 2.4-SNAPSHOT 构建。
如果您使用的是持续集成 (CI) 服务器,则可以有一个构建/部署后任务来执行您似乎感兴趣的那种通知。
我没有深入研究 Nexus OSS API,但也许您也可以查看他们的 IRC 频道(#maven / #nexus on irc.codehaus.org)。
Nexus 支持大量不同的集成,为您提供不同的选择。他们是
在您的情况下,您只需订阅包含您感兴趣的事件的系统提要。在您的情况下,它可能是“所有存储库中的新部署工件”,例如http://yournexusserver:8081/nexus/service/local/feeds/recentlyDeployedArtifacts
只需使用可以定期轮询它的一些脚本或其他集成系统来监视该提要,然后执行您想要的任何操作。
如果你愿意,你当然可以把它转过来,写一个 Nexus 插件,通过内部 API 监听事件,然后从 Nexus 触发一个动作。选择在实施方面对您更容易的任何东西..
通过存储库查看系统提要 - 系统提要