我有一个 Jenkins 构建,我试图将一个战争文件从一个虚拟机复制到另一个虚拟机。我想使用scp
. 我试过在 Jenkins 之外的 shell 中运行它,一切正常。尝试自动化它有点棘手。我需要提供密码才能使用sudo
,还需要为我复制到的虚拟机输入密码。
在 Jenkins 构建日志中,我看到在执行自定义 shell 脚本后构建失败。
我在 Jenkins 构建中运行的命令是
echo 'password' | sudo -S scp -P 5555 application.war user@15.15.15.15:/JBoss/standalone/deployments
Run Code Online (Sandbox Code Playgroud)
输出是
[sudo] password for jenkins: Sorry, try again.
[sudo] password for jenkins:
sudo: 1 incorrect password attempt
Run Code Online (Sandbox Code Playgroud)
我没有为 Jenkins 设置任何用户,所以我不理解[sudo] password for jenkins
错误。
我意识到有 Jenkins 插件可以实现我想要做的事情,但目前没有一个对我有用,这可能是由于服务器配置不当。这就是我想scp
在自定义 shell 脚本中使用的原因。