From 9e8c041d8c5f1479edc24bf3d1e44ef074af52a3 Mon Sep 17 00:00:00 2001 From: Benjamin Bollen <ben@erisindustries.com> Date: Thu, 14 Jul 2016 01:44:42 +0200 Subject: [PATCH] Dockerfile: reduce startup script to /bin/start_eris_db (forgotten to commit) --- bin/start_eris_db | 85 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 bin/start_eris_db diff --git a/bin/start_eris_db b/bin/start_eris_db new file mode 100644 index 00000000..c14cf604 --- /dev/null +++ b/bin/start_eris_db @@ -0,0 +1,85 @@ +#! /bin/bash + +ifExit(){ + if [[ $? != 0 ]]; then + echo "ifExit" + echo "$1" + for var in "$@" + do + echo "$var" + done + exit 1 + fi +} + +if0Exit(){ + if [[ $? == 0 ]]; then + echo "if0Exit" + echo "$1" + for var in "$@" + do + echo "$var" + done + exit 1 + fi +} + + +export -f ifExit +export -f if0Exit + +#----------------------------------------------------------------------- +# set and export directories + +if [ "$CHAIN_ID" = "" ]; then + echo "Eris-db container requires environment variable CHAIN_ID to be set. Please run docker container with \`-e CHAIN_ID=\"<chainId>\"\`" + exit 1 +fi + +if [ "$ERIS_DB_WORKDIR" = "" ]; then + ERIS_DB_WORKDIR="$ERIS/chains/$CHAIN_ID" +fi + +if [ ! -d "$ERIS_DB_WORKDIR" ]; then + mkdir -p $ERIS_DB_WORKDIR + ifExit "Error making working directory $ERIS_DB_WORKDIR" +fi + +# [TODO]: for transition from 0.11.4 to 0.12.1 map data directory to working directory +export ERIS_DB_WORKDIR +export ERIS_DB_DATADIR=$ERIS_DB_WORKDIR + +echo "env CHAIN_ID is set to $CHAIN_ID" +echo "env ERIS_DB_WORKDIR is set to $ERIS_DB_WORKDIR" +echo "env ERIS_DB_DATADIR is set to $ERIS_DB_DATADIR" + +#----------------------------------------------------------------------- +# [2016-07-13 ben] we preserve the existing contact commands "new", "run", +# but this functionality is absorbed in eris-db, eris-cm, eris-cli +# and the is here to catch deployed use-cases. +# NOTE: eris-db serve picks up following environment variables which are relevant to interaction with eris-cli +# - CHAIN_ID, set by eris-cli +# - ERIS_DB_WORKDIR, set in this script +# - ERIS_DB_DATADIR, set in this script +# - ERISDB_API (to be deprecated in favor of explicit --disable-rpc) +# - CONFIG_OPTS, for arbitrary flags to be passed to `eris-db serve` + +CMD=$1 +case $CMD in +"install" ) + echo "Install is under review to be deprecated; please contact support@erisindustries.com if you encounter this error." + exit 1 + ;; +"new" ) eris-db serve $CONFIG_OPTS $@ + ;; +"run" ) eris-db serve $CONFIG_OPTS $@ + ;; +"register" ) + echo "Register is under review to be deprecated; please contact support@erisindustries.com if you encounter this error." + exit 1 + ;; +# we append $@ to eris-db to expose the same flags on the docker container, +# eg `docker run -it quay.io/eris/erisdb --chain-id=<chain_id>`, will overwrite $CHAIN_ID +*) eris-db serve $CONFIG_OPTS $@ + ;; +esac -- GitLab