Welcome to mirror list, hosted at ThFree Co, Russian Federation.

common.sh « test - github.com/freebsd/poudriere.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: ba1337c2e0c061bfa36430589639acffae9e3464 (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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
THISDIR=$(realpath $(dirname $0))
CMD=$(basename $0)
POUDRIEREPATH=$(realpath ${THISDIR}/../src/bin/poudriere)
POUDRIEREPREFIX=${POUDRIEREPATH%\/bin/*}
SCRIPTPREFIX=${POUDRIEREPREFIX}/share/poudriere

SCRIPTPATH="${SCRIPTPREFIX}/${CMD}"
POUDRIERE_ETC=${THISDIR}/etc

LIBEXECPREFIX="${POUDRIEREPATH%src/bin/poudriere}"
export PATH=${LIBEXECPREFIX}:${PATH}:/sbin:/usr/sbin

: ${DISTFILES_CACHE:=$(mktemp -dt distfiles)}
: ${BASEFS:=${POUDRIERE_ETC}}

mkdir -p ${POUDRIERE_ETC}/poudriere.d
cat > ${POUDRIERE_ETC}/poudriere.conf << EOF
NO_ZFS=yes
BASEFS=${BASEFS}
DISTFILES_CACHE=${DISTFILES_CACHE}
USE_TMPFS=all
USE_PROCFS=no
USE_FDESCFS=no
NOLINUX=yes
${FLAVOR_DEFAULT_ALL:+FLAVOR_DEFAULT_ALL=${FLAVOR_DEFAULT_ALL}}
${FLAVOR_ALL:+FLAVOR_ALL=${FLAVOR_ALL}}
# jail -c options
NO_LIB32=yes
NO_SRC=yes
EOF

: ${VERBOSE:=1}
: ${PARALLEL_JOBS:=2}

msg() {
	echo "$@"
}
msg_debug() {
	if [ ${VERBOSE} -le 1 ]; then
		msg_debug() { }
		return 0
	fi
	msg "[DEBUG] $@" >&2
}

msg_warn() {
	msg "[WARN] $@" >&2
}

msg_dev() {
	if [ ${VERBOSE} -le 2 ]; then
		msg_dev() { }
		return 0
	fi
	msg "[DEV] $@" >&2
}

assert() {
	[ $# -eq 3 ] || eargs assert expected actual msg
	local expected="$(echo "$1" | cat -ev)"
	local actual="$(echo "$2" | cat -ev)"
	local msg="$3"

	: ${EXITVAL:=0}

	EXITVAL=$((${EXITVAL:-0} + 1))

	if [ "${actual}" != "${expected}" ]; then
		aecho "${msg}: expected: '${expected}', actual: '${actual}'"
		exit ${EXITVAL}
	fi

	return 0

}

assert_not() {
	[ $# -eq 3 ] || eargs assert_not notexpected actual msg
	local notexpected="$(echo "$1" | cat -ev)"
	local actual="$(echo "$2" | cat -ev)"
	local msg="$3"

	: ${EXITVAL:=0}

	EXITVAL=$((${EXITVAL:-0} + 1))

	if [ "${actual}" = "${notexpected}" ]; then
		aecho "${msg}: notexpected: '${notexpected}', actual: '${actual}'"
		exit ${EXITVAL}
	fi

	return 0

}

assert_ret() {
	local expected="$1"
	local ret

	shift

	ret=0
	"$@" || ret=$?
	assert ${expected} ${ret} "$*"
}

aecho() {
	echo "$@" >&2
}