云客户?
开始免费>
升级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生成代理收集的所有信息,其中包括关于生成的详细信息。构建信息包括项目模块、构件、依赖项、环境变量等列表。当使用JFrog客户端构建代码时,客户端可以收集构建信息并将其发布到Artifactory。当构建信息发布到Artifactory时,所有发布的细节都在Artifactory UI中可见。

构建信息源代码和架构

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

支持的集成和插件

页面内容




JFrog根据包类型构建产品

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


CI服务器

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


柯南





码头工人



Podman







Kaniko








Gradle

艾薇




Maven

npm







NuGet



Python





检查的构建

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

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

权限

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

查看版本号信息

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

“构建信息详细信息”屏幕分为以下几个面板:

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

信息分为三类:

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

通用构建信息

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

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

发布模块

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

模块构件和依赖项

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

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

环境

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

x光数据

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

更多信息请参见第五章查看build上的x射线数据

问题

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

构建差异

DiffTAB允许您将所选构建与任何其他构建进行比较。中选择一个版本号后选择要比较的构建字段,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光数据选项卡,您可以查看这些专用的Xray相关选项卡,并选择在构建中运行一组操作。有关每个选项卡的详细信息,请参见资源扫描结果分析

单击一个生成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存储库和应相应更新。从清理策略中排除此存储库,以确保不删除构建信息文件。

查看artifact -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)时,构建信息存储库迁移才能开始。

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

  • 没有标签
版权所有©2022 JFrog有限公司