在我的 Jenkins 工作中,我需要登录 Artifactory
我创建了一个名为“Docker_artifactory_creds”的全局凭证
在“执行 shell”步骤中使用它们作为
docker login artifacts.some_custom.com -u ${ARTIFACTORY_USER} -p ${ARTIFACTORY_PASSWD}
但这行不通(与作为行文本传递的相同信用,这一行有效)。我看到以下日志:
为什么我的凭据被忽略/删除?以下环境变量已被“仅保留”删除 指定环境变量':ARTIFACTORY_PASSWD, ARTIFACTORY_USER,分支,BUILD_CAUSE,...,工作空间,工作空间_TMP 删除 artifacts.some_custom.com 的登录凭据 错误:无法从非 TTY 设备执行交互式登录
https://plugins.jenkins.io/safe-batch-environment-filter/插件
在自由式中:不确定是否有办法做到这一点,只需将您的工作添加到詹金斯全局配置中的排除列表中在 Jenkinsfile 中:你需要用
包装你的代码
keepEnv(['ARTIFACTORY_USER', 'ARTIFACTORY_PASSWD']) {
docker login artifacts.some_custom.com -u ${ARTIFACTORY_USER} -p ${ARTIFACTORY_PASSWD}
}
ps 还需要添加 withCredentials
或您用来将此信用信息添加到 env 变量的内容