diff options
Diffstat (limited to 'configure')
-rwxr-xr-x | configure | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/configure b/configure new file mode 100755 index 00000000..75770cfb --- /dev/null +++ b/configure @@ -0,0 +1,90 @@ +#!/bin/sh +# Copyright 2010 Cloudant +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may not +# use this file except in compliance with the License. You may obtain a copy of +# the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations under +# the License. + +function quit { + exit +} + +PREFIX="/opt/bigcouch" +BIGCOUCH_USER=`whoami` +ABSPATH="$(cd "${0%/*}" 2>/dev/null; echo "$PWD"/"${0##*/}")" +if test ! -n "$DIRPATH"; then DIRPATH=`dirname "$ABSPATH"`; fi + +while [ $# -gt 0 ] +do + case $1 + in + -p) + PREFIX=$2 + shift 2 + ;; + -t) + TEMPLATE=$2 + shift 2 + ;; + -d) + DATA=$2 + shift 2 + ;; + -v) + VIEW=$2 + shift 2 + ;; + -u) + BIGCOUCH_USER=$2 + shift 2 + ;; + *) + echo "usage: $0 [-p {prefix} -t {template} -d {data_dir} -v {view_dir} -u {user}]" + quit + ;; + esac +done + +if test ! -n "$DATA"; then DATA="$PREFIX/var/lib"; fi +if test ! -n "$VIEW"; then VIEW="$PREFIX/var/lib"; fi + +echo "==> configuring bigcouch in rel/bigcouch.config" +cat > rel/bigcouch.config << EOF +{prefix, "$PREFIX"}. +{data_dir, "$DATA"}. +{view_dir, "$VIEW"}. +{user, "$BIGCOUCH_USER"}. +{node_name, "-name bigcouch"}. +{cluster_port, 5984}. +{backend_port, 5986}. +EOF + +cat > install.mk << EOF +# The contents of this file are auto-generated by configure +prefix = $PREFIX +data_dir = $DATA +view_dir = $VIEW +user = $BIGCOUCH_USER +EOF + +# finally, a few config files for local development nodes +for i in 1 2 3; do +cat > rel/dev$i.config << EOF +{prefix, "$DIRPATH/rel/dev$i"}. +{data_dir, "$DIRPATH/rel/tmpdata/dev$i"}. +{view_dir, "$DIRPATH/rel/tmpdata/dev$i"}. +{node_name, "-name dev$i@127.0.0.1"}. +{cluster_port, `expr 10000 \* $i + 5984`}. +{backend_port, `expr 10000 \* $i + 5986`}. +EOF +done + +./rebar get-deps && mkdir -p apps/couch/ebin && cat rel/bigcouch.config |