bintray:无法上传文件:无法提取工件的元数据(来自.deb)

时间:2018-01-18 21:08:52

标签: debian deb bintray

我使用Bintray作为APT debian存储库,之前工作正常。 但是在上传debian软件包(.deb文件)时我现在遇到了一个问题

Push to https://api.bintray.com/content/amurzeau/streamlink-debian/streamlink/0.9.0-59-g9435397+dfsg-1/pool/main/s/streamlink/livestreamer_1.12.2+streamlink+0.9.0-59-g9435397+dfsg-1_all.deb;deb_distribution=experimental;deb_component=main;deb_architecture=amd64,i386;publish=0;override=1
Response: {"message":"Unable to upload files: Could not extract metadata for artifact 'pool/main/s/streamlink/livestreamer_1.12.2+streamlink+0.9.0-59-g9435397+dfsg-1_all.deb', content might be malformed."}

我发现该问题与.deb文件的内容有关:

  • 如果.deb文件包含control.tar.gzdata.tar.gz,则可以使用
  • 如果.deb文件包含control.tar.xzdata.tar.xz,则会失败

所以问题:

  • bintray是否支持使用XZ压缩control.tar.xzdata.tar.xz的.deb包?
  • 或者我需要做些什么来解决错误(除了告诉dpkg-deb使用GZ压缩而不是XZ)?

注意:要从.changes文件中将debian包推送到bintray,我使用这个脚本https://github.com/amurzeau/debian-travis/blob/c1aa5e895dc78ad44b8ae76a89871af3b93a6e23/travis-build/bintray_upload_changes.py

1 个答案:

答案 0 :(得分:0)

区别在于indeed与.deb的内容有关,后者是确切的压缩方法。

到目前为止,Bintray仍不支持在Ubuntu 18.04上创建的软件包。

通过在debian / rules文件中为possible to workaround this issue指定选项来dh_builddeb

override_dh_builddeb:
        dh_builddeb -- --no-uniform-compression