Blue Ocean日志记录我的步骤命令

70次阅读
没有评论

问题描述

在使用Blue Ocean时,遇到了一个问题。他在一个最小的Jenkinsfile中使用了一个示例,但是发现日志中显示了他不希望显示的命令,并且希望将标签显示在命令的位置。

解决方案

请注意以下操作注意版本差异及修改前做好备份。

方案1

如果你运行一个脚本,你必须指定输出的位置。你可以使用sh(returnStdout: true, script: "echo 'this should not be logged it is secret'")来运行脚本,并将returnStdout设置为true,这样就不会显示任何内容了。
以下是一个示例代码:

node("master") {
    stage("Test") {
        sh(returnStdout: true, script: "echo 'this should not be logged it is secret'")
    }
}

方案2

如果你想捕获输出,可以使用sh(returnStdout: false, script: "echo 'this should not be logged it is secret'")
以下是一个示例代码:

node("master") {
    stage("Test") {
        script {
            def msg = sh(returnStdout: false, script: "echo 'this should not be logged it is secret'")
            // 在这里可以对输出进行处理
        }
    }
}

方案3

label: "THIS SHOULD DISPLAY"将在Jenkins网站上的”sup”步骤上显示一个标签。你看到的结果是预期的结果。
以下是一个示例代码:

node("master") {
    stage("Test") {
        script {
            def msg = sh(
                returnStdout: false,
                label: "THIS SHOULD DISPLAY",
                script: "set -e; echo 'this should not be logged it is secret'"
            )
            // 在这里可以对输出进行处理
        }
    }
}

综上所述,你可以根据你的需求选择适合的解决方案。

正文完