我有點憋屈,爲什麼當我在詹金斯Scriptler運行下面的腳本和腳本控制檯它的工作原理,但在動態使用時,當失敗選擇參數(Scriptler),它失敗,出現錯誤:詹金斯[動態選擇參數(Scriptler)查詢證書信息
Error: groovy.lang.MissingPropertyException: No such property: com for class: Script1
我只能假設它是與使用類com.cloudbees.plugins.credentials.CredentialsProvider被稱爲做。
下面是腳本:
/*** BEGIN META {
"name" : "GetRemoteNasFolderList",
"comment" : "Retrieve a list of folder names (in reverse order) from a remote NAS location.",
"parameters" : [ 'ENVIRONMENT', 'SHARE_PATH', 'FOLDER_PATH' ],
"core": "1.565",
"authors" : [{
name : "Authors Name"
}]
} END META**/
import jenkins.model.Jenkins
try {
// params
def env = ENVIRONMENT // 'DEV" or 'TEST' or 'PROD'
def share_path = SHARE_PATH
def folder_path = FOLDER_PATH
String user_domain = ''
String nas_path = ''
switch (env) {
case 'DEV':
user_domain = 'dev';
nas_path = 'nas_host.dev.company.com.au';
break;
case 'TEST':
user_domain = 'test';
nas_path = 'nas_host.test.company.com.au';
break;
case 'PROD':
default:
user_domain = 'prod';
nas_path = 'nas_host.prod.company.com.au';
}
String user_name = 'myUserName'
def full_name = user_domain + '\\' + user_name
String pass_word = ''
def found = false
def creds = com.cloudbees.plugins.credentials.CredentialsProvider.lookupCredentials(
com.cloudbees.plugins.credentials.common.StandardUsernameCredentials.class,
Jenkins.instance,
null,
null
);
for (c in creds) {
if (c.username == full_name) {
pass_word = c.password
found = true
}
}
if (found == true) {
url = "smb://" + nas_path + "/" + share_path + "/" + folder_path;
println("Url: "+url)
// println(user_domain+"\\"+user_name+", "+pass_word)
auth = new jcifs.smb.NtlmPasswordAuthentication(user_domain, user_name, pass_word);
dir = new jcifs.smb.SmbFile(url, auth);
folders = []
for (jcifs.smb.SmbFile f : dir.listFiles())
{
folders.push(f.getName().replace('/',''))
}
return folders.sort().reverse()
} else {
print("Credential entry not found for (" + full_name + ")")
}
} catch (e) {
return ["Error: "+e]
} finally {
}
任何想法,任何人。
是的,我有。在這篇文章之前,再次爲了理智。相同的錯誤消息。 – AHendley
剛剛嘗試過使用使用Scriptler腳本並正在工作的不同插件(活動選擇參數)。 爲什麼我以前沒有嘗試過,我不知道,但現在它讓我感到動態參數沒有,以及根源是什麼。我可能應該繼續前進並使用可行的方法,但它存在於插件中的錯誤。 – AHendley