github.com/go-graphite/carbonapi@v0.17.0/cmd/carbonapi/config_tests/003-complex-http-only.sh (about)

     1  #!/usr/bin/env bash
     2  set -e
     3  
     4  source "$(dirname "${0}")/common.sh"
     5  
     6  TEST_DIR=$(dirname "${0}")
     7  TEST_NAME=$(basename "${0}")
     8  STATUS=0
     9  echo ${TEST_NAME/.sh/.yaml}
    10  
    11  EXPECTED_LISTENERS=(
    12  	"127.0.0.1:8081"
    13  	"127.0.0.1:8082"
    14  	"127.0.0.1:8083"
    15  	"[::1]:8084"
    16  )
    17  
    18  trap "cleanup" SIGINT SIGTERM EXIT INT QUIT TERM EXIT
    19  echo "carbonapi -config \"${TEST_DIR}/${TEST_NAME/.sh/.yaml}\" &"
    20  ./carbonapi -config "${TEST_DIR}/${TEST_NAME/.sh/.yaml}" &
    21  sleep 2
    22  
    23  LISTENERS=$(get_listeners "carbonapi")
    24  
    25  set +e
    26  
    27  cnt=0
    28  for l in ${LISTENERS}; do
    29  	cnt=$((cnt+1))
    30  	found=0
    31  	for el in ${EXPECTED_LISTENERS[@]}; do
    32  		if [[ "${el}" == "${l}" ]]; then
    33  			found=1
    34  			break
    35  		fi
    36  	done
    37  	if [[ ${found} -eq 0 ]]; then
    38  		echo "Listener ${l} is not expected"
    39  		STATUS=1
    40  	fi
    41  done
    42  
    43  if [[ ${cnt} -ne ${#EXPECTED_LISTENERS[@]} ]]; then
    44  	echo "Expected listener count mismatch, got ${cnt}, expected ${#EXPECTED_LISTENERS[@]}"
    45  	STATUS=1
    46  fi
    47  
    48  kill %1
    49  wait
    50  
    51  if [[ ${STATUS} -eq 0 ]]; then
    52  	echo "${TEST_NAME} OK"
    53  else
    54  	echo "${TEST_NAME} FAIL"
    55  fi
    56  
    57  exit ${STATUS}