summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xinstall-pixelated.sh139
-rwxr-xr-xservice/go7
-rw-r--r--try.alice.ini7
-rw-r--r--try.bob.ini7
4 files changed, 160 insertions, 0 deletions
diff --git a/install-pixelated.sh b/install-pixelated.sh
new file mode 100755
index 00000000..7008063e
--- /dev/null
+++ b/install-pixelated.sh
@@ -0,0 +1,139 @@
+#!/bin/bash
+#
+# Copyright (c) 2014 ThoughtWorks, Inc.
+#
+# Pixelated is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# Pixelated is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with Pixelated. If not, see <http://www.gnu.org/licenses/>.
+
+# test dependencies
+
+set -e
+export NODE_PATH='/home/vagrant/boxed_node_modules/node_modules/'
+
+if [ ! $USERNAME ]
+then
+ export USERNAME=`whoami`
+fi
+
+usage() { echo "Usage: $0 [-v <virtualenv path>] [-n <custom node modules directory>]" 1>&2; exit 1; }
+
+VIRTUALENV_PATH=".virtualenv"
+CUSTOM_NODE_MODULES_LOCATION=""
+while getopts "n:v:" OPT; do
+ case "${OPT}" in
+ v)
+ VIRTUALENV_PATH=${OPTARG}
+ ;;
+ n) # custom node_modules installation
+ CUSTOM_NODE_MODULES_LOCATION=${OPTARG}
+ ;;
+ *)
+ usage
+ ;;
+ esac
+done
+shift $((OPTIND-1))
+
+function check_installed() {
+ set +e
+ which $1
+ if [ $? -ne 0 ]; then
+ echo "## You must have ${1} installed and in the PATH to run Pixelated-User-Agent"
+ echo "## Check our wiki for more information on dependencies:"
+ echo "## https://github.com/pixelated-project/pixelated-user-agent/wiki/Installing-dependencies"
+ echo "## exiting..."
+ exit 1
+ fi
+ set -e
+}
+
+
+# The below is necessary to allow node to use enough memory
+# so that installing phantomjs won't fail
+mkdir -p /home/vagrant/bin
+cat > /home/vagrant/bin/node <<EOF
+#!/usr/bin/env bash
+
+/usr/bin/node --max_old_space_size=2000 "\$@"
+EOF
+chmod +x /home/vagrant/bin/node
+export PATH=/home/vagrant/bin:$PATH
+
+
+function install_node_modules_at_custom_location() {
+ local LOCATION="$1"
+ local WEBUI_DIR=$(pwd)
+
+ if [ -e "$WEBUI_DIR/node_modules" ] ; then
+ echo "It seems there is already a node_modules folder" 1>&2
+ return
+ fi
+
+ if [ ! -e "$LOCATION" ] ; then
+ mkdir "$LOCATION"
+ pushd "$LOCATION"
+
+ ln -s "$WEBUI_DIR/package.json" package.json
+ npm install
+
+ popd
+ fi
+
+ if [ ! -h "node_modules" ] ; then
+ rm -Rf "node_modules"
+ ln -s "$LOCATION/node_modules" node_modules
+ fi
+}
+
+for dependency in node npm ruby virtualenv git gpg compass; do
+ check_installed $dependency
+done
+
+# install web-ui dependencies
+cd web-ui
+UIPATH=`pwd`
+
+if [ -z "$CUSTOM_NODE_MODULES_LOCATION" ] ; then
+ npm install
+else
+ install_node_modules_at_custom_location "$CUSTOM_NODE_MODULES_LOCATION"
+fi
+
+node_modules/bower/bin/bower -V install --config.interactive=false --allow-root
+LC_ALL=en_US.UTF-8 ./go build
+
+# install service dependencies
+cd ..
+rm -rf "$VIRTUALENV_PATH"
+virtualenv "$VIRTUALENV_PATH"
+source "$VIRTUALENV_PATH/bin/activate"
+# they can't be on the same command because it breaks pip upgrade
+pip install --upgrade pip
+pip install --upgrade setuptools
+make setup
+pip uninstall -y enum34 && pip install enum34
+pip uninstall -y pysqlcipher && pip install pysqlcipher # this is needed so pysqlcipher gets recompiled with the right version of glibc
+
+# print usage
+cat <<EOF
+
+###############
+
+## You will need an account in a LEAP provider with mail support.
+## Once you are done, activate your virtual environment by running:
+## source $VIRTUALENV_PATH/bin/activate
+
+## The User agent will be available on http://localhost:3333 after running:
+## pixelated-user-agent
+
+EOF
diff --git a/service/go b/service/go
new file mode 100755
index 00000000..25661508
--- /dev/null
+++ b/service/go
@@ -0,0 +1,7 @@
+#!/bin/bash
+
+type -t deactivate && deactivate
+set -e
+pushd ..
+make $*
+popd
diff --git a/try.alice.ini b/try.alice.ini
new file mode 100644
index 00000000..57ef892c
--- /dev/null
+++ b/try.alice.ini
@@ -0,0 +1,7 @@
+[pixelated]
+HOST=0.0.0.0
+PORT=8080
+LEAP_SERVER_NAME=try.pixelated-project.org
+LEAP_USERNAME=alice
+LEAP_PASSWORD=WuSh3ohse4
+
diff --git a/try.bob.ini b/try.bob.ini
new file mode 100644
index 00000000..4c169c04
--- /dev/null
+++ b/try.bob.ini
@@ -0,0 +1,7 @@
+[pixelated]
+HOST=0.0.0.0
+PORT=8080
+LEAP_SERVER_NAME=try.pixelated-project.org
+LEAP_USERNAME=bob
+LEAP_PASSWORD=quuojoo1Su
+