云客户?
免费开始>
在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服务器项目构建应用程序模块下Artifactory |构建

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

权限

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

查看版本号信息

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

Build Info Details屏幕分为以下几个面板:

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

有三类信息:

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

一般建造资料

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

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

发布模块

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

模块工件和依赖项

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

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

环境

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

x光数据

X射线扫描需要Artifactory Pro X、带X射线的企业或企业+许可证。

更多信息,参见V查看build上的x射线数据

问题

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

构建差异

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

版本历史

“发布历史”选项卡显示促销信息。

构建信息JSON

通用的BuildInfo视图

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

有效的权限

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


管理构建

搜索构建

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

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


删除构建

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

查看构建上的x射线数据

X射线扫描需要Artifactory Pro X、带X射线的企业或企业+许可证。

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

中检测到漏洞时,可以查看x射线扫描状态和严重级别应用程序模块下构建| [build_name] | [build_number]

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

单击生成ID可查看生成号的详细x射线数据。


查看工件上的关联构建

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

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

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


Build-Info库

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

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

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

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

使用人工构建信息存储库

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

清理政策

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

查看artifacts -build-info存储库:

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

迁移到人工构建信息存储库

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

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

(默认:100)

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

artifactory.migration.job.batchSize

(默认值:10)

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

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

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

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

artifactory.migration.job.sleepIntervalMillis

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

artifactory.migration.job.waitForCluster.sleepIntervalMillis

[默认值:300000毫秒]

只有当集群完全升级并且所有节点运行相同的最低要求版本(6.6.0)时,build-info存储库迁移才能开始。

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

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