1
1
#! /bin/bash
2
2
SOURCE_DIR=/usr/src
3
- DEST_BASE_DIR=" "
4
- SYSTEMD_NAME=haproxy.service
5
- HAPROXY_VERSION=1.9.1
6
3
LUA_VERSION=5.3.5
7
4
8
- install_haproxy_var=false
9
5
install_luaoauth_var=false
10
6
rhel_based=false
11
7
debian_based=false
12
8
lua_installed=false
13
- lua_dep_dir=$DEST_BASE_DIR /usr/local/share/lua/5.3/
9
+ lua_dep_dir=/usr/local/share/lua/5.3/
14
10
15
11
if [ -f /etc/redhat-release ]; then
16
12
rhel_based=true
@@ -32,12 +28,6 @@ display_working() {
32
28
done
33
29
}
34
30
35
- download_haproxy_rhel () {
36
- printf " \r[+] Downloading HAProxy\n"
37
- curl -sLO https://www.haproxy.org/download/1.9/src/haproxy-$HAPROXY_VERSION .tar.gz
38
- tar xf haproxy-$HAPROXY_VERSION .tar.gz && rm haproxy-$HAPROXY_VERSION .tar.gz
39
- }
40
-
41
31
download_rhel_lua () {
42
32
printf " \r[+] Downloading Lua\n"
43
33
curl -sLO https://www.lua.org/ftp/lua-$LUA_VERSION .tar.gz
@@ -49,40 +39,6 @@ install_yum_deps() {
49
39
yum -y install gcc openssl-devel readline-devel systemd-devel unzip > /dev/null 2>&1
50
40
}
51
41
52
- build_haproxy () {
53
- printf " \r[+] Building HAProxy\n"
54
- cd $SOURCE_DIR /haproxy-$HAPROXY_VERSION
55
- make TARGET=linux2628 USE_LINUX_SPLICE=1 USE_CPU_AFFINITY=1 USE_REGPARM=1 USE_SYSTEMD=1 USE_PCRE= USE_PCRE_JIT=1 USE_NS=1 USE_OPENSSL=1 USE_LUA=1 LUA_INC=/usr/src/lua-$LUA_VERSION /src/ LUA_LIB=/usr/src/lua-$LUA_VERSION /src/ > /dev/null
56
-
57
- if [ ! -f haproxy ]; then
58
- printf " \rThere was an error within the HAProxy build\n" ;
59
- printf " \rmake TARGET=linux2628 USE_LINUX_SPLICE=1 USE_CPU_AFFINITY=1 USE_REGPARM=1 USE_SYSTEMD=1 USE_PCRE= USE_PCRE_JIT=1 USE_NS=1 USE_OPENSSL=1 USE_LUA=1 LUA_INC=/usr/src/lua-$LUA_VERSION /src/ LUA_LIB=/usr/src/lua-$LUA_VERSION /src/\n"
60
- make TARGET=linux2628 USE_LINUX_SPLICE=1 USE_CPU_AFFINITY=1 USE_REGPARM=1 USE_SYSTEMD=1 USE_PCRE= USE_PCRE_JIT=1 USE_NS=1 USE_OPENSSL=1 USE_LUA=1 LUA_INC=/usr/src/lua-$LUA_VERSION /src/ LUA_LIB=/usr/src/lua-$LUA_VERSION /src/
61
- fi
62
- }
63
-
64
- install_rhel_haproxy () {
65
- printf " \r[+] Installing HAProxy\n"
66
- /bin/cp $SOURCE_DIR /haproxy-$HAPROXY_VERSION /haproxy $DEST_BASE_DIR /usr/sbin/
67
- mkdir -p $DEST_BASE_DIR /etc/haproxy/pem
68
- }
69
-
70
- install_deb_haproxy () {
71
- printf " \r[+] Installing HAProxy\n"
72
- haproxy_deb_version=$( echo $HAPROXY_VERSION | cut -d' .' -f1-2)
73
- add-apt-repository ppa:vbernat/haproxy-$haproxy_deb_version > /dev/null 2>&1
74
- apt-get update > /dev/null
75
- apt-get install -y haproxy > /dev/null
76
- }
77
-
78
- install_haproxy_systemd () {
79
- cd $SOURCE_DIR /haproxy-$HAPROXY_VERSION /contrib/systemd
80
- make clean > /dev/null
81
- make PREFIX=$DEST_BASE_DIR /usr > /dev/null
82
- /bin/cp haproxy.service /usr/lib/systemd/system/$SYSTEMD_NAME
83
- systemctl daemon-reload
84
- }
85
-
86
42
build_lua () {
87
43
printf " \r[+] Building Lua\n"
88
44
cd $SOURCE_DIR /lua-$LUA_VERSION
@@ -144,38 +100,13 @@ install_luaoauth_deps() {
144
100
}
145
101
146
102
case $1 in
147
- haproxy)
148
- install_haproxy_var=true
149
- ;;
150
103
luaoauth)
151
104
install_luaoauth_var=true
152
105
;;
153
- all)
154
- install_haproxy_var=true
155
- install_luaoauth_var=true
156
- ;;
157
106
* )
158
- print_help
107
+ echo " Usage: install.sh luaoauth "
159
108
esac
160
109
161
- if $install_haproxy_var ; then
162
- # Install HAProxy
163
- if $rhel_based ; then
164
- download_and_install_haproxylua=(download_haproxy_rhel download_rhel_lua install_yum_deps build_lua install_rhel_lua build_haproxy install_rhel_haproxy install_haproxy_systemd)
165
- for func in ${download_and_install_haproxylua[*]} ; do
166
- $func &
167
- display_working $!
168
- done
169
- elif $debian_based ; then
170
- download_and_install_haproxylua=(install_deb_haproxy install_deb_lua)
171
- for func in ${download_and_install_haproxylua[*]} ; do
172
- $func &
173
- display_working $!
174
- done
175
- fi
176
- lua_installed=true
177
- fi
178
-
179
110
if $install_luaoauth_var ; then
180
111
# Install Lua JWT
181
112
if ! $lua_installed ; then
0 commit comments