我在jenkins的project scm部分的下拉列表中看不到任何Secret text
凭据。我知道从scm部分的下拉列表中创建Secret text
凭据已损坏,但即使通过导航到Jenkins -> Credentials
创建凭据,该凭据也不会出现在下拉列表中。
我已经创建了所有类型的凭证,我在下拉列表中看到的唯一类型是Username with password
。似乎scm中的下拉菜单会过滤掉所有不属于此类型的凭证。
我之所以需要scm部分中的Secret text
凭据,是因为我想使用github访问令牌(而不是github帐户用户名和密码)。
下面的屏幕截图显示了我的全局凭据,其中我的Secret text
凭据明显存在。
下面的屏幕截图显示了我的项目的scm部分的git下拉列表,其中只有Username and password
凭证存在。
詹金斯版本:2.102
Jenkins凭据插件版本:2.1.16
Jenkins Git插件版本:3.7.0
最佳答案
您不能在scm步骤中使用Secret Text
凭据,因为github个人访问令牌只应替换您的密码。不是你的用户和密码。也就是说你的用户仍然是必需的。在github文档中,您将看到它的内容是:
您可以创建一个个人访问令牌并用它代替密码
然后在下面的“在命令行上使用令牌”一节中,它会读到:
一旦有了令牌,就可以在通过https执行git操作时输入它而不是密码。
接下来是这个例子:
$ git clone https://github.com/username/repo.git
Username: your_username
Password: your_token
如果将此推断为jenkins,那么凭证类型的明智选择仍然是
User with password
类型。因此,只需像平常一样创建一个
User with password
类型的凭证,并在Password
字段中使用您的个人访问令牌。here
关于git - Jenkins项目“源代码管理”部分未显示“ secret 文本” Git凭据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48330402/