使用API​​的Bintray Debian存储库创建和上传文件

xpt*_*xpt 1 debian curl bintray

我正在关注Bintray的Debian存储库中的步骤和答案 多个错误和意外行为

但是,我的Bintray Debian文件上传尝试仍然失败了:

{"message":"Unable to upload files: Debian distribution, component and architecture were not found on repo and were not specified"}
Run Code Online (Sandbox Code Playgroud)

这是我的curl命令:

curl -T libterm-screencolor-perl_1.09-1_all.deb -umyid:mybintraykey https://api.bintray.com/content/myid/myrepo/libterm-screencolor-perl/1.09-1/pool/main/l/libterm-screencolor-perl_1.09-1_all.deb;deb_distribution=all;deb_component=main;deb_architecture=i386,amd64;override=1
Run Code Online (Sandbox Code Playgroud)

基本上我得到与Bintray上的Debian存储库完全相同的错误 多个错误和意外行为 ,原因完全相同.

所以我决定从头开始,首先通过API创建Bintray Debian存储库.
这是我的代码:

curl -umyid:mybintraykey https://api.bintray.com/repos/myid/deb -d '{"name":"deb","type":"debian","default_debian_architecture":"amd64","default_debian_distribution":"all","default_debian_component":"main","private":false,"desc":"This repo...","business_unit":"businessUnit1","labels":["label1","label2"],"gpg_sign_metadata":false,"gpg_sign_files":false,"gpg_use_owner_key":false}'
Run Code Online (Sandbox Code Playgroud)

我没有错误,但也没有回应.当我从Bintray Web UI检查时,未创建存储库.试图添加"version_update_max_days" : 60到JSON也无济于事.

怎么了?

Roy*_*oyg 5

上传文件:
您的curl命令需要引号,请参阅此答案.

创建存储库:
您的curl命令缺少媒体类型,在这种情况下应该是 -H "Content-Type: application/json".curl在详细模式下运行命令总是好的-v

以下是您的curl命令应如何:

curl -umyid:mybintraykey https://api.bintray.com/repos/myid/deb -H "Content-Type: application/json" -d '{"name":"deb","type":"debian","default_debian_architecture":"amd64","default_debian_distribution":"all","default_debian_component":"main","private":false,"desc":"This repo...","business_unit":"businessUnit1","labels":["label1","label2"],"gpg_sign_metadata":false,"gpg_sign_files":false,"gpg_use_owner_key":false}' -v
Run Code Online (Sandbox Code Playgroud)