问题标签 [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 回答
124 浏览

artifactory - 定义日期类型的自定义属性并在查询中使用它

Artifactory 的专业版允许为工件定义自定义属性。通常,这些是键/值对,其中值是字符串。

是否也可以使用日期(或数字)作为值?

我想用日期定义一个像“doNotUseAfter”这样的属性。然后我想使用 Artifactory 查询语言来找出哪些工件的 doNotUseAfter 日期已经过去。

0 投票
1 回答
630 浏览

artifactory - 如何在文件规范中更改 AQL 查询的包含部分

我想更改格式化为 Artifactory 的文件规范的 AQL 字符串的输出。

查询如下所示:

在纯 AQL REST API 调用中,我将包括以下内容:

但是在使用时,它并没有传入查询的正确部分,从而导致以下错误消息:

如何格式化 AQL 以使包含语句也通过?

0 投票
1 回答
124 浏览

artifactory - 强制 Artifactory 在搜索时使用数值比较?

我正在尝试查找 RPM 包的最新(或最早,取决于比较运算符)版本(RPM 位很重要)。我正在使用与此类似的 AQL 查询:

正如 Artifactory KnowledgeBase 已经回答的那样,不可能对 properties 进行排序,因此,我必须在子句中使用 property 条件,而不是仅仅使用排序@rpm.metadata.version并获取第一个最高结果。.limit(1)find

虽然 Artifactory 的内置比较似乎是纯粹的字典,所以对于上面的查询,我得到以下结果:

此结果包括版本 19.300.0.9,根据 RPM spec,该版本比我正在搜索的版本 (>= 19.300.0.58) 旧,不应包含在结果中,但 Artifactory 仍然找到它,很可能是由于它的搜索比较是字典式的。

还要注意结果的排序,这似乎使用数字排序(版本“19.300.0.9”在“19.300.0.58”和“19.300.0.59”之前)。

问题:是否可以强制 Artifactory在搜索条件中使用数字( SemVer )比较?如果没有,有没有其他方法可以从结果列表中排除不相关的版本?

0 投票
1 回答
135 浏览

artifactory - 上传到工件后,是否可以向多个文件添加属性?

正如标题所说。由于对如何最好地查询工件中的文件缺乏了解,我现在遇到了一种情况,即我有几百个文件需要添加相同的属性。这可以批量完成吗?
文件夹结构如下所示:

每个子文件夹可以有大约 5 个文件,每个语言文件夹可以有很多子文件夹。

0 投票
2 回答
303 浏览

artifactory - 是否可以为工件使用任何外部或第 3 方存储系统?

我们正在寻找配置 jFrog Artifactory 以与其他对象存储系统一起使用的可能性......

是否可以?如果可以,请指导一下?

0 投票
1 回答
51 浏览

artifactory - 我想通过 AQL 读取存在于工件(.jar)中的文件而不下载工件

如何在不将工件下载到本地的情况下阅读工件的内容?

我只想运行一个读取或提供特定文件内容的 AQL。

我怎样才能实现它?

0 投票
1 回答
83 浏览

repository - 如何过滤和删除自 2 年以来未更新的工件存储库

我想过滤所有自 2 年以来未更新的存储库。这怎么可能?

0 投票
1 回答
2082 浏览

groovy - Artifactory - 删除超过 20 天的工件

我正在尝试将 Jenkins 与Artifactory. 我有一个用于定义 Jenkins 管道作业的 groovy 脚本。在 上Artifactory,我有一个包含许多子文件夹的项目存储库。对于每个 Jenkins 新版本,都会在Artifactoryrepo 中创建一个新文件夹。这个想法是我不知道如何删除超过 20 天的文件夹和内容工件。我曾经AQL检索它们,但我不知道如何删除我检索到的内容。我无法使用Artifactory Cleanup Plugin,因为我无权在平台上安装它。

谢谢

0 投票
0 回答
349 浏览

maven - Artifactory AQL 能否返回模块依赖项的实际工件路径/名称?

我们使用 Jenkins Maven 构建将工件及其构建信息发布到 Artifactory,并且可以使用 AQL 查询已发布工件的依赖项。是否可以指定 AQL 来为我们提供依赖项的实际工件 repo/path/name?

查询“artifact.module.dependency”仅返回“dependency”直接支持的字段(https://www.jfrog.com/confluence/display/RTF/Artifactory+Query+Language#ArtifactoryQueryLanguage-EntitiesandFields)。查询“artifact.module.dependency.item”只会模仿我们询问的原始工件。

AQL:

结果:

我们希望通过查询获得的是依赖项的实际 repo/path/name,例如 'isone-app-staging/com/isone/sms/server/ejb_FCMBatchBeans-api/40-dry-run-4/ ejb_FCMBatchBeans-api-40-dry-run-4.jar'。

如果我们不能直接从搜索中获得这些信息,我们可能会抓取dependency.name 和dependency.type 并尝试重建它。但如果我们可以只依赖 Artifactory,它会更有用。

0 投票
1 回答
53 浏览

artifactory - 如何将 Artifactory aql 查询限制到特定存储库?

我有这个有效的 aql 查询:

它返回我期望的所有结果。但是,此查询会在每个存储库中查找包含这些属性的文件。
如何将搜索限制在特定存储库?