git - Jenkinsfile 中没有这样的用户 git commit 错误
问题描述
我正在尝试在node:10 Docker 容器中运行npm 版本作为 Jenkinsfile 的一部分,并且收到以下错误。
npm ERR! fatal: unable to look up current user in the passwd file: no such user
有没有办法让 git 以另一种方式寻找用户?
解决方案
如果没有测试,我不能保证这一点,但它应该会引导你朝着正确的方向前进:
Jenkins 在没有用户的情况下启动 docker 容器(使用 UID 和 GID),因此您可以使用 root 启动它(或者在 Dockerfile 中添加一个更好的新用户):
agent {
docker {
image 'node:10'
args '--user root'
}
}
另一种选择是您可以设置这些环境变量:
export GIT_COMMITTER_NAME=’user_name’
export GIT_COMMITTER_EMAIL=’user_email’
您可以将这些添加为 Jenkinsfile 或 Dockerfile 的一部分
推荐阅读
- python - 在多处理 python 之间做任务
- php - 电子邮件形式的 reCaptcha v2 和 PHP
- mysql - 如何从逗号分隔的字符串列表中查找部分字符串,然后需要从值列表中删除整个字符串
- python - Cassandra NoHostAvailable 错误
- android - com.samsung.android.simplehealth E/SimpleHealth:获取步数失败
- c# - 在对话框中显示访问报告
- android - 我怎样才能得到返回值的改造响应?
- android - getContentResolver().query() 的替代方法
- angularjs - 柏树:在柏树中找不到元素
- javascript - 在mounted() 上使用this.$el.queryselector 时出错