如何有一个下载URL的Jenkins构建步骤?

时间:2011-08-19 12:38:19

标签: url jenkins

我想要一个Jenkins构建步骤,只需将给定的URL下载到工作区中。有没有一种简单的方法可以做到这一点?

(我目前使用一个简单的<get/>的Ant脚本。但这意味着我需要在某个地方使用SVN中的那个脚本,并在构建过程中检查它。我发现这很麻烦。)

更新:为了澄清,我想在不在构建系统上安装其他软件或使用其他脚本的情况下下载URL。 (当然,Jenkins插件很好。)我最好不要依赖构建奴隶是Linux,Windows或其他什么。

5 个答案:

答案 0 :(得分:5)

最简单的方法就是拥有一个shell脚本构建步骤,对您的URL执行wget或curl。但@Bernard建议的插件可能会为您提供额外的功能。

答案 1 :(得分:5)

如何使用Jenkins HTTP Request Plugin下载文件。 如何将文件下载到Jenkins工作区。 我从Nexus(Artifactory)下载了一个tar.gz文件,这是一个本地存储库,进入Jenkins构建步骤的工作空间。 要做的步骤:

  1. 添加构建步骤“Http Request”,显然您需要https://wiki.jenkins-ci.org/display/JENKINS/HTTP+Request+Plugin
  2. 指定您的网址和HTTP方法。
  3. 打开“高级..”配置。 (点击它)
  4. 转到“响应”部分。
  5. 使用“输出响应文件”字段指定文件的名称和扩展名
  6. Please use this screenshot for details
  7. 下载后,您可以在工作区内找到您在步骤#5中指定的名称所需的文件。

答案 2 :(得分:4)

你看过URL SCM插件了吗?它似乎具有您正在寻找的功能。还有其他基于URL的plugins可用于Jenkins,您可以探索。

答案 3 :(得分:3)

如果您不想干预安装插件或运行shell命令(例如,在Windows上可能没有curl),则可以通过编程方式执行此操作:

file_text = new URL ("https://some.site.com/some_file.html").getText()
writeFile(file: 'file.html', text: file_text)

要运行此代码,您需要像往常一样使用Jenkins中的自定义代码制作一些in-process script approvals

由于您需要配置实际请求,因此请检查this中的getText()参数。

基于this gistthis answer

答案 4 :(得分:-1)

这个插件很适合在Jenkins Wiki上的任何REST类型url:HTTP Request Plugin上进行get / put / post / delete; https://wiki.jenkins-ci.org/display/JENKINS/HTTP+Request+Plugin