mirror of https://gitee.com/bigwinds/arangodb
79 lines
1.8 KiB
Bash
Executable File
79 lines
1.8 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
CURL="curl -s -S --fail "
|
|
|
|
AGENCY="http://localhost:4001"
|
|
PREFIX="/"
|
|
|
|
if [ "$1" == "-a" ] ; then
|
|
export AGENCY=$2
|
|
shift 2
|
|
fi
|
|
|
|
if [ "$1" == "-p" ] ; then
|
|
export PREFIX=$2
|
|
shift 2
|
|
fi
|
|
|
|
if [ "$1" == "help" -o "$1" == "-h" -o "$1" == "--help" ] ; then
|
|
echo "Usage: arangom [-a AGENCY] [-p PREFIX] help|init"
|
|
echo " where AGENCY is an URL not ending in a slash"
|
|
echo " and PREFIX is a path starting and ending with a slash"
|
|
exit 0
|
|
fi
|
|
|
|
URL="$AGENCY/v2/keys"
|
|
|
|
function set() {
|
|
key=$1
|
|
value=$2
|
|
if [ "x$value" == "x" ] ; then
|
|
echo "Creating directory $PREFIX$key"
|
|
$CURL -X PUT -L "$URL$PREFIX$key?dir=true" > /dev/null || exit 1
|
|
else
|
|
echo "Setting key $PREFIX$key to value $value"
|
|
$CURL -X PUT -L "$URL$PREFIX$key" -d "value=$value" > /dev/null || exit 1
|
|
fi
|
|
}
|
|
|
|
|
|
if [ "$1" == "init" ] ; then
|
|
$CURL -X DELETE -L "$URL$PREFIX?recursive=true" > /dev/null
|
|
set Target/MapLocalToID
|
|
set Target/MapIDToEndpoint
|
|
|
|
set Target/Version "\"1\""
|
|
set Target/Lock "\"UNLOCKED\""
|
|
set Target/DBServers
|
|
set Target/Coordinators
|
|
set Target/Databases/@Usystem "{}"
|
|
set Target/Collections/@Usystem
|
|
|
|
set Plan/Version "\"1\""
|
|
set Plan/Lock "\"UNLOCKED\""
|
|
set Plan/DBServers
|
|
set Plan/Coordinators
|
|
set Plan/Databases/@Usystem "{}"
|
|
set Plan/Collections/@Usystem
|
|
|
|
set Current/Version "\"1\""
|
|
set Current/Lock "\"UNLOCKED\""
|
|
set Current/DBServers
|
|
set Current/Coordinators
|
|
set Current/Databases/@Usystem
|
|
set Current/Collections/@Usystem
|
|
|
|
set Current/ServersRegistered
|
|
set Current/ShardsCopied
|
|
|
|
set Sync/ServerStates
|
|
set Sync/Problems
|
|
set Sync/ClusterManager "\"none\""
|
|
set Sync/LatestID 0
|
|
set Sync/Commands
|
|
set Sync/HeartbeatIntervalMs 1000
|
|
|
|
echo Initialisation complete.
|
|
fi
|
|
|