jenkins报错:Pseudo-terminal will not be allocated because stdin is not a terminal

jenkins的流水线部分代码如下

sh'''
ssh root@192.168.2.234 << remotessh
cd /var/lib/jenkins/workspace/testxkc
/usr/local/maven/apache-maven-3.8.6/bin/mvn clean package -U
ls
remotessh
'''	

在流水线中尽量使用:remotessh进行伪终端登录,要是使用其他ssh -t的话,也会出现以下报错的。
执行流水线出现报错:Pseudo-terminal will not be allocated because stdin is not a terminal

分析原因,可能是底层的jenkins用户无法正常ssh到root。因为本质上是ssh,所以jenkins大多时候报错需要我们进入到底层虚拟机去查看具体情况。

#root登录jenkins的虚拟机,切换用户为jenkins
su jenkins
#执行ssh
ssh root@192.168.2.234
#回显发现需要输入yes,输入后去jenkins执行流水线发现能正常执行了
转载请说明出处内容投诉
CSS教程_站长资源网 » jenkins报错:Pseudo-terminal will not be allocated because stdin is not a terminal

发表评论

欢迎 访客 发表评论

一个令你着迷的主题!

查看演示 官网购买