如何使用Jenkins声明性流水线凭据并转换为PowerShell凭据?
使用:
environment {
APPLICATION_SERVER_CRED = credentials('app-cred')
}
仅仅使用转换后的安全字符串似乎不太有效,因为PSCredential构造函数需要不同类型的参数:字符串和安全字符串。
PSCredential(String, SecureString)
如何获取Jenkins Pipeline创建的环境变量?
$ENV:APPLICATION_SERVER_CRED_USR
$ENV:APPLICATION_SERVER_CRED_PSW
并将它们转换成变量,然后将这些变量传递给System.Management.Automation.PSCredential的构造函数?
在powershell脚本中运行时,这两个环境变量的类型是什么?
($ENV:APPLICATION_SERVER_CRED_USR).GetType()
是
System.String
直接使用构造函数是行不通的,因为它需要不同类型的参数。
如果jenkins没有将用户名转换为安全文本,我就不会遇到这个问题,因为我可以将密码转换为安全字符串,并满足PSCredential的构造函数参数要求。但由于它们是安全文本(且类型为System.String),我不能这样做。
如何将变量转换为创建PSCredential所需的格式?