在我的Jenkins工作中,我正在以下列方式配置git:
sh("git config user.email my.email@google.com")
sh("git config user.name my-user-name")
sh("git tag ${BUILD_NUMBER}")
sh("git push origin --tags")
但是,在最后一行,当我尝试推送到我的存储库时,我收到有关存储库的以下错误:
fatal: could not read Username for 'http://my-git-repo.com:8000': No such device or address
出了什么问题,如何将其推送到存储库?
答案 0 :(得分:2)
您正在寻找credential.username
。我不知道密码,但如果您不喜欢http://username:password@my-git-repo.com:8000
,请将凭据放在Jenkinsfile中,如下所示:
第二种最常见的凭证类型是"用户名和密码" 它仍然可以在
environment
指令中使用,但会导致 设置了稍微不同的变量。environment { SAUCE_ACCESS = credentials('sauce-lab-dev') }
这实际上会设置3个环境变量:
SAUCE_ACCESS containing <username>:<password> SAUCE_ACCESS_USR containing the username SAUCE_ACCESS_PSW containing the password
credentials
仅适用于Declarative Pipeline。对于那些 使用Scripted Pipeline,请参阅文档withCredentials
步骤。