在Jenkins中使用密码参数作为管道中的秘密

时间:2016-10-17 19:47:58

标签: jenkins jenkins-pipeline credentials

我有一个Jenkins管道作业需要提供用户名和密码,以便从RTC作为参数签出。

结帐操作可以使用userId和password变量,但密码必须属于" Secret"。

尝试使用hudson.util.Secret secret = hudson.util.Secret.fromString("${Build_Password}")创建密码时,出现以下错误:

org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException: Scripts not permitted to use staticMethod hudson.util.Secret fromString java.lang.String

有没有办法从参数创建一个秘密或凭据?

2 个答案:

答案 0 :(得分:1)

我不得不禁用groovy沙箱。之后,我能够使用Secret类:

hudson.util.Secret secret = hudson.util.Secret.fromString(Build_Password)

答案 1 :(得分:0)

checkout([$ class:'TeamFoundationServerScm',localPath:'D:\ Build-Code-Scm',projectPath:'$ / RootDirectory / SubFolder',serverUrl:'http://TEST.TEST.com:8080/TEST/TEST',useOverwrite:true, useUpdate:true,用户名:'UNMAME',密码:hudson.util.Secret.fromString('PASSWORD'),工作区名称:'Hudson-$ {JOB_NAME}-$ {NODE_NAME}'])