diff options
Diffstat (limited to 'configure')
| -rwxr-xr-x | configure | 91 | 
1 files changed, 91 insertions, 0 deletions
diff --git a/configure b/configure new file mode 100755 index 00000000..0e299604 --- /dev/null +++ b/configure @@ -0,0 +1,91 @@ +#!/bin/bash +# 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. + + + +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}]" +      exit +    ;; +  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}. +{cluster_ssl, 6984}. +{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`}. +{cluster_ssl, `expr 10000 \* $i + 6984`}. +{backend_port, `expr 10000 \* $i + 5986`}. +EOF +done + +mkdir -p apps/couch/ebin +./rebar get-deps && ./rebar update-deps && cat rel/bigcouch.config  | 
