云客户?
免费开始>
在MyJFrog中升级>
云的新功能>





概述

JFrog Artifactory支持与任何CI服务器的构建集成。Artifactory与构建生态系统的集成提供了重要的信息,通过部署的工件、依赖关系和构建环境的信息的可见性,这些信息支持完全可复制的构建。

Artifactory Build Integration提供了一组插件,您可以使用工业标准CI系统和构建工具,允许您:

  • 查看Artifactory中发布的所有构建。
  • 探索每个构建的模块,包括发布的工件和相应的依赖项。
  • 获取有关构建环境的信息。
  • 将特定构建中的所有构件和/或依赖项视为单个单元,并执行构建提升。
  • 在构建的上下文中搜索构件AQL文件规格
  • 通过定义构建保留来删除旧的工件。
  • 在CI服务器和Artifactory页面中的构建和工件信息之间具有双向链接。

在幕后,您的CI服务器的JFrog客户端执行这些主要任务:

  1. 解析Artifactory中解析存储库中的所有依赖项。
  2. 将所有工件部署到Artifactory。
  3. 从构建代理收集构建信息并将其保存在Artifactory中。


什么是Build-Info?

Build-info生成代理收集的所有信息,其中包括有关生成的详细信息。build-info包括项目模块、工件、依赖项、环境变量等的列表。当使用其中一个JFrog客户端构建代码时,客户端可以收集构建信息并将其发布到Artifactory。当构建信息发布到Artifactory时,所有发布的详细信息将在Artifactory UI中可见。

构建信息源代码和架构

生成构建信息的代码是打开的,并包含在build-info-go项目在GitHUb。build-info模式是可用的,并且是项目的一部分自述文件页面

支持的集成和插件

页面内容




JFrog按包类型构建产品

下表按包类型列出了JFrog Build产品,并带有直接指向相关产品的活动链接。


CI服务器

包类型 JFrog管道 JFrog CLI 詹金斯 竹子 TeamCity Azure DevOps GitHub的行为 Bitbucket都管道
通用的


柯南





码头工人



Podman







Kaniko








Gradle

艾薇




Maven

npm







NuGet



Python





检查的构建

您可以查看将其输出部署到JFrog平台的所有CI服务器项目构建页下应用程序模块下人工制品|构建

选择一个构建项以显示反映CI服务器中的构建历史的该构建的所有运行,以及完整的构建级别信息。

权限

要查看构建信息,您必须对某个存储库路径具有“读取”权限。

查看构建号信息

你可以选择构建名称|构建号向下钻取到特定的构建号。这将显示有关构建号的详细信息,并使您能够将其与以下各节中描述的另一个构建进行比较。

构建信息详细信息屏幕分为以下面板:

  • 水平面板顶部显示有关所选构建号的基本信息。
  • 构建细节。选择一个文件,在右侧面板中查看其详细信息。

有三类信息:

  1. 关于构建及其环境的一般构建信息。
  2. 构建模块和他们一起工件和依赖项
  3. JSON格式的构建信息的通用视图。

一般构建信息

水平面板显示有关构建的一般信息。

代理
管理构建的CI服务器
构建代理
所使用的构建工具的特定版本
开始
开始构建时的时间戳
持续时间
构建的持续时间
主要
触发此构建的因素。这可能是一个CI服务器用户,也可能是另一个构建
Artifactory主要
触发此构建的Artifactory用户

发布模块

Published Modules选项卡显示了作为构建结果发布到Artifactory中的模块,以及它们所包含的工件和依赖项的数量。

模块构件和依赖项

选择已构建的已发布模块将显示其构件和依赖项。通过单击相应的列标头,可以按类型或范围对这些列进行分组。

您可以单击任何项目直接下载,或单击其回购路径树浏览器

环境

Environment选项卡显示为所选构建定义的属性和环境设置的广泛列表。如果需要重新运行构建,可以使用它们精确地重现环境。

x光数据

X射线扫描需要Artifactory Pro X、Enterprise with Xray或Enterprise+许可证。

有关更多信息,请参见V查看构建中的x射线数据

问题

问题TAB显示有关构建中处理的问题的信息。目前支持该特性的CI客户端有:Jenkins、Bamboo和JFrog CLI。使用Jenkins CI时,如果要设置启用JIRA集成选项,即问题选项卡将显示本次构建已解决的所有JIRA问题。

构建差异

Diff选项卡允许您将所选的构建与任何其他构建进行比较。控件中选择构建号后选择要比较的构建字段中,Artifactory显示所检测到的构建之间的所有差异,包括添加的新工件、删除的依赖项、更改的属性等等。

版本历史

Release History选项卡显示提升信息。

构建信息JSON

通用的BuildInfo视图

此选项卡显示原始文件BuildInfoArtifactory中构建信息的JSON表示形式。这些数据可以通过REST API访问或用于调试,并且也是可用的在Artifactory OSS版本中。

有效的权限

显示生成级别上的用户、组或权限目标上下文中的权限列表。有关更多信息,请参见权限


管理构建

搜索构建

全局应用程序搜索包括一个专用的构建搜索栏,允许您搜索指定数据范围内的特定构建。

有关更多信息,请参见应用程序搜索


删除构建

您可以从UI中删除单个构建或多个构建,选择构建并单击删除或者将鼠标悬停在构建号上并单击删除

查看构建上的x射线数据

X射线扫描需要Artifactory Pro X、Enterprise with Xray或Enterprise+许可证。

JFrog Xray可以集成到组织的CI/CD管道中,以确保在流程的早期停止包含漏洞的构建作业。作为完全自动化过程的一部分,Xray接收有关CI服务器刚刚运行的构建的信息,然后对构建运行深度递归扫描,直至最深层的依赖关系,如果发现任何漏洞,Xray将向调用CI服务器返回指示。

对于构建号,您可以查看x射线扫描状态和严重级别,如果在中检测到漏洞应用程序模块下Artifactory | Builds | [build_name] | [build_number]

x光数据选项卡,您可以查看这些专用的x射线相关选项卡,并选择在构建上运行一组操作。有关每个选项卡的详细信息,请参见资源扫描结果分析

单击构建ID以查看构建号的详细x射线数据。


查看工件上的关联构建

中的工件时树浏览器,您可以看到与该工件相关联的所有构建,无论是直接的还是作为依赖项构建选项卡。

此外,如果您试图删除工件,您将收到一个警告,该构建将不再是可复制的。

即使您在Artifactory中移动或复制工件,工件与构建的关联也会保留,因为该关联链接到工件的校验和,无论其位置如何,校验和都保持不变。


Build-Info库

构建信息存储库,是一个本地存储库,存储您的构建信息json文件作为工件,为您提供:

  • 用户/组权限管理相当于在构建名称上使用包含/排除模式来管理存储库的权限
  • 构建信息复制对于其他实例,因为它们作为构件存储在存储库中
  • 改进的可访问性构建信息json文件和整体性能构建模块的

每当一个新的构建被上传到Artifactory(通过CI服务器插件,直接使用build REST API或从Artifactory UI)时,它将自动被部署到这个默认值artifactory-build-info存储库。

构建信息json文件应该上传到存储库的根目录。Artifactory将使用以下结构自动将它们放入存储库:artifactory-build-info>(构建名称)>[build number]-[部署时间戳].json

使用artifactory-build-info存储库

artifactory-build-info默认情况下,自动创建并使用存储库。它不能被移除。删除它将导致删除所有构建信息,并将重新创建一个新的默认构建信息存储库。

清理政策

如果您有现有的清理策略(在Artifactory User Plugins中定义),可以根据策略从本地存储库中删除工件,那么它们也会影响artifactory-build-info存储库和应相应更新。将此存储库从清除策略中排除,以确保不会删除构建信息文件。

查看artifactory-build-info存储库。

应用程序模块,点击人工制品|人工制品然后搜索artifactory-build-info存储库。

迁移到artifactory-build-info Repository

迁移过程可以通过以下系统属性进行配置。迁移可以在任何节点上运行。

属性名
函数
artifactory.migration.job.dbQueryLimit

(默认:100)

指定每次迁移作业查询数据库中存在但尚未包含在构建信息存储库值中的构建信息json项时应该检索的行数。

artifactory.migration.job.batchSize

(默认值:10)

构建信息json构件以批方式并发部署,然后启动一个睡眠周期。此属性指定每个批处理中工件的数量。

artifactory.build.info.migration.job.queue.workers

(默认值:2)
指定应该执行实际构建信息构件更新的并发线程的数量。

每个并发的工件更新都将导致从数据库读取构建信息json,然后将其上传到构建信息仓库。

artifactory.migration.job.sleepIntervalMillis

[默认值:5000毫秒]
指定在每批更新之后启动的睡眠周期的持续时间。

artifactory.migration.job.waitForCluster.sleepIntervalMillis

[默认值:300000毫秒]

只有当集群完全升级并且所有节点都运行相同的最低要求版本(6.6.0)时,才可以开始构建信息存储库迁移。

此参数指定主节点在每次检查所有其他节点的当前版本之间等待的时间。

  • 没有标签
版权所有©2023 JFrog Ltd.