blob: 1cc38e199297fc99427eddcb74c123eb53e5dfbd (
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
110
111
112
113
|
#!/bin/bash
usage()
{
echo "Usage: `basename $0` [-h|--help] [-e|--emulator] [-d|--device]
-h, --help Show this message.
-e, --emulator Install on emulator (default).
-d, --device Install on device."
}
DEVS=($(sdb devices | tail -n+2))
if [ -z $DEVS ]
then
echo "Please connect device or launch emulator."
exit 1
fi
if [ -z $1 ]
then
DEV=e
ARCH=i586
else
case $1 in
-e|--emulator)
DEV=e
ARCH=i586
;;
-d|--device)
DEV=d
ARCH=armv7l
;;
-h|--help)
;&
*)
usage
exit 1
;;
esac
fi
push()
{
GBS=~/GBS-ROOT
ROOT=$GBS/local/BUILD-ROOTS/scratch.$ARCH.0
if [ ! -e $ROOT/*.conf ]
then
echo "Build root is not ready at $ROOT."
exit 1
fi
REPO=$(basename $ROOT/*.conf)
REPO=${REPO%.*}
RPMS=$GBS/local/repos/$REPO/$ARCH/RPMS
if [ ! -e "$RPMS/$1" ]
then
echo "Can't find $1 in $RPMS. Run build first."
exit 1
fi
echo "Pushing $1 into $2..."
sdb -$DEV push "$RPMS/$1" "$2" 2> /dev/null
}
install()
{
echo "Installing $2..."
if [[ "$2" == lib* ]]
then
sdb -$DEV root on > /dev/null
sdb -$DEV shell rpm -i --force "$1/$2" > /dev/null
sdb -$DEV root off > /dev/null
else
sdb -$DEV shell pkgcmd -iqt rpm -p "$1/$2" > /dev/null
fi
}
deploy()
{
push "$1" "$2"
install "$2" "$1"
sdb -$DEV shell rm "$2/$1" > /dev/null
}
DEST=/home/developer
VER=$(grep Version: packaging/*.spec | awk '{print $2}')
REL=$(grep Release: packaging/*.spec | awk '{print $2}')
SUFFIX="$VER-$REL.$ARCH.rpm"
PKGS=($(grep %package packaging/*.spec | awk '{print $3}'))
if [ -z $PKGS ]
then
PKG=$(grep Name: packaging/*.spec | awk '{print $2}')
deploy "$PKG-$SUFFIX" "$DEST"
else
echo "Current package contains several sub-packages:"
for i in ${!PKGS[@]}
do
echo "$((i + 1)). ${PKGS[$i]}"
done
echo "Specify packages and order of installation (for example: 5 1):"
read NUMS
for i in $NUMS
do
deploy "${PKGS[$((i - 1))]}-$SUFFIX" "$DEST"
done
fi
echo "Done."
|