131 lines
3.0 KiB
Bash
131 lines
3.0 KiB
Bash
#############################
|
|
# SingleModuleInstaller #
|
|
#############################
|
|
|
|
|
|
##-----------------##
|
|
# Defining Vars #
|
|
##-----------------##
|
|
|
|
#SMI specific Vars
|
|
SMI_config=no
|
|
SMI_ModuleName=<ModuleName>
|
|
|
|
#Enforcing Legacy Mode
|
|
PKGM="apt"
|
|
OUTPUT='/dev/tty'
|
|
IMODE=l
|
|
|
|
#Web-V2 Vars
|
|
domain=test.local
|
|
hostname=s1.test.local
|
|
sslenable=1
|
|
password=TestP@ssword123
|
|
email=test@mail.local
|
|
webserv=nginx
|
|
|
|
#Repo Vars
|
|
repo=https://git.ictmaatwerk.com/bprieshof/UBU-Web-V2
|
|
branch=master
|
|
|
|
###Select Module type
|
|
##Uncomment for CoreModules
|
|
mtype=""$repo"/raw/"$branchtype"/"$branch"/CoreModules/"$SMI_ModuleName""
|
|
##Uncomment for SubModules
|
|
#mtype=""$repo"/raw/"$branchtype"/"$branch"/SubModules/"$SMI_ModuleName""
|
|
##Uncomment for CMS
|
|
#mtype=""$repo"/raw/"$branchtype"/"$branch"/CMS/"$SMI_ModuleName""
|
|
##Uncomment for External Module
|
|
#mtype=""$repo"/raw/"$branchtype"/"$branch""
|
|
|
|
#SelfBuilding Vars
|
|
PKGI="${PKGM} install -y"
|
|
|
|
|
|
##---------------##
|
|
# Functions #
|
|
##---------------##
|
|
|
|
msg () {
|
|
echo "$1"
|
|
}
|
|
|
|
#Checking if Config var has been set
|
|
if [ $SMI_config = no ]; then
|
|
msg " Script is not configured"
|
|
exit
|
|
fi
|
|
|
|
|
|
##--------------------------##
|
|
# Installer-Requirements #
|
|
##--------------------------##
|
|
|
|
msg " Starting installer" 8 78
|
|
$PKGM update > $OUTPUT 2>&1
|
|
$PKGI curl > $OUTPUT 2>&1
|
|
|
|
|
|
##-------------------------##
|
|
# Generating APT list #
|
|
##-------------------------##
|
|
#General aptList
|
|
if curl --retry 2 --retry-delay 1 --output /dev/null --silent --head --fail "$mtype"/"$webserv"-apt.list; then
|
|
curl "$mtype"/"$webserv"-apt.list >>/tmp/apt.list
|
|
fi
|
|
#Webserver specific aptList
|
|
if curl --retry 2 --retry-delay 1 --output /dev/null --silent --head --fail "$mtype"/apt.list; then
|
|
curl "$mtype"/apt.list >>/tmp/apt.list
|
|
fi
|
|
|
|
|
|
##--------------------##
|
|
# Pre-Requirements #
|
|
##--------------------##
|
|
|
|
msg " Preconfiguring"
|
|
$PKGI software-properties-common gnupg > $OUTPUT 2>&1
|
|
$PKGM update
|
|
$PKGM upgrade -y
|
|
|
|
|
|
##-------------------##
|
|
# Pre-configuring #
|
|
##-------------------##
|
|
|
|
if curl --retry 2 --retry-delay 1 --output /dev/null --silent --head --fail "$mtype"/preconf.sh; then
|
|
source <(curl --retry 7 --retry-delay 5 -s "$mtype"/preconf.sh)
|
|
fi
|
|
|
|
if curl --retry 2 --retry-delay 1 --output /dev/null --silent --head --fail "$mtype"/"$webserv"-preconf.sh; then
|
|
source <(curl --retry 7 --retry-delay 5 -s "$mtype"/"$webserv"-preconf.sh)
|
|
fi
|
|
|
|
|
|
##-------------##
|
|
# Installer #
|
|
##-------------##
|
|
|
|
$PKGM update
|
|
sed -i 's/PHPver/'$phpver'/g' /tmp/apt.list
|
|
cat /tmp/apt.list | xargs $PKGI
|
|
|
|
|
|
##---------------##
|
|
# Configuring #
|
|
##---------------##
|
|
|
|
if curl --retry 2 --retry-delay 1 --output /dev/null --silent --head --fail "$mtype"/conf.sh; then
|
|
source <(curl --retry 7 --retry-delay 5 -s "$mtype"/conf.sh)
|
|
fi
|
|
|
|
if curl --retry 2 --retry-delay 1 --output /dev/null --silent --head --fail "$mtype"/"$webserv"-conf.sh; then
|
|
source <(curl --retry 7 --retry-delay 5 -s "$mtype"/"$webserv"-conf.sh)
|
|
fi
|
|
|
|
|
|
##-------##
|
|
# end #
|
|
##-------##
|
|
|
|
msg " Done!" |