我们使用蓝色海洋创建了詹金斯管道作为代码,直到最近才能正常工作。现在,当我们尝试通过Xcode Integration插件的KeyChainPWD传递蓝色海洋的参数时,它给我们带来了错误,我们的蓝色海洋管道iOS不起作用。
我们试图使用凭据的秘密密钥,并试图将其作为参数传递,但它不起作用。
environment {
Keychain_pwd_id = credentials('test')
}
在此创建了"测试"秘密密钥。我们也尝试关注:
keychainpwd:hudson.util.secret.fromstring(" $ {keychain_pwd_id}"(
pipeline {
environment {
Keychain_pwd_id = credentials('test')
}
stages {
stage('Xcode Build') {
steps {
xcodeBuild(buildIpa: true, bundleID: 'com.xxx.xxxxxxxxxx', cleanBeforeBuild: true, configuration: 'Release', developmentTeamID: 'xxxxxxxx', developmentTeamName: 'xxxxxxxxxxxxxxxxxxxxx', ipaExportMethod: ‘enterprise’, ipaName: ‘xxxxxxxxxxx’, ipaOutputDirectory: 'build', keychainName: 'login', keychainPath: '${HOME}/Library/Keychains/login.keychain', keychainPwd: "${Keychain_pwd_id}, manualSigning: true, provisioningProfiles: [[provisioningProfileAppId: 'xxxxxxxxxxxxxxxxxxx', provisioningProfileUUID: 'xxxxxxxxxxxxxxxxxxxxxxxxxx']], unlockKeychain: true, xcodeSchema: ‘xxxxxxxxxxxxxxxx
}
}
}
}
期望参数为" keychainpwd"的" class hudson.util.secret",但获得了" $ {keychainpwd}"类型类别java.lang.string替换 @ line 12,第407列。
我目前正在处理同一问题。似乎最近更新了XcodeBuild插件。
我能够通过以下答案获得这座建筑物:我如何将用户输入的密码与凭据密码进行比较
Jenkins CI管道脚本不允许使用方法groovy.lang.groovyobject
第一个链接的更改是您想要的,但是您可能需要通过第二个链接中的信息批准脚本。