【问题标题】:Use node.js and ANSIcolor plugin in Jenkins在 Jenkins 中使用 node.js 和 ANSIcolor 插件
【发布时间】:2019-04-14 07:40:57
【问题描述】:

我想在 jenkins 中显示由 node.js 生成的彩色输出

两者分开工作,但不结合:

节点脚本 我的测试脚本 test.js:

console.log(require("chalk").red("Node Red"))

shell 中调用测试脚本有效:

node test.js => OK

jenkins 中调用彩色 shell 脚本有效:

echo -e "\033[31mShell Red\033[0m" => OK

但在 jenkins 中调用节点脚本不会显示任何颜色:

node test.js => No Color, when executed in jenkins

【问题讨论】:

    标签: node.js jenkins chalk


    【解决方案1】:

    我刚刚发现了我的问题:

    • 在作业配置中
    • 看看绑定
    • 选中名为“颜色 ANSI 控制台输出”的复选框

    而且它有效(对我来说......)

    【讨论】:

      【解决方案2】:

      对我来说,它在放置时起作用

      export FORCE_COLOR=1
      

      在我的脚本顶部。

      https://github.com/chalk/supports-color#info

      【讨论】:

        【解决方案3】:

        Raphaelanswer 为我指明了正确的方向。这是我对 Jenkins 流水线脚本(Scripted Pipeline)的完整解决方案: :

        node {
            ansiColor('xterm') {
                withEnv(['FORCE_COLOR=3']) {
                    ...
                    sh "some-node-script-using-chalk.js"
                    ...
                }
            }
        }
        

        如果您使用声明式管道,请参阅https://jenkins.io/doc/pipeline/tour/environment/ 如何在声明式管道脚本中设置环境变量。

        【讨论】:

          猜你喜欢
          • 2012-09-07
          • 2020-04-25
          • 2017-10-15
          • 2017-01-10
          • 1970-01-01
          • 2011-07-24
          • 2019-04-11
          • 1970-01-01
          • 2013-03-06
          相关资源
          最近更新 更多