我的问题是我想在我的jenkins管道插件中执行一个脚本,而'perf script'命令不起作用。 我的剧本是:
#! /bin/bash
if test $# -lt 2
then
sudo perf record -F 99 -a -g -- sleep 20
sudo perf script > info.perf
echo "voila"
fi
exit 0
我的Jenkins可以执行sudo,所以这不是问题,在我自己的Linux Shell中,这个脚本完美地工作.. 我该如何解决这个问题?
答案 0 :(得分:1)
如果重定向在脚本中不起作用,请尝试查看它是否在DSL Jenkins文件中有效。
如果您使用sh
step支持returnStdout
(JENKINS-26133)来调用该脚本:
res = sh(returnStdout: true, script: '/path/to/your/bash/script').trim()
您可以直接在res
处理结果,而不需要文件。
答案 1 :(得分:1)
我解决了这个问题,为perf脚本命令添加了-i选项:
CMakeLists.txt
似乎Jenkins无法在不使用-i选项的情况下读取perf.data