forked from mysteriumnetwork/node
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathserver_package_debian
executable file
·70 lines (60 loc) · 2.1 KB
/
server_package_debian
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
#!/bin/bash
###########################################################################
# Packaging script which creates Debian package.
#
# Requirements:
# - GOPATH must be set
# - 'fpm' tool must be on the path (https://github.com/jordansissel/fpm)
#
# To package a build, simple execute:
#> bin/server_package_debian <version> <architecture>
# Usage example:
#> bin/server_package_debian 0.0.1 amd64
OS_DIR_BIN="/usr/bin"
OS_DIR_CONFIG="/etc/mysterium-node"
OS_DIR_INSTALLATION="/usr/lib/mysterium-node/installation"
VERSION=$1
if [ -z "$VERSION" ]; then
printf "\e[0;31m%s\e[0m\n" "Missing version!"
exit 1
fi
ARCH=$2
if [ -z "$ARCH" ]; then
printf "\e[0;31m%s\e[0m\n" "Missing architecture!"
exit 1
fi
FPM_BIN=`which fpm`
if [ ! -x "$FPM_BIN" ]; then
printf "\e[0;31m%s\e[0m\n" "Missing tool 'fpm'!"
exit 1
fi
DIR_BUILD="build/package"
PACKAGE_FILE="${DIR_BUILD}/mysterium-node_linux_${ARCH}.deb"
printf "Building Debian package '$PACKAGE_FILE' for architecture '$ARCH' ..\n" \
&& rm -f ${PACKAGE_FILE} \
&& ${FPM_BIN} \
--name="mysterium-node" \
--description="Server for decentralised VPN built on blockchain" \
--url="https://mysterium.network/" \
--vendor="MysteriumNetwork" \
--license="MIT" \
--maintainer="Valdas Petrulis ([email protected])" \
--version "$VERSION" \
--architecture="$ARCH" \
--package="$PACKAGE_FILE" \
--depends "openvpn (>= 2.3.2)" \
--depends "ca-certificates" \
--depends "iptables" \
--after-install bin/server_package/installation/post-install.sh \
--after-remove bin/server_package/installation/post-uninstall.sh \
-s dir -t deb \
build/server/mysterium_server=${OS_DIR_BIN}/ \
bin/server_package/config/=${OS_DIR_CONFIG}/ \
bin/server_package/installation/=${OS_DIR_INSTALLATION}/
if [ $? -ne 0 ] ; then
printf "\e[0;31m%s\e[0m\n" "Failed to build Debian package!"
exit 1
fi
debber deb:contents ${PACKAGE_FILE}
printf "\e[0;32m%s\e[0m\n" "Debian packaging process for architecture '$ARCH' complete!"
exit 0