如何使用REST API部署具有Maven布局的工件?

Me S Mehdi

我可以使用以下命令进行常规部署

curl -i -X PUT -u $artifactoryUser:$artifactoryPassword -T /path/to/file/file.zip http://localhost/artifactory/simple/repo/groupId/artifactId/version/file.zip

但是,这不会解决或更新工件上的Maven布局。有没有不使用artifactory-maven插件就可以上传的方法?

Me S Mehdi

我找到了解决这个问题的方法。

使用的语法:

curl -i -X PUT -K $CURLPWD "http://localhost/artifactory/$REPO/$groupId/$artifactId/$versionId/$artifactId-$versionId.$fileExt"

最后编写了一个脚本,以便将md5和sha1值与文件一起上传,否则,我不得不进入Artifactory并手动对其进行修复。

#!/bin/bash

usage() {
        echo "Please check the Usage of the Script, there were no enough parameters supplied."
        echo "Usage: ArtifactoryUpload.sh localFilePath Repo GroupID ArtifactID VersionID"
        exit 1
}

if [ -z "$5" ]; then
        usage
fi

localFilePath="$1"
REPO="$2"
groupId="$3"
artifactId="$4"
versionId="$5"

ARTIFAC=http://localhost/artifactory

if [ ! -f "$localFilePath" ]; then
        echo "ERROR: local file $localFilePath does not exists!"
        exit 1
fi

which md5sum || exit $?
which sha1sum || exit $?

md5Value="`md5sum "$localFilePath"`"
md5Value="${md5Value:0:32}"

sha1Value="`sha1sum "$localFilePath"`"
sha1Value="${sha1Value:0:40}"

fileName="`basename "$localFilePath"`"
fileExt="${fileName##*.}"

echo $md5Value $sha1Value $localFilePath
echo "INFO: Uploading $localFilePath to $targetFolder/$fileName"

curl -i -X PUT -K $CURLPWD \
-H "X-Checksum-Md5: $md5Value" \
-H "X-Checksum-Sha1: $sha1Value" \
-T "$localFilePath" \
"$ARTIFAC/$REPO/$groupId/$artifactId/$versionId/$artifactId-$versionId.$fileExt"

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使maven-metadata.xml具有与通过maven部署的工件相同的时间戳?

如何使用 REST API 从 jfrog artifactory 中查找具有特定属性值的工件

如何部署具有多个工件的发行版

Maven:如果工件具有自己的依赖关系,如何构建?

Maven:如何使用发布插件部署两个工件?

在Wildfly部署中使用带有提供的Maven工件的CXF库

具有父 pom 时如何将工件正确部署到 nexus?

如何使用curl的rest api从Nexus检索工件校验和?

如何使用 REST API 登录?

如何从WildFly取消部署所有工件?

如何创建具有标准目录布局的Maven项目?

使用命令行从Nexus下载具有依赖项的Maven工件

如何使用 maven(具有相同的组:工件:版本,但不同的分类器)创建修补过的 jar?

如何使用导入的JS对象数组部署REST API?

如何在要安装/部署的Maven中指定工件名称

如何在Maven中仅部署zip工件

使用 Maven 删除部署到 Artifactory Repo 的工件

如何使用UrabanCode Deploy REST API在时间范围内获取所有部署过程请求?

如何使用API密钥保护REST API

如何使用Spring Data REST仅公开可写的REST API?

如何使用Spring Data Rest管理REST API版本控制?

如何在REST API中使用会话

如何使用 InvokeHttp 来 Rest Api(POST)

如何使用BOBJ REST API实现分页?

如何使用Rest API删除RecyclerView项目?

如何使用 Firebase 编写 REST API?

如何在REST API中使用提取?

如何定期使用RxJ抓取REST API?

如何使用可选参数创建REST API?