【发布时间】:2020-08-06 11:34:18
【问题描述】:
当我运行测试时,我的 Windows 测试客户端出现此错误
CypressError: cy.exec('npm run -s command') 失败,因为命令以非零代码退出。
传递 {failOnNonZeroExit: false} 以忽略退出代码失败。
有关失败的信息: 代码:1
标准错误: C:\Users\Administrator.jenkins\workspace\cypress-execution\node_modules\ssh2\lib\client.js:146 throw new Error('Cannot parse privateKey: ' + privKeyInfo.message);
【问题讨论】:
-
ssh-exec大约 4 年没有更新,因此它的依赖 semver 范围不再引入包含重要修复和新功能的更新版本的依赖库(尤其是ssh2)。如果我不得不猜测错误的原因:这是因为 ssh 密钥采用“新”OpenSSH 密钥文件格式,而旧版本的ssh2(实际上是ssh2-streams)不支持这种格式。 -
@mscdex 感谢您的意见。您是否找到任何解决方法来使其正常工作?我面临这个问题的地方是在一个虚拟机中(在我的所有三个虚拟机中),但同时它也在我的笔记本电脑上工作,这也是 Windows。
-
我解决了这个问题。它很奇怪。我创建了一个新用户并使用 ssh-exec 执行了相同的脚本,它开始工作。早些时候我尝试使用管理员帐户,看起来它正在阻止执行某些内容。通过创建一个新的用户帐户来解决问题。谢谢!!
标签: javascript node.js ssh cypress ssh2