From 3e38579feea3599043eb25897c4d0695e6411c17 Mon Sep 17 00:00:00 2001 From: epriestley Date: Mon, 8 Feb 2021 09:42:49 -0800 Subject: [PATCH] Update install and upgrade documentation for libphutil 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 --- scripts/install/install_rhel-derivs.sh | 7 ---- scripts/install/install_ubuntu.sh | 6 ---- src/docs/user/installation_guide.diviner | 45 ++++-------------------- src/docs/user/upgrading.diviner | 11 ++---- 4 files changed, 10 insertions(+), 59 deletions(-) diff --git a/scripts/install/install_rhel-derivs.sh b/scripts/install/install_rhel-derivs.sh index 8c856ba40f..b5abfbdd25 100755 --- a/scripts/install/install_rhel-derivs.sh +++ b/scripts/install/install_rhel-derivs.sh @@ -117,13 +117,6 @@ fi confirm -if [[ ! -e libphutil ]] -then - git clone https://github.com/phacility/libphutil.git -else - (cd libphutil && git pull --rebase) -fi - if [[ ! -e arcanist ]] then git clone https://github.com/phacility/arcanist.git diff --git a/scripts/install/install_ubuntu.sh b/scripts/install/install_ubuntu.sh index ab83c3a46c..7f5f552fdf 100755 --- a/scripts/install/install_ubuntu.sh +++ b/scripts/install/install_ubuntu.sh @@ -93,12 +93,6 @@ sudo a2enmod rewrite || failed echo "Downloading Phabricator and dependencies..." echo -if [ ! -e libphutil ] -then - git clone https://github.com/phacility/libphutil.git -else - (cd libphutil && git pull --rebase) -fi if [ ! -e arcanist ] then diff --git a/src/docs/user/installation_guide.diviner b/src/docs/user/installation_guide.diviner index 29895eb2a9..269b20b62a 100644 --- a/src/docs/user/installation_guide.diviner +++ b/src/docs/user/installation_guide.diviner @@ -64,13 +64,14 @@ Beyond an operating system, you will need **a webserver**. works fine. - **Other**: Other webservers which can run PHP are also likely to work fine, although these installation instructions will not cover how to set them up. - - **PHP Builtin Server**: You can use the builtin PHP webserver for - development or testing, although it should not be used in production. + - **PHP Builtin Server**: Phabricator will not work with the builtin + webserver because Phabricator depends on making requests to itself on some + workflows, and the builtin webserver is single-threaded. You will also need: - **MySQL**: You need MySQL. We strongly recommend MySQL 5.5 or newer. - - **PHP**: You need PHP 5.2 or newer. + - **PHP**: You need PHP 5.5 or newer. You'll probably also need a **domain name**. In particular, you should read this note: @@ -124,9 +125,7 @@ Otherwise, here's a general description of what you need to install: - PHP (usually "php") - Required PHP extensions: mbstring, iconv, mysql (or mysqli), curl, pcntl (these might be something like "php-mysql" or "php5-mysqlnd") - - Optional PHP extensions: gd, apc (special instructions for APC are available - below if you have difficulty installing it), xhprof (instructions below, - you only need this if you are developing Phabricator) + - Optional PHP extensions: gd If you already have LAMP setup, you've probably already got everything you need. It may also be helpful to refer to the install scripts above, even if they don't @@ -136,41 +135,11 @@ Now that you have all that stuff installed, grab Phabricator and its dependencies: $ cd somewhere/ # pick some install directory - somewhere/ $ git clone https://github.com/phacility/libphutil.git somewhere/ $ git clone https://github.com/phacility/arcanist.git somewhere/ $ git clone https://github.com/phacility/phabricator.git -= Installing APC (Optional) = - -Like everything else written in PHP, Phabricator will run much faster with APC -installed. You likely need to install "pcre-devel" first: - - sudo yum install pcre-devel - -Then you have two options. Either install via PECL (try this first): - - sudo yum install php-pear - sudo pecl install apc - -**If that doesn't work**, grab the package from PECL directly and follow the -build instructions there: - -http://pecl.php.net/package/APC - -Installing APC is optional but **strongly recommended**, especially on -production hosts. - -Once APC is installed, test that it is available by running: - - php -i | grep apc - -If it doesn't show up, add: - - extension=apc.so - -..to "/etc/php.d/apc.ini" or the "php.ini" file indicated by "php -i". - -= Next Steps = +Next Steps +========== Continue by: diff --git a/src/docs/user/upgrading.diviner b/src/docs/user/upgrading.diviner index bf15aa5904..705b38e4ee 100644 --- a/src/docs/user/upgrading.diviner +++ b/src/docs/user/upgrading.diviner @@ -43,7 +43,6 @@ To switch to `stable`, check the branch out in each working copy: phabricator/ $ git checkout stable arcanist/ $ git checkout stable - libphutil/ $ git checkout stable You can now follow the upgrade process normally. @@ -54,8 +53,7 @@ Upgrade Process IMPORTANT: You **MUST** restart Phabricator after upgrading. For help, see @{article:Restarting Phabricator}. -IMPORTANT: You **MUST** upgrade `libphutil`, `arcanist` and `phabricator` at -the same time. +IMPORTANT: You **MUST** upgrade `arcanist` and `phabricator` at the same time. Phabricator runs on many different systems, with many different webservers. Given this diversity, we don't currently maintain a comprehensive upgrade @@ -64,7 +62,7 @@ on every system: - Stop the webserver (including `php-fpm`, if you use it). - Stop the daemons, with `phabricator/bin/phd stop`. - - Run `git pull` in `libphutil/`, `arcanist/` and `phabricator/`. + - Run `git pull` in `arcanist/` and `phabricator/`. - Run `phabricator/bin/storage upgrade`. - Start the daemons, with `phabricator/bin/phd start`. - Restart the webserver (and `php-fpm`, if you stopped it earlier). @@ -86,7 +84,7 @@ set -x # to work without modifications. # NOTE: This script assumes you are running it from a directory which contains -# arcanist/, libphutil/, and phabricator/. +# arcanist/, and phabricator/. ROOT=`pwd` # You can hard-code the path here instead. @@ -107,9 +105,6 @@ sudo /etc/init.d/httpd stop ### UPDATE WORKING COPIES ###################################################### -cd $ROOT/libphutil -git pull - cd $ROOT/arcanist git pull