diff options
author | Filip Krzywka <filip.krzywka@nokia.com> | 2018-12-12 08:14:57 +0100 |
---|---|---|
committer | Filip Krzywka <filip.krzywka@nokia.com> | 2018-12-12 14:29:28 +0100 |
commit | ccdbec825673153bd57681fa8e1e5a507f4f776b (patch) | |
tree | 5a08208daa706ad1d816be1ebd8bce3067e30f6a /development/bin | |
parent | a239958522a9edd0951854884dd11a7ef5513ca4 (diff) |
Add helper scripts
Change-Id: I8d5b48511e1b7f9cb7d1f65e8605ebe4cf1b17fc
Issue-ID: DCAEGEN2-1027
Signed-off-by: Filip Krzywka <filip.krzywka@nokia.com>
Diffstat (limited to 'development/bin')
-rwxr-xr-x | development/bin/consul.sh | 79 | ||||
-rwxr-xr-x | development/bin/dcae-msgs.sh | 64 | ||||
-rwxr-xr-x | development/bin/dcae-reset.sh | 65 | ||||
-rwxr-xr-x | development/bin/dcae-topic.sh | 66 | ||||
-rwxr-xr-x | development/bin/run-xnf-simulator.sh | 81 | ||||
-rwxr-xr-x | development/bin/xnf-simulation.sh | 103 |
6 files changed, 458 insertions, 0 deletions
diff --git a/development/bin/consul.sh b/development/bin/consul.sh new file mode 100755 index 00000000..c229f83e --- /dev/null +++ b/development/bin/consul.sh @@ -0,0 +1,79 @@ +#!/usr/bin/env bash +# ============LICENSE_START======================================================= +# dcaegen2-collectors-veshv +# ================================================================================ +# Copyright (C) 2018 NOKIA +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END========================================================= + +set -euo pipefail + +usage() { + echo "Put HV-VES configuration into Consul key-value store" + echo "Usage: $0 [-h|--help] [-v|--verbose] [domain [topic]]" + exit 1 +} + +optspec=":vh-:" # catch v, h and - +while getopts "$optspec" arg; do + case "${arg}" in + -) # handle longopts + case "${OPTARG}" in + verbose) + VERBOSE=True + ;; + help) + usage + ;; + *) + echo "Unknown option --${OPTARG}" >&2 + usage + ;; + esac + ;; + v) + VERBOSE=True + ;; + h) + usage + ;; + *) + echo "Unknown option -${OPTARG}" >&2 + usage + ;; + esac +done +shift $((OPTIND-1)) + +DOMAIN=${1:-perf3gpp} +TOPIC=${2:-HV_VES_PERF3GPP} + +CONFIGURATION=" +{ + \"dmaap.kafkaBootstrapServers\": \"message-router-kafka:9092\", + \"collector.routing\": + [{ + \"fromDomain\": \"${DOMAIN}\", + \"toTopic\": \"${TOPIC}\" + }] +}" +CONFIGURATION_ENDPOINT=localhost:8500/v1/kv/veshv-config + + +if [ -n "${VERBOSE+x}" ]; then + echo "Configuration: ${CONFIGURATION}" + echo "Putting configuration under ${CONFIGURATION_ENDPOINT}." +fi +curl --request PUT ${CONFIGURATION_ENDPOINT} -d "${CONFIGURATION}" +echo diff --git a/development/bin/dcae-msgs.sh b/development/bin/dcae-msgs.sh new file mode 100755 index 00000000..cb05a8c3 --- /dev/null +++ b/development/bin/dcae-msgs.sh @@ -0,0 +1,64 @@ +#!/usr/bin/env bash +# ============LICENSE_START======================================================= +# dcaegen2-collectors-veshv +# ================================================================================ +# Copyright (C) 2018 NOKIA +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END========================================================= + +set -euo pipefail + +usage() { + echo "Return current amount of consumed messages by dcae-app-simulator" + echo "Usage: $0 [-h|--help] [-v|--verbose]" + exit 1 +} + +optspec=":vh-:" # catch v, h and - +while getopts "$optspec" arg; do + case "${arg}" in + -) # handle longopts + case "${OPTARG}" in + verbose) + VERBOSE=True + ;; + help) + usage + ;; + *) + echo "Unknown option --${OPTARG}" >&2 + usage + ;; + esac + ;; + v) + VERBOSE=True + ;; + h) + usage + ;; + *) + echo "Unknown option -${OPTARG}" >&2 + usage + ;; + esac +done +shift $((OPTIND-1)) + +if [ -n "${VERBOSE+x}" ]; then + echo "All messages count currently consumed by dcae app simulator: " +fi + +curl --request GET localhost:6063/messages/all/count +echo diff --git a/development/bin/dcae-reset.sh b/development/bin/dcae-reset.sh new file mode 100755 index 00000000..e5b7b056 --- /dev/null +++ b/development/bin/dcae-reset.sh @@ -0,0 +1,65 @@ +#!/usr/bin/env bash +# ============LICENSE_START======================================================= +# dcaegen2-collectors-veshv +# ================================================================================ +# Copyright (C) 2018 NOKIA +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END========================================================= + +set -euo pipefail + + +usage() { + echo "Resets dcae-app-simulator consumed messages count" + echo "Usage: $0 [-h|--help] [-v|--verbose]" + exit 1 +} + +optspec=":vh-:" # catch v, h and - +while getopts "$optspec" arg; do + case "${arg}" in + -) # handle longopts + case "${OPTARG}" in + verbose) + VERBOSE=True + ;; + help) + usage + ;; + *) + echo "Unknown option --${OPTARG}" >&2 + usage + ;; + esac + ;; + v) + VERBOSE=True + ;; + h) + usage + ;; + *) + echo "Unknown option -${OPTARG}" >&2 + usage + ;; + esac +done +shift $((OPTIND-1)) + +if [ -n "${VERBOSE+x}" ]; then + echo "Requesting DCAE app running on port 6063 to reset messages count" +fi + +curl --request DELETE localhost:6063/messages +echo diff --git a/development/bin/dcae-topic.sh b/development/bin/dcae-topic.sh new file mode 100755 index 00000000..8c176221 --- /dev/null +++ b/development/bin/dcae-topic.sh @@ -0,0 +1,66 @@ +#!/usr/bin/env bash +# ============LICENSE_START======================================================= +# dcaegen2-collectors-veshv +# ================================================================================ +# Copyright (C) 2018 NOKIA +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END========================================================= + +set -euo pipefail + +usage() { + echo "Set dcae-app-simulator to start consuming messages from given topic (HV_VES_PERF3GPP by default)" + echo "Usage: $0 [-h|--help] [-v|--verbose] [topic]" + exit 1 +} + +optspec=":vh-:" # catch v, h and - +while getopts "$optspec" arg; do + case "${arg}" in + -) # handle longopts + case "${OPTARG}" in + verbose) + VERBOSE=True + ;; + help) + usage + ;; + *) + echo "Unknown option --${OPTARG}" >&2 + usage + ;; + esac + ;; + v) + VERBOSE=True + ;; + h) + usage + ;; + *) + echo "Unknown option -${OPTARG}" >&2 + usage + ;; + esac +done +shift $((OPTIND-1)) + +TOPIC=${1:-HV_VES_PERF3GPP} + +if [ -n "${VERBOSE+x}" ]; then + echo "Requesting DCAE app running on port 6063 to consume messages from topic: ${TOPIC}" +fi + +curl --request PUT localhost:6063/configuration/topics -d ${TOPIC} +echo
\ No newline at end of file diff --git a/development/bin/run-xnf-simulator.sh b/development/bin/run-xnf-simulator.sh new file mode 100755 index 00000000..3fe96928 --- /dev/null +++ b/development/bin/run-xnf-simulator.sh @@ -0,0 +1,81 @@ +#!/usr/bin/env bash +# ============LICENSE_START======================================================= +# dcaegen2-collectors-veshv +# ================================================================================ +# Copyright (C) 2018 NOKIA +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END========================================================= + +set -euo pipefail + +usage() { + echo "Start xnf-simulator container on given port and inside of given docker-network (by default 'development_default')" + echo "Usage: $0 [-h|--help] [-v|--verbose] <xnf listen port> [<hv ves docker network>]" + exit 1 +} + +optspec=":vh-:" # catch v, h and - +while getopts "$optspec" arg; do + case "${arg}" in + -) # handle longopts + case "${OPTARG}" in + verbose) + VERBOSE=True + ;; + help) + usage + ;; + *) + echo "Unknown option --${OPTARG}" >&2 + usage + ;; + esac + ;; + v) + VERBOSE=True + ;; + h) + usage + ;; + *) + echo "Unknown option -${OPTARG}" >&2 + usage + ;; + esac +done +shift $((OPTIND-1)) + +[ $# -eq 0 ] && usage + + +LISTEN_PORT=$1 +HV_VES_NETWORK=${2:-development_default} + +PORTS="${LISTEN_PORT}:${LISTEN_PORT}/tcp" +HV_VES_REPO_HOME=`pwd`/.. + +if [ -n "${VERBOSE+x}" ]; then + echo "Starting xnf-simulator with ports configuration: ${PORTS} on network: ${HV_VES_NETWORK}" + echo "Container id:" +fi +docker run -d \ + -v ${HV_VES_REPO_HOME}/ssl/:/etc/ves-hv/ \ + -p ${PORTS} \ + --network ${HV_VES_NETWORK} \ + onap/org.onap.dcaegen2.collectors.hv-ves.hv-collector-xnf-simulator \ + --listen-port ${LISTEN_PORT} \ + --ves-host ves-hv-collector \ + --ves-port 6061 \ + --key-store-password onaponap \ + --trust-store-password onaponap
\ No newline at end of file diff --git a/development/bin/xnf-simulation.sh b/development/bin/xnf-simulation.sh new file mode 100755 index 00000000..e1d65aa0 --- /dev/null +++ b/development/bin/xnf-simulation.sh @@ -0,0 +1,103 @@ +#!/usr/bin/env bash +# ============LICENSE_START======================================================= +# dcaegen2-collectors-veshv +# ================================================================================ +# Copyright (C) 2018 NOKIA +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============LICENSE_END========================================================= + +set -euo pipefail + +usage() { + echo "Send request to xnf-simulator" + echo "Usage: $0 [-h|--help] [-v|--verbose] [<xnf listen port> [<messages amount> [<messages type> [<xnf endpoint>]]]]" + exit 1 +} + +optspec=":vh-:" # catch v, h and - +while getopts "$optspec" arg; do + case "${arg}" in + -) # handle longopts + case "${OPTARG}" in + verbose) + VERBOSE=True + ;; + help) + usage + ;; + *) + echo "Unknown option --${OPTARG}" >&2 + usage + ;; + esac + ;; + v) + VERBOSE=True + ;; + h) + usage + ;; + *) + echo "Unknown option -${OPTARG}" >&2 + usage + ;; + esac +done +shift $((OPTIND-1)) + +XNF_PORT=${1:-6062} +MESSAGES_AMOUNT=${2:-1} +MESSAGES_TYPE=${3:-VALID} +XNF_ENDPOINT=simulator/async + +if [ -n "${VERBOSE+x}" ]; then + echo "Requesting xnf-simulator on port ${XNF_PORT} to send ${MESSAGES_AMOUNT} messages of type ${MESSAGES_TYPE}" +fi + +REQUEST_ID=$(curl --request POST -s localhost:${XNF_PORT}/${XNF_ENDPOINT} -d " +[ + { + \"commonEventHeader\": { + \"version\": \"sample-version\", + \"domain\": \"perf3gpp\", + \"sequence\": 1, + \"priority\": 1, + \"eventId\": \"sample-event-id\", + \"eventName\": \"sample-event-name\", + \"eventType\": \"sample-event-type\", + \"startEpochMicrosec\": 120034455, + \"lastEpochMicrosec\": 120034455, + \"nfNamingCode\": \"sample-nf-naming-code\", + \"nfcNamingCode\": \"sample-nfc-naming-code\", + \"reportingEntityId\": \"sample-reporting-entity-id\", + \"reportingEntityName\": \"sample-reporting-entity-name\", + \"sourceId\": \"sample-source-id\", + \"sourceName\": \"sample-source-name\", + \"vesEventListenerVersion\": \"7.2.0\" + }, + \"messageType\": \"${MESSAGES_TYPE}\", + \"messagesAmount\": ${MESSAGES_AMOUNT} + } +]") + +if [ -n "${VERBOSE+x}" ]; then + echo -e "Request id: ${REQUEST_ID}\n" + + echo "To check request status execute:" + echo "curl --request GET localhost:${XNF_PORT}/simulator/${REQUEST_ID}" + echo "To further debug you can try something similiar to:" + echo "docker ps -a | grep ${XNF_PORT} | awk '{ print \$1 }' | xargs docker logs" +else + echo "${REQUEST_ID}" +fi
\ No newline at end of file |