blob: 82d31eecedd30c38d4dc6e41dfea586f92b1cef8 (
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
|
#!/usr/bin/env bash
# Return values
# 0 if the package, source and installation were successful
# 1 if the source packages are missing
# 2 if the binary is not present in the repository
# 3 if the binary and source packages are not present in the repository
# 4 if the binary failed to install
# 5 if the binary failed to install and the source package is not available.
function finish {
rm /etc/apt/sources.list.d/swift-distr.list
if [[ "$1" != "*ubuntu*" ]]; then
rm /etc/apt/sources.list.d/ubuntu-universe.list
fi
{
rm -rf swift-im* packages.key*
apt-get remove -y swift-im
apt-get autoremove -y
} &>/dev/null
}
trap finish EXIT
if [ "$#" -ne 4 ]; then
echo "Usage $0 <remote_repository> <dist_code_name> <swift_version> <release> "
exit 1
fi
RELEASE="$4"
echo "Repository $1 build $RELEASE contents:"
echo "------------------------"
#Adding the swift repository
echo deb $1 $RELEASE main >/etc/apt/sources.list.d/swift-distr.list
echo deb-src $1 $RELEASE main >>/etc/apt/sources.list.d/swift-distr.list
#Adding the ubuntu universe repository if it is not present.
if [[ "$1" != "*ubuntu*" ]]; then
if ! grep -q '^deb http://archive.ubuntu.com/ubuntu '"$2"' universe' /etc/apt/sources.list /etc/apt/sources.list.d/*.list; then
echo deb http://archive.ubuntu.com/ubuntu $2 universe >/etc/apt/sources.list.d/ubuntu-universe.list
fi
fi
{
apt-get remove -y swift-im
apt-get autoremove -y
apt-get update
apt-get upgrade -y
apt-get install -y apt-transport-https wget
apt-get install -y dpkg-dev
wget http://swift.im/keys/packages.key
apt-key add packages.key
apt-get update
} &>/dev/null
RETURN_VALUE=0
echo "Sources:"
{
rm -rf swift-im*
apt-get source swift-im=$3
} &>/dev/null
if [ "$?" -eq 0 ]; then
echo "Sources files downloaded."
else
echo "Sources files not present"
RETURN_VALUE=$((RETURN_VALUE + ((1 << 0))))
fi
echo "Binary:"
{
apt-cache show swift-im=$3*
} &>/dev/null
if [ "$?" -ne 0 ]; then
echo "Swift package was not found in the repository."
RETURN_VALUE=$((RETURN_VALUE + ((1 << 1))))
exit $RETURN_VALUE
fi
echo "Installing binaries"
{
apt-get install -y swift-im=$3*
} &>/dev/null
if [ "$?" -eq 0 ]; then
echo "Installation was successful."
else
echo "Installation failed"
RETURN_VALUE=$((RETURN_VALUE + ((1 << 2))))
fi
echo "------------------------"
exit $RETURN_VALUE
|