0

根据这张票 - https://www.jfrog.com/jira/browse/RTFACT-16378 旧的 Artifactory 不支持 Bionic Debian Repos。我们正在尝试解决这个问题,在上传 *.deb 文件后,我们会生成 Packages 文件并将它们上传到 Artifactory。

dpkg-scanpackages . | tee Packages
bzip2 -k Packages
gzip -c Packages > Packages.gz

但是,由于“发布”文件未更新并包含旧的校验和值,因此存在问题。我们试图重新索引存储库,但该命令也重新索引“包”文件。:(

# Reindex debian repo, Regenerate Release files
curl -u $JFROG_USER:$JFROG_PASS -X POST $ARTIFACTORY_URL/api/deb/reindex/$REPOSITORY

有什么办法可以克服这个 Jfrog 错误吗?

4

2 回答 2

1

我们将该解决方案用作解决方法:https ://github.com/utopia-repository/qt5ct/commit/c5229c6e938f76397401da695f8deaabede97b4d

添加到 debian 规则文件:

override_dh_builddeb:
    # Temporary workaround for https://github.com/smira/aptly/issues/655
    dh_builddeb -- -Zgzip

该解决方案在 debian 创建过程中强制 gzip 压缩。

于 2018-11-11T07:53:05.500 回答
0

当 Artifactory 运行索引操作(或重新索引)时,它将:

  1. 收集所有相关的 deb 包进行索引
  2. 建立所有packages索引
  3. 建立Release索引
  4. 填充按哈希获取的文件夹层次结构

简而言之,您不能放置包索引和重新索引 - Artifactory 将覆盖您部署的文件。

如果可能,您还可以计算发布索引并部署它,但请注意,在您对该存储库进行的任何部署中,索引将被 Artifactory 的索引操作覆盖。

您可以通过在 a 中复制索引文件结构generic repo并在那里部署您自己的索引来解决此问题(您还需要存在 deb 文件以便能够下载它们),但这确实是一种过度杀伤。

对您来说最好的解决方案就是升级到修复了这个错误的 6.1.0。

于 2018-11-09T21:35:26.037 回答