test-definitions/blob/master/auto-test/isolate-task/isolate-task-verify.sh

#!/bin/sh -e #-e表示遇到错误就退出
#定义函数说明这个脚本的用法
usage() {
    echo "Usage: $0 <-c cpus> <-s [true|false]>" 1>&2
    echo " -c CPU's to isolate and verify"
    echo " -s Skip dependenciy installs"
    echo " -t Git tag to use"
    echo " example:"
    echo " $0 -c 1,2 -s false -t v0.2"
    exit 1
}
#parse 可选参数
while getopts "c:s:t:" o; do
    case "$o" in
	c) CPUS="${OPTARG}" ;;
	s) SKIP_INSTALL="${OPTARG}" ;;
	t) GIT_TAG="${OPTARG}" ;;
	*) usage ;;
    esac
done
#-z 表示是否为零。检查下面三个变量是否存在,如果不存在的话,则输出usage函数
[ -z "${CPUS}" ] && usage
[ -z "${SKIP_INSTALL}" ] && usage
[ -z "${GIT_TAG}" ] && usage
#执行脚本
. ../../lib/sh-test-lib
#变量赋值
OUTPUT="$(pwd)/output"
RESULT_FILE="${OUTPUT}/result.txt"
TEST_LOG="${OUTPUT}/isolation-test-output.txt"

create_out_dir "${OUTPUT}"
#符合条件的话,通过clone 命令clone仓库
if [ "${SKIP_INSTALL}" = "false" ] || [ "${SKIP_INSTALL}" = "False" ]; then
    install_deps "git stress cpuset gzip"
    git clone git://git.linaro.org/lng/task-isolation.git
fi

cd task-isolation
#切换到特定的分支
git checkout tags/"${GIT_TAG}" -b "${GIT_TAG}"
#执行这个脚本
./isolate-task.sh -v -c "${CPUS}" sleep "10" 2>&1 | tee "${TEST_LOG}"
#从log中找特定的输出,并把log输出到最终的文件中.
grep TEST_ISOLATION_CORE_ "${TEST_LOG}" > "${RESULT_FILE}"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值