当前位置: 首页 > 面试题库 >

在Jenkins控制台输出中回显

蒙勇
2023-03-14
问题内容

我正在遵循有关如何使用Jenkins签署Android
APK的准则。我已经用KSTOREPWD和KEYPWD参数化了Jenkins的工作。Jenkins的工作配置(“构建”->“执行”外壳)的一部分是获取这些参数并将其存储为环境变量:

export KSTOREPWD=${KSTOREPWD}
export KEYPWD=${KEYPWD}
...
./gradlew assembleRelease

问题是当构建结束时,任何人都可以访问构建“控制台输出”并查看输入了什么密码;该输出的一部分:

08:06:57 + export KSTOREPWD=secretStorePwd
08:06:57 + KSTOREPWD=secretStorePwd
08:06:57 + export KEYPWD=secretPwd
08:06:57 + KEYPWD=secretPwd

因此,我想在export命令输出之前抑制回声,并在export命令之后重新启用回声。


问题答案:

默认情况下,Jenkins使用启动启动 Execute Shell 脚本set -x。这将导致所有命令被回显

您可以set +x在任何命令之前键入以临时替代该行为。当然,您将需要set -x重新开始显示它们。

通过将以下内容放在构建步骤的顶部,可以覆盖整个脚本的此行为:
#!/bin/bash +x



 类似资料:
  • 问题内容: 我创建了一个复杂的管道。在每个阶段,我都叫工作。我想在Jenkins的某个阶段中查看每个作业的控制台输出。如何获得? 问题答案: 从构建步骤返回的对象可用于查询日志,如下所示: 从构建步骤返回的对象是RunWrapper类对象。getRawBuild()调用返回一个Run对象- 除了从此类的外观逐行读取日志之外,还有其他选择。为此,您需要禁用管道沙箱或获取这些方法的脚本批准: 如果要对

  • 问题内容: 对詹金斯来说还很新,我有一个简单而烦人的问题。当我在Jenkins上运行作业(构建)时,我触发ruby命令执行我的测试脚本。 问题是Jenkins没有从控制台实时显示输出。这是触发日志。 基本上,它会挂在此输出上,直到构建完成为止,而不是仅仅显示完整的输出。有趣的是,这不是一致的行为,有时它可以正常工作。但是大多数时候没有实时控制台输出。 詹金斯版本:1.461 问题答案: 为了澄清一

  • 问题内容: 程序应在中列出卷。 例如:我从vollist.java类获得此输出。 控制台输出: 如何在我的控制台中获得此控制台输出。 那只会显示row1-> vol1 row2-> vol1 ............如何获得类似于控制台row1-> vol1 row2-> vol2的输出(计数) 问题答案: 定义并实现您的TableModel(在这种情况下,扩展AbstractTableModel

  • 问题内容: 如何在hudson / jenkins构建输出控制台中显示超链接(weblink)? 我想要实现的是,在基于特定条件的hudson / jenkins构建过程中,我想显示一个超链接。当用户单击该链接时,它应该打开一个新的浏览器窗口并显示该页面。 有插件可以做到这一点吗?有什么建议吗? 问题答案: 如果输入,例如: 在 Build step Execute shell→Command中,

  • 当我在Android Studio上运行应用程序时,我看到了一些垃圾收集输出: 这是什么意思?(我正在阅读大型csv文件,其中有更多70k行)

  • 我想访问和grep Jenkins控制台输出,作为创建此输出的同一个作业中的后期构建步骤。使用