mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-09 00:12:41 +01:00
3e38579fee
Summary: Ref T13395. Libphutil has merged into Arcanist and no longer needs to be installed or upgraded. Additionally: - The minimum PHP version is now PHP 5.5. - Although older versions of PHP should still install APC, modern versions come with Opcache and do not need APC. Setup issues guide administrators thorugh the correct install procedure now. Test Plan: Read documentation. Maniphest Tasks: T13395 Differential Revision: https://secure.phabricator.com/D21550
117 lines
2.9 KiB
Bash
Executable file
117 lines
2.9 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
confirm() {
|
|
echo "Press RETURN to continue, or ^C to cancel.";
|
|
read -e ignored
|
|
}
|
|
|
|
INSTALL_URI=" https://phurl.io/u/install"
|
|
|
|
failed() {
|
|
echo
|
|
echo
|
|
echo "Installation has failed."
|
|
echo "Text above this message might be useful to understanding what exactly failed."
|
|
echo
|
|
echo "Please follow this guide to manually complete installation:"
|
|
echo
|
|
echo $INSTALL_URI
|
|
echo
|
|
echo "We apologize for the inconvenience."
|
|
exit 3
|
|
}
|
|
|
|
ISSUE=`cat /etc/issue`
|
|
if [[ $ISSUE != Ubuntu* ]]
|
|
then
|
|
echo "This script is intended for use on Ubuntu, but this system appears";
|
|
echo "to be something else. Your results may vary.";
|
|
echo
|
|
confirm
|
|
fi
|
|
|
|
echo "PHABRICATOR UBUNTU INSTALL SCRIPT";
|
|
echo "This script will install Apache, Phabricator and its core dependencies.";
|
|
echo "Run it from the directory you want to install into.";
|
|
echo
|
|
|
|
echo "Testing sudo..."
|
|
sudo true
|
|
if [ $? -ne 0 ]
|
|
then
|
|
echo "ERROR: You must be able to sudo to run this script.";
|
|
exit 1;
|
|
fi;
|
|
|
|
echo 'Testing Ubuntu version...'
|
|
|
|
VERSION=`lsb_release -rs`
|
|
MAJOR=`expr match "$VERSION" '\([0-9]*\)'`
|
|
|
|
if [ "$MAJOR" -lt 16 ]
|
|
then
|
|
echo 'This script is intented to install on modern operating systems; Your '
|
|
echo 'operating system is too old for this script.'
|
|
echo 'You can still install Phabricator manually - please consult the installation'
|
|
echo 'guide to see how:'
|
|
echo
|
|
echo $INSTALL_URI
|
|
echo
|
|
exit 2
|
|
fi
|
|
|
|
# Ubuntu 16.04 LTS only has php 7.0 in their repos, so they need this extra ppa.
|
|
# Ubuntu 17.4 and up have official 7.2 builds.
|
|
if [ "$MAJOR" -eq 16 ]
|
|
then
|
|
echo 'This version of Ubuntu requires additional resources in order to install'
|
|
echo 'and run Phabricator.'
|
|
echo 'We will now add a the following package repository to your system:'
|
|
echo ' https://launchpad.net/~ondrej/+archive/ubuntu/php'
|
|
echo
|
|
echo 'This repository is generally considered safe to use.'
|
|
confirm
|
|
|
|
sudo add-apt-repository -y ppa:ondrej/php || failed
|
|
fi
|
|
|
|
ROOT=`pwd`
|
|
echo "Phabricator will be installed to: ${ROOT}.";
|
|
confirm
|
|
|
|
echo "Installing dependencies: git, apache, mysql, php...";
|
|
echo
|
|
sudo apt-get -qq update
|
|
sudo apt-get install \
|
|
git mysql-server apache2 libapache2-mod-php \
|
|
php php-mysql php-gd php-curl php-apcu php-cli php-json php-mbstring \
|
|
|| failed
|
|
|
|
echo "Enabling mod_rewrite in Apache..."
|
|
echo
|
|
sudo a2enmod rewrite || failed
|
|
|
|
echo "Downloading Phabricator and dependencies..."
|
|
echo
|
|
|
|
if [ ! -e arcanist ]
|
|
then
|
|
git clone https://github.com/phacility/arcanist.git
|
|
else
|
|
(cd arcanist && git pull --rebase)
|
|
fi
|
|
|
|
if [ ! -e phabricator ]
|
|
then
|
|
git clone https://github.com/phacility/phabricator.git
|
|
else
|
|
(cd phabricator && git pull --rebase)
|
|
fi
|
|
|
|
echo
|
|
echo
|
|
echo "Install probably worked mostly correctly. Continue with the 'Configuration Guide':";
|
|
echo
|
|
echo " https://secure.phabricator.com/book/phabricator/article/configuration_guide/";
|
|
echo
|
|
echo 'Next step is "Configuring Apache webserver".'
|