summaryrefslogtreecommitdiffstats
path: root/ceph-menv
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-27 18:24:20 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-27 18:24:20 +0000
commit483eb2f56657e8e7f419ab1a4fab8dce9ade8609 (patch)
treee5d88d25d870d5dedacb6bbdbe2a966086a0a5cf /ceph-menv
parentInitial commit. (diff)
downloadceph-483eb2f56657e8e7f419ab1a4fab8dce9ade8609.tar.xz
ceph-483eb2f56657e8e7f419ab1a4fab8dce9ade8609.zip
Adding upstream version 14.2.21.upstream/14.2.21upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'ceph-menv')
-rw-r--r--ceph-menv/.menvrc16
-rw-r--r--ceph-menv/INSTALL19
-rw-r--r--ceph-menv/README21
-rwxr-xr-xceph-menv/build_links.sh16
-rwxr-xr-xceph-menv/mdo.sh16
-rwxr-xr-xceph-menv/mset.sh21
6 files changed, 109 insertions, 0 deletions
diff --git a/ceph-menv/.menvrc b/ceph-menv/.menvrc
new file mode 100644
index 00000000..38f74320
--- /dev/null
+++ b/ceph-menv/.menvrc
@@ -0,0 +1,16 @@
+MENV_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}" )" && pwd)"
+
+export PATH=${MENV_ROOT}/bin:$PATH
+alias mset='source $MENV_ROOT/mset.sh'
+
+case "$TERM" in
+xterm-*color)
+ PS1='\[\033[$MRUN_PROMPT_COLOR;1m\]${MRUN_PROMPT}\[\033[00m\]'${PS1}
+ ;;
+*)
+ PS1='${MRUN_PROMPT}'${PS1}
+ ;;
+esac
+
+export MRUN_CEPH_ROOT=$HOME/ceph
+
diff --git a/ceph-menv/INSTALL b/ceph-menv/INSTALL
new file mode 100644
index 00000000..8a9d85b1
--- /dev/null
+++ b/ceph-menv/INSTALL
@@ -0,0 +1,19 @@
+ceph-menv
+
+Installation
+
+1. Build links
+
+# assuming ceph build directory is at $HOME/ceph/build
+$ cd ceph-menv
+$ ./build_links.sh
+
+A different ceph repository can be passed as the first argument to build_links.sh.
+
+2. Configure shell environment
+
+To your shell startup script (such as $HOME/.bashrc) add the following:
+
+source ~/ceph-menv/.menvrc
+
+(modify line appropriately if ceph-menv was installed at a different location)
diff --git a/ceph-menv/README b/ceph-menv/README
new file mode 100644
index 00000000..badbd3a0
--- /dev/null
+++ b/ceph-menv/README
@@ -0,0 +1,21 @@
+ceph-menv
+
+Environment assistant for use in conjuction with multiple ceph vstart (or more accurately mstart) clusters. Eliminates the need to specify the cluster that is being used with each and every command. Can provide a shell prompt feedback about the currently used cluster.
+
+
+Usage:
+
+$ mset <cluster>
+
+
+For example:
+
+$ mstart.sh c1 -n
+$ mset c1
+[ c1 ] $ ceph -w
+
+
+To un-set cluster:
+
+$ mset
+
diff --git a/ceph-menv/build_links.sh b/ceph-menv/build_links.sh
new file mode 100755
index 00000000..c4c9da34
--- /dev/null
+++ b/ceph-menv/build_links.sh
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+DIR=`dirname $0`
+ROOT=$1
+
+[ "$ROOT" == "" ] && ROOT="$HOME/ceph"
+
+mkdir -p $DIR/bin
+
+echo $PWD
+for f in `ls $ROOT/build/bin`; do
+ echo $f
+ ln -sf ../mdo.sh $DIR/bin/$f
+done
+
+echo "MRUN_CEPH_ROOT=$ROOT" > $DIR/.menvroot
diff --git a/ceph-menv/mdo.sh b/ceph-menv/mdo.sh
new file mode 100755
index 00000000..443613e6
--- /dev/null
+++ b/ceph-menv/mdo.sh
@@ -0,0 +1,16 @@
+#!/bin/bash
+cmd=`basename $0`
+MENV_ROOT=`dirname $0`/..
+
+if [ -f $MENV_ROOT/.menvroot ]; then
+ . $MENV_ROOT/.menvroot
+fi
+
+[ "$MRUN_CEPH_ROOT" == "" ] && MRUN_CEPH_ROOT=$HOME/ceph
+
+if [ "$MRUN_CLUSTER" == "" ]; then
+ ${MRUN_CEPH_ROOT}/build/bin/$cmd "$@"
+ exit $?
+fi
+
+${MRUN_CEPH_ROOT}/src/mrun $MRUN_CLUSTER $cmd "$@"
diff --git a/ceph-menv/mset.sh b/ceph-menv/mset.sh
new file mode 100755
index 00000000..b9cb5b4d
--- /dev/null
+++ b/ceph-menv/mset.sh
@@ -0,0 +1,21 @@
+get_color() {
+ s=$1
+ sum=1 # just so that 'c1' isn't green that doesn't contrast with the rest of my prompt
+ for i in `seq 1 ${#s}`; do
+ c=${s:$((i-1)):1};
+ o=`printf '%d' "'$c"`
+ sum=$((sum+$o))
+ done
+ echo $sum
+}
+
+if [ "$1" == "" ]; then
+ unset MRUN_CLUSTER
+ unset MRUN_PROMPT
+else
+ export MRUN_CLUSTER=$1
+ export MRUN_PROMPT='['${MRUN_CLUSTER}'] '
+ col=$(get_color $1)
+ MRUN_PROMPT_COLOR=$((col%7+31))
+fi
+