summaryrefslogtreecommitdiff
path: root/lib/common.sh
blob: 1318a272b2792ed46483efc9b98dbefd4e106901 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49

log_verbose()
{
    if [[ $ktest_verbose != 0 ]]; then
	echo "$@"
    fi
}

run_quiet()
{
    local msg=$1
    shift

    if [[ $ktest_verbose = 0 ]]; then
	if [[ -n $msg ]]; then
	    echo -n "$msg... "
	fi

	get_tmpdir
	local out="$ktest_tmp/out-$msg"

	set +e
	(set -e; "$@") > "$out" 2>&1
	local ret=$?
	set -e

	if [[ $ret != 0 ]]; then
	    echo
	    cat "$out"
	    exit 1
	fi

	if [[ -n $msg ]]; then
	    echo done
	fi
    else
	if [[ -n $msg ]]; then
	    echo "$msg:"
	fi
	"$@"
    fi
}

join_by()
{
    local IFS="$1"
    shift
    echo "$*"
}