繁体   English   中英

jenkins构建-使用ssh代理模块-无法在目标计算机上运行全套命令

[英]jenkins build - using ssh agent module - not able to run full set of commands on target machine

我正在尝试使用jenkins中的ssh代理模块以我的身份登录到远程计算机...并运行一些lxc命令。 我没有任何错误登录,但是...根据我运行的命令,我得到的结果是不同的,或者权限被拒绝。

此pastebin将向您显示我从詹金斯获得的输出http://pastebin.com/VxPHYzf9

在示例1中,我尝试运行lxc命令,但失败。 在示例2中,我运行rc-status,期望看到正在运行的容器的列表,但是却得到了完全不同的东西。

到目前为止,我已经尝试过:

  1. 当我以“ johndoe”用户手动ssh进入lxc主机时,我能够运行两个命令都没有问题。 我还“观察了” lxc上的日志文件,该文件显示了谁正在登录的ssh指纹...并且我可以看到,当jenkins完成构建时,它以“ johndoe”身份登录。

  2. 我创建了一个“詹金斯”用户/ SSH密钥对,并尝试使用它。 我得到相同的结果。

我尝试的上次测试(未在pastebin中显示)只是在lxc主机的tmp文件夹上运行“ ls -lah”,我知道我有一些bash文件。
当我更改生成以运行以下命令时:

whoami
ssh -AtT root@10.111.11.11
ls -lah /tmp/*.sh

我得到的这些结果再次是完全错误的:

+ whoami
jenkins
+ ssh -AtT root@10.111.11.11
********************************* ATTENTION **********************************
*            Unauthorized access prohibited.  Activity is logged.            *
******************************************************************************
 15:13:25 up 23 days, 19:33,  0 users,  load average: 0.11, 0.07, 0.11
+ ls -lah /tmp/hudson3065491328414451721.sh
-rw-r--r-- 1 jenkins jenkins 52 Jun 10 11:13 /tmp/hudson3065491328414451721.sh
[ssh-agent] Stopped.
Finished: SUCCESS

我至少有3个sh文件...而且我不知道hudson * .sh文件是什么。

最终,我需要Jenkins能够登录到lxc主机并运行一堆命令,这是我构建的一部分。

任何帮助,将不胜感激。

我还将尝试将构建版本ssh放入另一台计算机,以查看是否获得了不同的结果。

我想到了。

看来我的错误是将我用于远程服务器的所有shell命令放在单独的行上。 因此,例如,在构建“ Execute Shell”文本框中,我有类似以下内容:

   ssh -A root@10.1.1.1
   whoami
   ls -lah /tmp/*.sh

它正在做的是登录到远程服务器,然后在我的LOCAL jenkins服务器上运行其他两个命令。

所以我将shell命令更改为如下形式:

   ssh- A root@10.1.1.1 'ls -lah'

现在它正在工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM