artifactory - 在部分回购中进行人工存档搜索?
问题描述
我有一个包含大量内容和大量 .zip 文件的人工服务器。Artifactory 支持档案搜索,允许您在档案中搜索特定文件。
问题是在使用 API 时,您只能指定文件名(或关键字)和 repo。问题是 repo 包含太多文件,以至于达到了最大点击数。当我知道通往有趣的 10% 的路径时,每次搜索所有内容也不是那么有效。
有谁知道是否可以使用 API 搜索部分存储库?我是否必须创建指向回购子集的虚拟回购?
任何想法表示赞赏!
解决方案
搜索和过滤存档条目的最简单和最有效的方法是使用JFrog CLI。有了它,您可以指定您的搜索模式并过滤掉不需要的结果。
jfrog rt s <repository name>/<repository path> --archive-entries=<path-in-archive>
例子:
jfrog rt s generic-local/food/* --archive-entries=cheese/milk.txt
# Results: pizza.zip
您还可以将File Specs用于更复杂的查询:
创建文件spec.json:
{
"files": [
{
"pattern": "generic-local/food/*",
"archiveEntries": "cheese/milk",
"exclusions": "*lasagne*"
},
{
"pattern": "thor/*",
"archiveEntries": "hammer"
}
]
}
运行以下命令:
jfrog rt s --spec=filespec.json
# Possible results: pizza.zip and weapon.zip
注意:要使用存档搜索,请确保选中Administration
|下的“启用存档搜索”。Artifactory
| General Settings
.
阅读更多:
推荐阅读
- batch-file - How to get most recent file in a directory without using a FOR loop?
- docker - Docker Desktop 4.1 Windows - 无法启动 - 一直显示“Docker 引擎正在启动”
- javascript - 为什么我的占位符不使用自动填充脚本?
- javascript - 跟踪删除的对象,在比较字符串中的两个对象数组后添加
- python - 希尔伯特谱的标度指数与傅里叶谱的指数不匹配
- reactjs - 反应应用程序无法读取公共文件夹中可用的 js 文件
- gazebo-simu - 配置 Gazebo 和 Simulink 以进行机械手机器人的联合仿真
- android - getStorageDirectory 的子列表在 Android 11 上始终返回 null
- reactjs - 使用 AWS Amplify + Github 部署 Tailwind 应用程序:“sh: tailwindcss: command not found”
- c# - 如何在流中编辑 xml 根名称?