From 9e25a8e32e6dc7364eb46519b923b2293035d97a Mon Sep 17 00:00:00 2001 From: Daniel Friesen Date: Sun, 6 Nov 2011 22:50:32 +0000 Subject: [PATCH] Commit maintenance/dev/ a set of bash scripts that can quickly download php 5.4, install it in an isolated area, install a quick development copy of MediaWiki, and then start up a local webserver. --- maintenance/dev/README | 7 ++++++ maintenance/dev/install.sh | 8 +++++++ maintenance/dev/installmw.sh | 16 ++++++++++++++ maintenance/dev/installphp.sh | 41 +++++++++++++++++++++++++++++++++++ maintenance/dev/start.sh | 12 ++++++++++ 5 files changed, 84 insertions(+) create mode 100644 maintenance/dev/README create mode 100755 maintenance/dev/install.sh create mode 100755 maintenance/dev/installmw.sh create mode 100755 maintenance/dev/installphp.sh create mode 100755 maintenance/dev/start.sh diff --git a/maintenance/dev/README b/maintenance/dev/README new file mode 100644 index 0000000000..d386167bb7 --- /dev/null +++ b/maintenance/dev/README @@ -0,0 +1,7 @@ +maintenance/dev/ scripts can help quickly setup a local MediaWiki for development purposes. + +Wikis setup in this way are NOT meant to be publicly available. They use a development database not acceptible for use in production and place a sqlite database in an unsafe location a real wiki should never place it in. + +Running maintenance/dev/install.sh will download and install a local copy of php 5.4, install a sqlite powered instance of MW for development, and then start up a local webserver to view the wiki. + +After installation you can bring the webserver back up at any time you want with maintenance/dev/start.sh diff --git a/maintenance/dev/install.sh b/maintenance/dev/install.sh new file mode 100755 index 0000000000..067d687498 --- /dev/null +++ b/maintenance/dev/install.sh @@ -0,0 +1,8 @@ +#!/bin/bash + +if [[ "x$BASH_SOURCE" == "x" ]]; then echo '$BASH_SOURCE not set'; exit 1; fi +DEV=$(cd -P "$(dirname "${BASH_SOURCE[0]}" )" && pwd) + +$DEV/installphp.sh +$DEV/installmw.sh +$DEV/start.sh diff --git a/maintenance/dev/installmw.sh b/maintenance/dev/installmw.sh new file mode 100755 index 0000000000..6146b3350e --- /dev/null +++ b/maintenance/dev/installmw.sh @@ -0,0 +1,16 @@ +#!/bin/bash + +if [[ "x$BASH_SOURCE" == "x" ]]; then echo '$BASH_SOURCE not set'; exit 1; fi +DEV=$(cd -P "$(dirname "${BASH_SOURCE[0]}" )" && pwd) + +set -e + +PORT=4881 + +cd $DEV/../../; # $IP + +mkdir $DEV/data +$DEV/php/bin/php maintenance/install.php --server="http://localhost:$PORT" --scriptpath="" --dbtype=sqlite --dbpath=$DEV/data --pass=admin "Trunk Test" $USER +echo "" +echo "Development wiki created with admin user $USER and password 'admin'." +echo "" diff --git a/maintenance/dev/installphp.sh b/maintenance/dev/installphp.sh new file mode 100755 index 0000000000..7ab3a673ce --- /dev/null +++ b/maintenance/dev/installphp.sh @@ -0,0 +1,41 @@ +#!/bin/bash + +if [[ "x$BASH_SOURCE" == "x" ]]; then echo '$BASH_SOURCE not set'; exit 1; fi +DEV=$(cd -P "$(dirname "${BASH_SOURCE[0]}" )" && pwd) + +set -e # DO NOT USE PIPES unless this is rewritten + +if [ -d $DEV/php ]; then + echo "PHP is already installed" + exit 1 +fi + +TAR=php5.4-latest.tar.gz +PHPURL=http://snaps.php.net/$TAR + +cd $DEV + +# Some debain-like systems bundle wget but not curl, some other systems +# like os x bundle curl but not wget... use whatever is available +echo -n "Downloading PHP 5.4" +if command -v wget &>/dev/null; then + echo "- using wget" + wget $PHPURL +elif command -v curl &>/dev/null; then + echo "- using curl" + curl -O $PHPURL +else + echo "- aborting" + echo "Could not find curl or wget." >&2; + exit 1; +fi + +echo "Extracting php 5.4" +tar -xzf $TAR + +cd php5.4-*/ + +echo "Configuring and installing php 5.4 in $IP/maintenance/dev/php/" +./configure --prefix=$DEV/php/ +make +make install diff --git a/maintenance/dev/start.sh b/maintenance/dev/start.sh new file mode 100755 index 0000000000..9736c8b3b1 --- /dev/null +++ b/maintenance/dev/start.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +if [[ "x$BASH_SOURCE" == "x" ]]; then echo '$BASH_SOURCE not set'; exit 1; fi +DEV=$(cd -P "$(dirname "${BASH_SOURCE[0]}" )" && pwd) + +PORT=4881 + +echo "Starting up MediaWiki at http://localhost:$PORT/" +echo "" + +cd $DEV/../../; # $IP +$DEV/php/bin/php -S localhost:$PORT -- 2.20.1