用于多个发行版的Bintray Debian存储库

用于多个发行版的Bintray Debian存储库,debian,bintray,Debian,Bintray,使用OSS Bintray: 尝试上载特定发行版的deb文件时,该文件将上载到“dists/all”,而不是dists/xenial。 以下是我的命令: 创建回购协议: curl -uUSER:API_KEY https://api.bintray.com/repos/myorg/Debian -H "Content-Type: application/json" -d '{"name":"Debian","type":"debian","default_debian_architecture"

使用OSS Bintray:
尝试上载特定发行版的deb文件时,该文件将上载到“dists/all”,而不是dists/xenial。
以下是我的命令:
创建回购协议:

curl -uUSER:API_KEY https://api.bintray.com/repos/myorg/Debian -H "Content-Type: application/json" -d '{"name":"Debian","type":"debian","default_debian_architecture":"amd64","default_debian_distribution":"all","default_debian_component":"main","private":false,"desc":"This repo for our poc","business_unit":"businessUnit1","labels":["label1","label2"],"gpg_sign_metadata":false,"gpg_sign_files":false,"gpg_use_owner_key":false}' -v
然后我通过UI创建了一个包“Test”,并将debian文件上传到“Test”中:


有没有办法对所有发行版(xenial/bionic)和所有体系结构使用一个回购协议?

是的,您可以为所有Debian发行版和体系结构使用一个存储库。
您需要在命令中使用逗号分隔的值提交分布和体系结构。应该是这样的:

curl -T your_file.deb -u user:api_key "https://api.bintray.com/content/:subject/:repo/:package/:version/:file_path;deb_distribution=xenial,bionic;deb_component=main;deb_architecture=amd64"

这就是我所做的。您可以在原始问题中看到我的命令:deb_distribution=xenial。但是,文件已添加到dists/all,而不是预期的“xenial”下。是否链接到存储库?注意,我没有发布文件yetno,在“设置我”中没有引号。不管怎样,当我现在尝试使用或不使用它们时,我得到了一个错误:“未能连接到api.bintray.com端口443:超时”。可能是一些网络问题……加上引号,它应该会起作用,请参见我的示例。在使用特殊字符时,需要使用带curl的引号。
curl -T your_file.deb -u user:api_key "https://api.bintray.com/content/:subject/:repo/:package/:version/:file_path;deb_distribution=xenial,bionic;deb_component=main;deb_architecture=amd64"