如何在运行Jenkins CI管道时屏蔽作为用户输入传递的密码?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在运行Jenkins CI管道时屏蔽作为用户输入传递的密码?相关的知识,希望对你有一定的参考价值。

在Jenkins的早期版本中,我已经看到我们在作业中添加了“密码参数”,当用户在运行作业时将值传递给它时,它不会显示字符,而是会被屏蔽。他们还会在工作建设历史中被掩盖。

我在Jenkins CI管道中有相同的要求,在jenkinsfile中我可以提到一个参数,需要在用户输入到python片段时将其作为掩码传递。我确实通过了文档,其中允许的params类型也有“密码”,但我不认为它的行为符合我的要求。有人可以用正确的语法或任何其他方式帮助我吗?

答案

如果您运行以下管道:

pipeline {
    agent any 
    stages {
        stage('Build') { 
            steps {
                withCredentials([usernameColonPassword(credentialsId: 'dummy', variable: 'USER_AND_PASS')]) {
                    sh '''
                        echo "The credential is ${USER_AND_PASS}"
                    '''
                }
            }
        }
    }
}

您将看到在构建输出中屏蔽了用户名和密码

以上是关于如何在运行Jenkins CI管道时屏蔽作为用户输入传递的密码?的主要内容,如果未能解决你的问题,请参考以下文章

从 Jenkins Ci 服务迁移到 gitlab-ci.yml

Jenkins管道脚本的开发过程应该如何?

实践:基于Azure部署Jenkins服务并开发MERN应用的CI/CD构建管道

如何在Kubernetes CI管道中使用Gradle守护程序?

CI/CD 工具选型:Jenkins 还是 Bamboo?

使用 CI/CD 管道部署数据库项目时如何设置 SQL 用户密码