从Git中的文件在Jenkins上运行SSH

nnsrf1az  于 2022-11-02  发布在  Jenkins
关注(0)|答案(1)|浏览(231)

我在Git上有一个文件,其中包含以下shell脚本

文件名= Job.sh

echo "Warehouse script starting"
ssh -n username@server_name "mkdir -p ~/directory_name/folder_name/file_name"

在Jenkins的Execute Shell下我在跑-

sh job.sh

echo命令会在控制台中显示出来。但是这个工作并不是在username@server_name中执行ssh并创建目录。感谢您的反馈。

mwyxok5s

mwyxok5s1#

在直接连接到Jenkins代理时尝试相同的命令(使用Jenkins在该代理上使用的帐户)
目标是检查该用户(在该服务器代理上)在其$HOME/.ssh文件夹中是否具有正确的公钥/私钥对。
并仔细检查公钥是否在servername:~username/.ssh/authorized_keys中。
确保private key is not encrypted,以避免必须处理ssh-agent和密码缓存。至少现在,为了测试您的设置。
注意:-n选项(防止从stdin读取)通常用于在后台执行的ssh命令。在您的情况下可能不需要。
还可以尝试在脚本的开头添加#!/bin/bash -x(假设您确实有bash),以便打印执行的所有行。

相关问题