我想使用
POST
方法或 curl
或任何其他方式将我的作业的构建工件发送到 API。
特别是,这是我访问工作时得到的信息:
这是我的
Jenkinsfile
的片段:
script {
archiveArtifacts([
artifacts: "build\\doxy_manual.tar.gz, build\\doxy_pdf_manuals.tar.gz",
])
curl --location 'MY API' --form 'attachment=@"WHAT TO PUT HERE??"'
}
如何在我的
doxy_manual.tar.gz
中引用 Jenkinsfile
以便使用 curl
将其发送到我的位置?
这就是我所做的。有更清洁的解决方案吗?
# Download the archive locally
curl "${BUILD_URL}/artifact/build/doxy_manual.tar.gz" --output doxy_manual.tar.gz
# Send it to location
curl --location 'MY API' --form 'attachment=@doxy_manual.tar.gz'
您可能想查看
HTTP Request Plugin
并使用 uploadFile
来处理 POST 请求。就我个人而言,我认为 curl
没有问题,除非您想以编程方式对响应执行某些操作。在这种情况下,采用基于 DSL 的方法可能会有所帮助。