将Jenkins SSH选项配置为从属节点

时间:2016-12-05 20:07:40

标签: jenkins ssh tty

我在Ubuntu 14.04(Trusty Tahr)上通过SSH运行带有从属节点的Jenkins。我们能够与节点通信以运行大多数命令,但是当命令需要tty输入时,我们得到经典

the input device is not a TTY

错误。在我们的例子中,它是docker exec -it命令。

所以我正在搜索关于Jenkins的大量信息,试图找出如何配置与从节点的连接以启用-t选项来强制tty实例,并且我将变空。我们如何实现这一目标?

1 个答案:

答案 0 :(得分:1)

据我所知,你不能把-t给詹金斯激活的ssh(这是有意义的,因为詹金斯天生就是分离的)。来自the documentation

  

当SSH从属插件连接到从属时,它不会运行交互式shell。相反,它相当于你运行的“ssh slavehost命令...”几次......

但是,您可以通过...

在构建脚本中打败它
  • 循环回自己:ssh -t localhost command
  • 使用本地PTY生成器:script --return -c "command" /dev/null