问题标签 [artifactory-query-lang]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
320 浏览

artifactory - Artifactory 查询语言:查找构建的依赖项

在 Artifactory 中,我有一个 build foo,它使用 build 生成的依赖项bar

我想列出bar那些被用作依赖项以foo在 job number 处构建的文件42

我如何在 Artifactory Query Language 中请求这个?

到目前为止,我试过这个:

看起来它通常返回构建“foo”的依赖项,但返回的依赖项比正确的要多得多(当我知道foo总共只获得 10 个依赖项时,我得到了 200 多个依赖项,所有这些依赖项都来自bar)。

此外,我注意到由于某种原因我无法显示这些依赖项的构建名称:

添加.include("artifact.module.build.name")到我的请求中,就像在这个答案中一样,会导致响应为空。

编辑:对于最后一个问题,看起来我需要.include("@build.name")改用。

0 投票
1 回答
772 浏览

artifactory - jfrog rt 搜索中的 Artifactory AQL:包含字段

相关:Artifactory aql:查找具有给定属性的工作版本

如博客中所述,我想使用 Jfrog CLI 使用此 AQL 查询 Artifactory:

我对文件规范的理解是它应该遵循这些原则:

但是,我不确定如何请求该artifact.module.build.number属性。如何.include("artifact.module.build.number")在请求中使用与 cURL 相同的行为?

0 投票
1 回答
180 浏览

artifactory - 使用 AQL 查找未下载任何工件的构建

出于清理目的,我目前正在尝试构建一个 AQL 查询,该查询列出所有未下载所有相应工件的构建。这就是我现在所拥有的:

这样做的问题是我得到的所有构建都包含一个没有下载但可能会下载其他工件的单个工件。所以我需要为每个构建做另一个查询来确定所有工件的下载计数。

有没有办法告诉 AQL 构建的所有工件都必须匹配查询?

0 投票
2 回答
1541 浏览

groovy - 如何使用 Artifactory 的校验和 API 获取工件文件的 URI,其中多个工件具有相同的 SHA-1 / SHA-256 值,也就是文件的内容

神器版本:5.8.4

在 Artifactory 中,文件通过文件的校验和 (SHA1) 存储在内部数据库中,出于检索目的,SHA-256 很有用(用于验证文件是否完整)。

首先阅读:https ://www.jfrog.com/confluence/display/RTF/Checksum-Based+Storage

假设有 2 个 Jenkins 作业,它们创建的工件/文件(rpm/jar/etc)很少。就我而言,我将采用一个简单的 .txt 文件,它以 MM/DD/YYYY 格式存储日期和其他一些 jobA/B 特定的构建结果文件(jars/rpms 等)。

如果我们只关注文本文件(如上所述),那么:

Jenkins_jobA > 生成 jobA.date_mm_dd_yy.txt

Jenkins_jobA > 生成jobB.date_mm_dd_yy.txt

Jenkins jobA 和 jobB 每天运行多次,没有给定的运行顺序。有时jobA首先运行,有时jobB。

由于两个作业的文件内容基本相同(每天),jobA 的 .txt 文件和 jobB.txt 文件上的 SHA-1 值将相同,即在 Artifactory 中,两个文件都将存储在前 2 个字符中目录文件夹结构(根据基于校验和的存储机制)。

基本上在 Linux 的两个文件上运行 sha1sum 和 sha256sum 会返回完全相同的输出。

随着时间的推移,这些工件(.txt 等)从一个存储库提升到另一个存储库(提升过程,即从快照 -> 阶段 -> 发布存储库),所以我目前用 Groovy 编写的逻辑是找到位于后面的工件的URI下面列出了“虚拟”存储库(其中包含一组按某种顺序排列的物理本地存储库):

我担心的是,由于两个文件(即使名称不同-or file-<versioned-timestamp>.txt)在其中具有相同的内容并且每天生成多次,我如何才能为 jobA 或 jobB 下载特定版本的文件?

在 Artifactory 中,包含相同内容的所有文件的 SHA_256 属性将相同!!(Artifactory 将使用 SHA-1 有效地存储这些文件以节省空间,新的上传将只是对用户透明的最小数据库级事务)。

问题:

  1. 上述逻辑是否会返回jobA的文件或jobB的.txt文件或任何Job的.txt文件,它首先上传它的文件或latest/acc。到 LastModified -aka- 最后上传时间?

  2. 如何为给定的时间戳下载 jobA 的 .txt 文件和 jobB 的 .txt 文件?

  3. 我需要在我的休息 Api 调用期间添加更多属性吗?

如果我只是关心文件内容,那么无论它来自 JobA .txt 还是来自作业的 .txt 文件都没有多大关系(取决于 sha-1/256),但在复杂的情况下,文件名可能包含他们想知道的有意义的信息,以找到下载的文件(A / B)!

0 投票
1 回答
55 浏览

artifactory - 从 json 创建多个工件存储库

我想通过 .json 文件自动化从另一个 Artifactory 导入现有存储库结构的过程。到目前为止,我已经设法使用以下命令从 json 制作单个 repo。

有没有办法从单个 json 文件和单个 curl 导入多个/数组存储库?

0 投票
1 回答
559 浏览

artifactory - 如何使用 AQL 检索所有 docker 镜像的最新版本

我试图弄清楚如何使用 AQL 检索存储在 Docker 存储库中的每个图像的最新版本。以下代码为我提供了所有版本,但我找不到为每个资产仅获取最新版本的方法。

谢谢!安德烈

0 投票
2 回答
2064 浏览

maven - Is there any automated way to get artifact download URL back from artifactory?

Is there any automated way to get artifact download URL back ?

I'm working with maven projects , I use bamboo for build automation.

After successful Build completion, artifacts will be pushed Jfrog artifactory.

My requirement here is to get the artifact download URL back in an automated way(Using bamboo Plugins, Rest API, Jfrog CLI, Maven or any other)

0 投票
1 回答
279 浏览

rest - 在 Artifactory 中获取包类型的存储库总数。

是否有任何 API 可以获取 JFrog Artifactory 中特定包类型的存储库总数?例如:maven 存储库总数、npm 存储库总数等。我需要每个存储库的总数基于它们的包类型。

0 投票
1 回答
280 浏览

groovy - 按版本计数的工件清理脚本

脚本可以删除在指定时间段内未下载的工件。但是我通常有必要保留工件的最后 10 个版本(按日期)并删除其他版本。如何解决这个问题?我需要概念或代码示例。

0 投票
1 回答
1948 浏览

artifactory - Artifcatory REST API 列出所有存储库

我正在寻找一个可以列出所有 repo-keys的人工 REST API 。如果它可以提供更多信息,那就太好了。

我查阅了 Artifactory REST API 文档,但找不到。

我错过了什么吗?还有其他选择吗?