gpt4 book ai didi

windows - 从 Jenkins 在远程服务器(windows)上运行批处理脚本

转载 作者:可可西里 更新时间:2023-11-01 12:17:19 26 4
gpt4 key购买 nike

我有一个持续集成服务器 (Jenkins),它构建我的代码(检查编译错误)并运行测试,然后将文件部署到远程服务器(不是 war 文件,而是实际的文件结构)我做的这是一个 Jenkins 插件,它允许我通过 samba 传输文件,它每晚都这样做。

现在,我需要做的是在远程服务器上运行一个 ant 命令。之后我需要在远程服务器上启动应用程序服务器,应用程序服务器是通过从命令行运行 .bat 文件来启动的。

我对如何实现这一点一无所知,我知道 Jenkins 能够运行批处理命令,但我如何让它们在服务器上下文而不是构建服务器上下文中运行?

最佳答案

如果 Jenkins 在 Windows 上,远程在 *nix 上,使用 plink.exe (本质上是命令行 PuTTy )

如果 Jenkins 在 Windows 上,远程在 Window 上,使用 psexec.exe

如果 Jenkins 在 *nix 上,远程在 *nix 上,使用 ssh

如果 Jenkins 在 *nix 上,在 Windows 上远程,(更新 2015-01)Ansible http://docs.ansible.com/intro_windows.html支持从 unix/linux 机器调用 Windows 命令,例如 powershell,https://github.com/ansible/ansible-examples/blob/master/windows/run-powershell.yml

告诉我涉及哪些操作系统(在 Jenkins 和远程上),我会进一步说明这一点。

编辑:
psexec.exe 的下载页面列出所有命令行选项。你会想要一些类似的东西:

psexec \\remotecomputername -u remoteusername -p remotepassword cmd /c <your commands here>
替换 <your commands here>使用实际命令,就像从命令提示符执行它们一样。

请注意 psexec首先需要安装服务,并且需要提升的命令提示符/管理员远程凭据才能执行此操作。
此外,您需要运行 psexec -accepteula一次接受 EULA 提示。

关于windows - 从 Jenkins 在远程服务器(windows)上运行批处理脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22553588/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com