Jenkins 运行 yarn build 失败,但是手动登录到服务器 Nodejs yarn build 就成功
Jenkins 运行 yarn build 失败,但是手动登录到服务器 Nodejs yarn build 就成功
各位大佬好,遇到了一个神奇的问题,我利用 jenkins 拉下来项目代码后,直接 ssh 登录到 jenkins 服务器上执行 yarn install yarn build 就没有什么问题,如果把这两条命令,放到 jenkins 的 shell 中,就会报错,而且没有错误日志,只是返回了一个
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
Build step 'Execute shell' marked build as failure
Finished: FAILURE
求各位大佬指点一下 要怎么解决这个问题,非常感谢 😄
你 ssh 登录的是什么用户?用什么用户运行的 jenkins ?
大佬好,感谢回帖,我解决了,是因为缺少一条 CI=false 的环境变量,加上后就成功了😄 不加这条环境变量的话,warning 会被 shell 识别成 error
针对您提到的Jenkins运行yarn build
失败,但手动在服务器上执行成功的问题,这通常是由于环境差异或权限问题导致的。以下是一些可能的解决步骤和检查点:
-
环境变量检查: 确保Jenkins运行环境中Node.js和Yarn的版本与手动登录时一致。可以在Jenkins的构建脚本中添加打印环境变量的步骤,比如:
echo "Node.js version: $(node -v)" echo "Yarn version: $(yarn -v)"
-
工作目录权限: Jenkins运行的用户可能没有足够的权限访问项目目录或写入构建输出。尝试修改项目目录的权限,或确保Jenkins以正确的用户身份运行。
-
依赖缓存: Jenkins可能使用了与手动运行不同的依赖缓存。尝试清除Yarn缓存:
yarn cache clean
-
构建脚本: 检查Jenkins的构建脚本是否完整包含了所有必要的步骤,特别是环境设置和依赖安装。
-
日志分析: 详细查看Jenkins构建日志,找出具体的错误信息。可能是某个特定的依赖或配置在Jenkins环境中不被支持。
-
重试构建: 在进行了上述检查后,重新触发Jenkins构建,观察是否仍然失败。
如果问题依旧,建议将完整的Jenkins构建日志和手动执行的详细步骤进行对比,找出差异点。希望这些步骤能帮助您解决问题!