将 Jar 从 TFS 部署到 linux

Deploying Jars from TFS to linux

抱歉,如果已经有关于该主题的问题,但我找不到它。 我目前有一个 TFS(内部部署)服务器使用安装在 Ubuntu 机器上的代理构建 Maven 项目。

构建成功,生成的 Jar 文件正在构建结果的“工件”选项卡中发布。

现在,如果我想通过 SSH 将这个 jars 部署到不同的 Linux 服务器,下一步是什么?

我读了一些文章说我应该在 TFS 中使用发布作业,但找不到任何工作示例,

我假设我可以执行一个 PowerShell/python 脚本作为构建步骤并将 jars 放到我需要的地方,但我真的更喜欢这样做 "Properly".

最简单的方法是在目标机器上安装一个代理,创建一个针对特定机器的发布管道代理阶段和 运行 一个 shell 脚本来处理任何你想要的工件。作为代理阶段的一部分,工件将自动从服务器下载。

或者,您可以 运行 在 ubuntu 框上发布管道代理阶段,并使用 sftp 上传任务将工件从 ubuntu 代理推送到目标服务器。然后使用 SSH 任务 shell 进入服务器并做你想做的事。

或者你可以从你的 ubuntu 框 ssh 进入目标服务器(使用 SSH 任务),然后使用 curl 或其他一些东西来使用 REST API.

执行脚本在发布和构建阶段都是很正常的事情。您可能需要将脚本放在 git 存储库或中央位置,以确保它们可以作为发布工作流程的一部分进行访问。您还可以将它们作为第二个工件附加到您的构建中,然后将它们恢复到执行发布阶段的代理。