summaryrefslogtreecommitdiffstats
path: root/mockit
blob: 5de58a2b17af53b0dded19e280c5ee68949e864a (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
#!/bin/bash

if [ "$2" = "" ]; then
	echo usage SRPM distro [ min_ver [, max_ver [, mock_options ]]]
	exit 0
fi

BUILD_BASE=1
BUILD_SCLS=1

if [ "$1" == "--nobase" -o "$1" == "--scl" ]; then
	BUILD_BASE=0
	shift
fi
if [ "$1" == "--noscl" -o "$1" == "--base" ]; then
	BUILD_SCLS=0
	shift
fi

SRPM=$1
DIST=$2
shift 2

if [ "$1" = "" ]; then
	MIN=0
else
	MIN=$1
	shift
fi
if [ "$1" = "" ]; then
	MAX=999
else
	MAX=$1
	shift
fi

case $DIST in
	*x)
		mocketc=/home/rpmbuild/SPECS/remirepo/tools/mock
		srpmdir=/home/rpmbuild/site/rpms/SRPMS
		;;
	*a)
		mocketc=/home/remi/mock
		srpmdir=/home/remi/SRPMS
		;;
esac

if [ -f $srpmdir/$SRPM ]; then
	SRPM=$srpmdir/$SRPM
elif [ ! -f $SRPM ]; then
	echo "file not found '$SRPM'"
	exit 1
fi

echo mockit $SRPM $DIST $MIN $MAX $@
case $DIST in
	fc37x|fc38x|fc39x|el9x|el9a)
		LST="81 74 80 82 83"
		SCL="74 80 81 82 83"
		;;
	el8x)
		LST="72 73 74 80 81 82 83"
		SCL="56 70 71 72 73 74 80 81 82 83"
		;;
	el7x)
		LST="54 55 56 70 71 72 73 74 80 81 82 83"
		SCL="54 55 56 70 71 72 73 74 80 81 82 83"
		;;
	*)
		echo Unkown DIST $DIST
		exit 1
		;;
esac

# TODO waiting for --uniqueext (instead of flock) when mock 5 dnf cache lock will be fixed

[ $BUILD_BASE -ge 1 ] && for i in $LST
do
	if [ 0$i -ge $MIN -a 0$i -le $MAX ]; then
		echo -n "$(date +%X)    $i "
	    flock /tmp/build_${DIST}${i}.lock mock -q --configdir=$mocketc -r ${DIST}${i} rebuild $SRPM "$@" && echo " Ok." || echo " Error !"
	fi
done
[ $BUILD_SCLS -ge 1 ] && for i in $SCL
do
	if [ 0$i -ge $MIN -a 0$i -le $MAX ]; then
		echo -n "$(date +%X) scl$i "
	    flock /tmp/build_${DIST}scl${i}.lock mock -q --configdir=$mocketc -r ${DIST}scl${i} rebuild $SRPM "$@" && echo " Ok." || echo " Error !"
	fi
done
date +%X