curl - 无法使用curl上传到具有正确文件名的通用存储库

标签 curl artifactory

我有一个加载了一些脚本和 jar 的 gzip 文件。我尝试使用以下命令将其上传到 Artifactory 通用存储库

 curl --insecure -uvaib:AP6yNYCePVfi5Ej8cXx1vq2SuFs -T "./deploy.tar.gz" "https://artifactory.service.apz/artifactory/EVC_Release/AC_2017_11a/deploy.tar.gz"

我收到以下错误消息。

{
  "errors" : [ {
"status" : 400,
"message" : "Parent AC_2017_11a must be a folder"
 } ]

如果我从末尾删除 Artifactory 的名称,它会上传,但文件名会变成包名称

我正在查看的结构是 EVC_Release --> 具体版本名称 --> gzip 文件。

Artifactory 中的选项或我的配置有问题吗?

最佳答案

您首先需要创建文件夹。

所以你应该有 2 个命令:

 curl -uvaib:AP6yNYCePVfi5Ej8cXx1vq2SuFs -X PUT "https://artifactory.service.apz/artifactory/EVC_Release/AC_2017_11a"
 curl --insecure -uvaib:AP6yNYCePVfi5Ej8cXx1vq2SuFs -T "./deploy.tar.gz" "https://artifactory.service.apz/artifactory/EVC_Release/AC_2017_11a/deploy.tar.gz"

您不使用 JFrog CLI 的原因是什么?它比您想要实现的目标更强大且用户友好。 配置完成后,上传很简单:

jfrog rt upload ./deploy.tar.gz EVC_Release/AC_2017_11a/deploy.tar.gz

关于curl - 无法使用curl上传到具有正确文件名的通用存储库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47309864/

相关文章:

java - Jetty 的 HTTP/2 问题 - 无效的前言

php - 在 PHP 中使用带有 cURL 的 try/catch

linux - 解析json数据时文本编码错误

c++ - C++ 中的 Curl - 无法从 HTTPS 获取数据

node.js - 使用 Artifactory npm 支持

java - 如何获得与Artifactory Gradle存储库匹配的Gradle版本

swift - 等效的 Swift NSURLSession 或 Alamofire Curl 帖子

android - 尝试将本地 android 库模块发布到 Artifactory

http - nginx 没有那个文件或目录

docker - 尝试通过UI下载时, docker 中的Artifactory在文件上带有哈希符号(#)的情况下获得404