我正在遵循有关如何使用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命令之后重新启用回声。
export
默认情况下,Jenkins使用启动启动 Execute Shell 脚本set -x。这将导致所有命令被回显
set -x
您可以set +x在任何命令之前键入以临时替代该行为。当然,您将需要set -x重新开始显示它们。
set +x
通过将以下内容放在构建步骤的顶部,可以覆盖整个脚本的此行为: #!/bin/bash +x
#!/bin/bash +x