詹金斯·唐';t隐藏正在控制台上打印的shell脚本命令
我已经设置了一个管道脚本,它将使用maven构建一个JAR,参数来自JAR的Jenkins。其中之一是密码詹金斯·唐';t隐藏正在控制台上打印的shell脚本命令,shell,jenkins,jenkins-pipeline,sh,jenkins-groovy,Shell,Jenkins,Jenkins Pipeline,Sh,Jenkins Groovy,我已经设置了一个管道脚本,它将使用maven构建一个JAR,参数来自JAR的Jenkins。其中之一是密码 stages { stage('Maven Build') { steps { script { echo "Maven Build" withMaven(jdk: javaVersion, maven: mavenVersion) { s
stages {
stage('Maven Build') {
steps {
script {
echo "Maven Build"
withMaven(jdk: javaVersion, maven: mavenVersion) {
sh 'mvn clean install'
}
}
}
}
stage('Branch Creation') {
steps {
script {
sh """
set +x
"java -jar target/github-branch-creator-1.0-SNAPSHOT-jar-with-dependencies.jar ${params.Username} ${params.Password} ${params.value1} ${params.value2} ${params.value3}"
"""
}
}
}
}
我确实提到了“
三重双引号以接受来自jenkins的参数,并且确实提到了设置+x
,但它仍然会在控制台中打印命令
+java-jar-target/github-branch-creator-1.0-SNAPSHOT-jar-with-dependencies.jar abc-sensitive_密码v1 v2
我在我的groovy
脚本上尝试了#!/bin/bash+x
。我仍然发现它正在打印。
如果有人能帮忙的话?我想最好不要用明文传递密码
- 您可以尝试的方法: 要么加密密码,然后将参数传递给命令行,您可以在java代码中使用密码进行写解密 在文件中写入命令,然后执行该文件