我试图从詹金斯与命令“帽生产部署”壳部署红宝石不适当的ioctl,但将引发一个错误:如果我从终端手动执行命令詹金斯壳会因设备
[email protected]'s password:(Backtrace restricted to imported tasks) cap aborted! SSHKit::Runner::ExecuteError: Exception while executing as [email protected]: Inappropriate ioctl for device Errno::ENOTTY: Inappropriate ioctl for device
它执行没有问题。 我设置了公钥,以便我可以执行该命令而不需要输入密码,并且还可以将部署密钥添加到GitLab中的项目中。
当我搜索答案时,我发现在大多数情况下,问题在于部署密钥,但我已将其添加到项目中,并且我可以从终端手动执行该命令,因此问题必须出现在Jenkins贝壳。 它似乎可能会使用终端的一些解释而不是真实的东西。
有没有一种方法可以解决这个问题,所以我可以从Jenkins shell执行命令?
似乎没有设备绑定到连接,因为它是一个没有交互的纯命令。唯一的方法应该是公钥。 –
@GeminiKeith但是我在Jenkins服务器上创建了公钥,并将其添加到生产服务器中。或者你的意思是其他方式? – Rudolfs
您是否正确配置了您的ssh服务器?您可以在没有密码的情况下登录到您的服务器吗? –