我有一个场景,当我们运行 Jenkins 构建时,我们从 s3 存储桶下载敏感数据,我们下载的信息被设置为环境变量。但是下载的信息被吐出来了,我需要屏蔽整个舞台!有什么办法可以掩盖整个舞台?
我尝试查看 Jenkins 的掩码密码插件(https://wiki.jenkins.io/display/JENKINS/Mask+Passwords+Plugin),但没能得到一点。
stage('create secrets') {
steps {
script {
def propMap = readProperties file: "environments/test/envs"
def properties = propMap.collect { key, value -> return key + '=' + value }
if (testenv()) {
withAWS([role: "${propMap['ASSUME_ROLE_ARN']}", region: "${propMap['REGION']}"]) {
withEnv(properties) {
sh '''
aws s3 cp s3://${test-BUCKET}/ssl-certs/ . --recursive
export SSL_KEY="$(cat ./server.key | base64 -w 0) "
export SSL_CERT="$(cat ./server.cert | base64 -w 0)"
export SQL_ALCH="$(echo -n $SQL_ALCH | base64 -w 0)"
export SUPER_USER_GROUP="$(echo -n $SUPER_USER_GROUP | base64 -w 0)"
'''
}
}
}
当我在上述阶段运行 Jenkins 时,它会显示用户组的敏感信息,控制台输出中的所有其他内容都需要屏蔽整个信息。