我可以创建一个新的 Jfrog Artifactory 包类型插件吗?

Can I create a new Jfrog Artifactory package type plugin?

我想在 Artifactory 中存储 RTL 模块(主要是 VHDL 文件 - .vhd),并能够跟踪这些包与 Xray 和其他 Jfrog 服务的依赖关系。

我已经有了一个非常干净的 "package" 格式,我只想让 Artifactory 在上传时解析我的元数据文件,这些文件是该包的一部分,就像它在 debian 包中控制文件一样.

这可能吗?我从哪里开始?

既然您提到了 Xray,请务必注意 XRay 仅支持它所支持的某些类型的文件(并且这些文件必须驻留在受支持的存储库类型中)。我不确定您所说的“跟踪依赖项”是什么意思,但我应该指出,XRay 主要擅长扫描代码组件和识别漏洞。

要简单地跟踪依赖项(即有条理地知道哪些依赖项与某个包相关联),您可以使用各种构建信息集成。在这里阅读: https://www.jfrog.com/confluence/display/RTF/Build+Integration

如果您将文件与某个构建信息对象(存储构建相关信息的元数据对象)相关联,您将能够在 Artifactory UI 中跟踪构建工件和依赖项,甚至查询为他们使用 Artifactory Query Language。根据您使用的 CI 服务器,有多种选择(CI 插件),但通常所有 JFrog CI 插件都有相同的目的,即将您的内容上传到 Artifactory并跟踪构建元数据,例如构建依赖项。

关于你的问题,你没有详细说明你的最终目标,但你应该能够使用用户插件来实现这一目标。用户插件可用于扩展 Artifactory 的内置功能,并将您自己的业务逻辑添加到 Artifactory 中的过程(如文件部署)。您可以在此处阅读更多相关信息: https://www.jfrog.com/confluence/display/RTF/User+Plugins

我们的 public Github 存储库中有许多示例可能会有所帮助: https://github.com/JFrogDev/artifactory-user-plugins