From 15f3b97492555eade3262c829e7a882a1b426893 Mon Sep 17 00:00:00 2001 From: Michael Vines Date: Thu, 6 Sep 2018 08:32:07 -0700 Subject: [PATCH] Send deploy metrics to the testnet-specific database --- ci/testnet-deploy.sh | 45 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/ci/testnet-deploy.sh b/ci/testnet-deploy.sh index a941b141ab..01960f4d6f 100755 --- a/ci/testnet-deploy.sh +++ b/ci/testnet-deploy.sh @@ -17,6 +17,51 @@ if [[ -z $SOLANA_METRICS_CONFIG ]]; then exit 1 fi + +# The SOLANA_METRICS_CONFIG environment variable is formatted as a +# comma-delimited list of parameters. All parameters are optional. +# +# Example: +# export SOLANA_METRICS_CONFIG="host=,db=,u=,p=" +# +configure_metrics() { + [[ -n $SOLANA_METRICS_CONFIG ]] || return 0 + + declare metrics_params + IFS=',' read -r -a metrics_params <<< "$SOLANA_METRICS_CONFIG" + for param in "${metrics_params[@]}"; do + IFS='=' read -r -a pair <<< "$param" + if [[ ${#pair[@]} != 2 ]]; then + echo Error: invalid metrics parameter: "$param" >&2 + else + declare name="${pair[0]}" + declare value="${pair[1]}" + case "$name" in + host) + export INFLUX_HOST="$value" + echo INFLUX_HOST="$INFLUX_HOST" >&2 + ;; + db) + export INFLUX_DATABASE="$value" + echo INFLUX_DATABASE="$INFLUX_DATABASE" >&2 + ;; + u) + export INFLUX_USERNAME="$value" + echo INFLUX_USERNAME="$INFLUX_USERNAME" >&2 + ;; + p) + export INFLUX_PASSWORD="$value" + echo INFLUX_PASSWORD="********" >&2 + ;; + *) + echo Error: Unknown metrics parameter name: "$name" >&2 + ;; + esac + fi + done +} +configure_metrics + # Default to edge channel. To select the beta channel: # export SOLANA_SNAP_CHANNEL=beta if [[ -z $SOLANA_SNAP_CHANNEL ]]; then