使用psexec
Jenkins 运行远程批处理文件失败.使用psexec
从奴隶运行相同的批处理文件直接工作没有魅力.
让我提供一些更多信息.Jenkins及其奴隶与我们的目标机器位于一个单独的域中.
当我像这样运行批处理文件时:
"D:\Temp\PsTools\PsExec.exe" \\<targetmachine> -u <targetdomain\targetdomainuser> -p <pwd> -accepteula "d:\temp\remotescript.bat" arg1 arg2
Run Code Online (Sandbox Code Playgroud)
直接从奴隶(远程桌面接管机器并打开命令提示符)这完美.
当在Jenkins的Windows批量构建步骤中输入时,没有可见的输出,我只看到一个微调器,但没有任何事情发生,并且构建挂起排队任何其他构建创建大量积压.显然我得到了一个失败审计,我的Jenkins用户尝试登录到目标计算机,但是我在目标计算机上指定了具有管理员权限的域用户(目标计算机域的域用户).
有没有人知道为什么用户尝试使用除提供的任何其他凭据登录以及为什么这样可以直接从Jenkins-slave运行它?
或者任何其他实现此目的的方法(在远程计算机上运行批处理文件)都非常受欢迎.
continuous-integration automation batch-file psexec continuous-deployment
我正在使用psexec在服务器上运行exe.该命令运行正常,但我的本地控制台上没有输出.
这是我使用的命令:
psexec.exe \\my-machine ping localhost
Run Code Online (Sandbox Code Playgroud)
这导致:
PsExec v1.94 - Execute processes remotely
Copyright (C) 2001-2008 Mark Russinovich
Sysinternals - www.sysinternals.com
ping exited with error code 0.
Run Code Online (Sandbox Code Playgroud)
如果我尝试运行这个localy,但它工作正常
psexec.exe \\localhost ping localhost
PsExec v1.94 - Execute processes remotely
Copyright (C) 2001-2008 Mark Russinovich
Sysinternals - www.sysinternals.com
Pinging my-machine.mydomain.com [1.1.1.1] with 32 bytes of data:
Reply from 1.1.1.1: bytes=32 time=2ms TTL=128
Reply from 1.1.1.1: bytes=32 time<1ms TTL=128
Reply from 1.1.1.1: bytes=32 time<1ms TTL=128
Reply from 1.1.1.1: bytes=32 time<1ms TTL=128
Ping statistics …
Run Code Online (Sandbox Code Playgroud)