# HG changeset patch # User wenzelm # Date 1576501126 -3600 # Node ID cfcc1a2233caacfac096721931dfbf46948c1722 # Parent de59dd86760f2735d3622860d709d9829c848d99 support for Phabricator upgrade; diff -r de59dd86760f -r cfcc1a2233ca src/Pure/Tools/phabricator.scala --- a/src/Pure/Tools/phabricator.scala Mon Dec 16 13:24:36 2019 +0100 +++ b/src/Pure/Tools/phabricator.scala Mon Dec 16 13:58:46 2019 +0100 @@ -284,9 +284,9 @@ script = """ set -e echo "Cloning distribution repositories:" - git clone https://github.com/phacility/libphutil.git - git clone https://github.com/phacility/arcanist.git - git clone https://github.com/phacility/phabricator.git + git clone --branch stable https://github.com/phacility/libphutil.git + git clone --branch stable https://github.com/phacility/arcanist.git + git clone --branch stable https://github.com/phacility/phabricator.git """).check val config = Config(name, root_path) @@ -380,6 +380,37 @@ "$ROOT/phabricator/bin/storage" dump --compress --output "$ROOT/database/dump.sql.gz" 2>&1 | fgrep -v '[Warning] Using a password on the command line interface can be insecure' """) + /* Phabricator upgrade */ + + command_setup(isabelle_phabricator_name(name = "upgrade"), + init = +"""BRANCH="${1:stable}" +if [ "$BRANCH" != "master" -a "$BRANCH" != "stable" ] +then + echo "Bad branch: \"$BRANCH\"" + exit 1 +fi + +systemctl stop isabelle-phabricator-phd +systemctl stop apache2 +""", + body = +"""echo -e "\nUpgrading phabricator \"$NAME\" root \"$ROOT\" ..." +for REPO in libphutil arcanist phabricator +do + cd "$ROOT/$REPO" + echo -e "\nUpdating \"$REPO\" ..." + git checkout "$BRANCH" + git pull +done +echo -e "\nUpgrading storage ..." +"$ROOT/phabricator/bin/storage" upgrade --force +""", + exit = +"""systemctl start apache2 +systemctl start isabelle-phabricator-phd""") + + /* PHP setup */ val php_version =