【发布时间】:2016-01-14 16:44:59
【问题描述】:
我正试图让 Jenkins 从 BitBucket 克隆我的 mercurial 项目。它不会,因为它说凭据有问题 - 好吧,bitbucket 拒绝 Jenkins 提供的任何东西。
我几乎 100% 确定 Jenkins 没有提供它应该提供的东西,因为当我运行时
hg clone --ssh="ssh -i /path/to/my/key" ssh://hg@bitbucket.org/my-org/my-repo
它克隆 a-OK。 /path/to/my/key 的内容是我在 Jenkins 的凭证管理器中放入的密钥。我已经验证它在我的 jenkins credentials.xml 文件中找到。
然而,当我尝试运行我的工作时?克隆失败是因为
remote: Host key verification failed.
这让我相信问题在于通过 mercurial 插件传递的任何内容。但我在日志中看不到它,因为它是某种masked string,只显示为******。
所以我想确保进入 Hg 插件的凭据实际上是我的 credentials.xml 文件中的内容。
到目前为止,我已经到了这里:
import com.cloudbees.plugins.credentials.CredentialsProvider
import com.cloudbees.plugins.credentials.common.StandardUsernameCredentials
def creds = CredentialsProvider.all()
print creds
这给了我一个凭据提供者的列表...但我不确定下一步该去哪里。我一直沉浸在文档中,试图弄清楚如何获得我想要的凭证信息......但没有骰子。
(如何)我可以在 Groovy 脚本控制台中获取我所拥有的并显示我的 Jenkins 凭据列表吗?
【问题讨论】: