Added Branch support
moved command line argument processing to a separate script so it can be shared added --use-system-master to allow user to use master branch instead of detected master
This commit is contained in:
parent
581cdd15f4
commit
427d1d8ba1
|
|
@ -3,44 +3,7 @@
|
||||||
#move to script directory so all relative paths work
|
#move to script directory so all relative paths work
|
||||||
cd "$(dirname "$0")"
|
cd "$(dirname "$0")"
|
||||||
|
|
||||||
. resources/colors.sh
|
. resources/arguments.sh
|
||||||
|
|
||||||
#Process command line options
|
|
||||||
ARGS=$(getopt -n 'install.sh' -o h -l help,use-switch-source,use-switch-package-all,use-switch-master,use-switch-package-unofficial-arm,no-cpu-check -- "$@")
|
|
||||||
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
error "Failed parsing options."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
export USE_SWITCH_SOURCE=false
|
|
||||||
export USE_SWITCH_PACKAGE_ALL=false
|
|
||||||
export USE_SWITCH_PACKAGE_UNOFFICIAL_ARM=false
|
|
||||||
export USE_SWITCH_MASTER=false
|
|
||||||
export CPU_CHECK=true
|
|
||||||
HELP=false
|
|
||||||
|
|
||||||
while true; do
|
|
||||||
case "$1" in
|
|
||||||
--use-switch-source ) export USE_SWITCH_SOURCE=true; shift ;;
|
|
||||||
--use-switch-package-all ) export USE_SWITCH_PACKAGE_ALL=true; shift ;;
|
|
||||||
--use-switch-master ) export USE_SWITCH_MASTER=true; shift ;;
|
|
||||||
--no-cpu-check ) export CPU_CHECK=false; shift ;;
|
|
||||||
-h | --help ) HELP=true; shift ;;
|
|
||||||
-- ) shift; break ;;
|
|
||||||
* ) break ;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ $HELP = true ]; then
|
|
||||||
warning "Debian installer script"
|
|
||||||
warning " --use-switch-source will use freeswitch from source rather than ${green}(default:packages)"
|
|
||||||
warning " --use-switch-package-all if using packages use the meta-all package"
|
|
||||||
warning " --use-switch-package-unofficial-arm if your system is arm and you are using packages, use the unofficial arm repo"
|
|
||||||
warning " --use-switch-master will use master branch/packages instead of ${green}(default:stable)"
|
|
||||||
warning " --no-cpu-check disable the cpu check ${green}(default:check)"
|
|
||||||
exit;
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $CPU_CHECK = true ] && [ $USE_SWITCH_SOURCE = false ]; then
|
if [ $CPU_CHECK = true ] && [ $USE_SWITCH_SOURCE = false ]; then
|
||||||
#check what the CPU and OS are
|
#check what the CPU and OS are
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,46 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
. ./colors.sh
|
||||||
|
|
||||||
|
#Process command line options only if we haven't been processed once
|
||||||
|
if [ -z "$CPU_CHECK" ]; then
|
||||||
|
export script_name=`basename "$0"`
|
||||||
|
ARGS=$(getopt -n '$script_name' -o h -l help,use-switch-source,use-switch-package-all,use-switch-master,use-switch-package-unofficial-arm,use-system-master,no-cpu-check -- "$@")
|
||||||
|
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
error "Failed parsing options."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
export USE_SWITCH_SOURCE=false
|
||||||
|
export USE_SWITCH_PACKAGE_ALL=false
|
||||||
|
export USE_SWITCH_PACKAGE_UNOFFICIAL_ARM=false
|
||||||
|
export USE_SWITCH_MASTER=false
|
||||||
|
export USE_SYSTEM_MASTER=false
|
||||||
|
export CPU_CHECK=true
|
||||||
|
HELP=false
|
||||||
|
|
||||||
|
while true; do
|
||||||
|
case "$1" in
|
||||||
|
--use-switch-source ) export USE_SWITCH_SOURCE=true; shift ;;
|
||||||
|
--use-switch-package-all ) export USE_SWITCH_PACKAGE_ALL=true; shift ;;
|
||||||
|
--use-switch-master ) export USE_SWITCH_MASTER=true; shift ;;
|
||||||
|
--use-system-master ) export USE_SYSTEM_MASTER=true; shift ;;
|
||||||
|
--no-cpu-check ) export CPU_CHECK=false; shift ;;
|
||||||
|
-h | --help ) HELP=true; shift ;;
|
||||||
|
-- ) shift; break ;;
|
||||||
|
* ) break ;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ $HELP = true ]; then
|
||||||
|
warning "Debian installer script"
|
||||||
|
warning " --use-switch-source will use freeswitch from source rather than ${green}(default:packages)"
|
||||||
|
warning " --use-switch-package-all if using packages use the meta-all package"
|
||||||
|
warning " --use-switch-package-unofficial-arm if your system is arm and you are using packages, use the unofficial arm repo"
|
||||||
|
warning " --use-switch-master will use master branch/packages for the switch instead of ${green}(default:stable)"
|
||||||
|
warning " --use-system-master will use master branch/packages for the system instead of ${green}(default:stable)"
|
||||||
|
warning " --no-cpu-check disable the cpu check ${green}(default:check)"
|
||||||
|
exit;
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
@ -1,12 +1,28 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
|
#move to script directory so all relative paths work
|
||||||
|
cd "$(dirname "$0")"
|
||||||
|
|
||||||
|
. ./arguments.sh
|
||||||
|
|
||||||
#send a message
|
#send a message
|
||||||
echo "Install FusionPBX"
|
verbose "Installing FusionPBX"
|
||||||
|
|
||||||
#install dependencies
|
#install dependencies
|
||||||
apt-get install -y --force-yes vim git dbus haveged ssl-cert
|
apt-get install -y --force-yes vim git dbus haveged ssl-cert
|
||||||
apt-get install -y --force-yes ghostscript libtiff5-dev libtiff-tools
|
apt-get install -y --force-yes ghostscript libtiff5-dev libtiff-tools
|
||||||
|
|
||||||
|
if [ $USE_SYSTEM_MASTER = false ]; then
|
||||||
|
FUSION_MAJOR=$(git ls-remote --heads https://github.com/fusionpbx/fusionpbx.git | cut -d/ -f 3 | grep -P '^\d+\.\d+' | sort | tail -n 1 | cut -d. -f1)
|
||||||
|
FUSION_MINOR=$(git ls-remote --tags https://github.com/fusionpbx/fusionpbx.git $FUSION_MAJOR.* | cut -d/ -f3 | grep -P '^\d+\.\d+' | sort | tail -n 1 | cut -d. -f2)
|
||||||
|
FUSION_VERSION=$FUSION_MAJOR.$FUSION_MINOR
|
||||||
|
verbose "Using version $FUSION_VERSION"
|
||||||
|
BRANCH="-b $FUSION_VERSION"
|
||||||
|
else
|
||||||
|
verbose "Using master"
|
||||||
|
BRANCH=""
|
||||||
|
fi
|
||||||
|
|
||||||
#get the source code
|
#get the source code
|
||||||
git clone https://github.com/fusionpbx/fusionpbx.git /var/www/fusionpbx
|
git clone $BRANCH https://github.com/fusionpbx/fusionpbx.git /var/www/fusionpbx
|
||||||
chown -R www-data:www-data /var/www/fusionpbx
|
chown -R www-data:www-data /var/www/fusionpbx
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,9 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
#initialize variable encase we are called directly
|
|
||||||
[ -z $USE_SWITCH_PACKAGE_UNOFFICIAL_ARM ] && USE_SWITCH_PACKAGE_UNOFFICIAL_ARM=false
|
#move to script directory so all relative paths work
|
||||||
|
cd "$(dirname "$0")"
|
||||||
|
|
||||||
|
. ./arguments.sh
|
||||||
|
|
||||||
apt-get update && apt-get install -y --force-yes curl memcached haveged
|
apt-get update && apt-get install -y --force-yes curl memcached haveged
|
||||||
arch=$(uname -m)
|
arch=$(uname -m)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue