在JFrog Artifactory中使用Webhooks实现自动化

你(可能)已经知道了Artifactory,作为您的存储库管理器在你的生活中起着至关重要的作用CI / CD管道通过弥合开发和运营之间的差距。现在,我们为您提供了使用带有Artifactory的webhooks来进一步自动化流程的选项。继续阅读…
首先,什么是webhook ?
用最简单的术语来说,webhook是一种自动通知机制,由您根据自己的优先级定义的事件触发。当webhook被触发时,它会将事件的相关信息发送到正在侦听该特定事件通知的web位置(稍后我会给出一个示例)。因此,webhook由三个简单的组件组成——触发事件、关于事件的信息(“负载”)和侦听事件的web位置。
举个简单的例子,假设您是团队a的一员,并且您已经在Artifactory中完成了一个新的Docker标记(这是“事件”)。当然,团队B需要关于新构建的标签的信息(“有效载荷”)。使用webhooks和Artifactory,您可以配置一个自动通知到团队B的构建服务器(监听事件的位置),只要组件可用,就自动触发团队B的构建,其中包括这个新信息。现在,对于这个特定的任务,团队之间不需要人工交互。
我不能等待源代码提交更改吗?
你当然可以,这是实现同样目标的一种方法。您还可以为两个团队使用相同的构建服务器,以避免任何错误。但这在现实中并不总是可能的,因为不同的团队可能使用不同的构建服务器,不同的源代码控制服务器,并且通常在地理上是分开的。这就是Artifactory(带webhook !)的作用所在,作为依赖关系的来源和跨团队完成的组件的目的地。
使用Artifactory webhook插件
您可能已经准备好开始在Artifactory中使用webhook了。这是一个简单的插件。
你可以找到webhook插件,以及我们网站上其他由社区驱动、jfrog维护的用户插件公共Github.webhook插件允许大量的配置选项开箱即用,包括监听多个事件(比如创建一个新的Docker标签),过滤特定的存储库和指定包格式。这一切都可以通过一个简单、易于阅读的配置文件来完成。如果您愿意亲自动手编写Groovy代码,还可以进一步定制它,创建自己的格式化器或添加更多可以触发webhook的事件。
安装插件也很简单,只需将插件放入Artifactory的插件目录中,添加配置以指定触发webhook的事件,就可以了。
| 专业技巧不需要重新启动Artifactory。使用重载插件API调用. |
附赠:webhook也适用于人类
Webhooks不仅仅是帮助您自动化部分CI/CD的好方法。它们对我们人类也很有帮助。例如,你可以设置一个webhook,通知开发者的Slack频道新版本刚刚发布。如果受保护存储库中的文件被删除或修改,可以使用它来提醒您。你可以用它来完成无数其他有用的任务——webhook让事情变得简单。