如何让Jenkins在远程服务器上执行删除操作

时间:2015-06-04 10:37:52

标签: git deployment jenkins continuous-integration

我正在尝试使用Jenkins开始自动构建过程。

到目前为止,我已经设法让Jenkins从BitBucket构建项目,运行测试并使用Publish Over SSH插件将文件上传到生产服务器。

当我从我的git repo中删除文件时,我希望在远程服务器上删除这些文件。我已经考虑过这样做的几种方法。

  1. 擦除生产服务器上的所有文件,然后上传最新的构建版本。

    • 对我来说似乎是一个糟糕的解决方案,因为这会导致比我想要的更多的停机时间。
  2. 创建一个存在于远程服务器上的脚本,以便在新构建过程之后清理文件。我需要从git(不知何故?)找出该提交中删除的文件是什么。

  3. 不是让Jenkin使用发布的ssh插件,而是在生产服务器上安装了git,所以在成功构建之后,我们可以让Jenkins(不知何故?)将项目推送到git生产服务器。 / p>

  4. 这似乎是开发人员的常见任务,我觉得我在这里缺少一些东西。是否有任何标准做法。

1 个答案:

答案 0 :(得分:0)

这个答案可能已经太迟了,但我认为其他人会搜索这个。在开发中删除文件后,我找到了删除生产服务器上文件的解决方案 在Jenkins中,您使用rsync在开发和生产之间同步文件。最后添加到此行     --delete
这将成功